文章詳情頁
mysql - 這樣寫替換表前綴的句子哪里有問題
瀏覽:133日期:2022-06-21 08:07:13
問題描述
Select CONCAT( ’ALTER TABLE ’, table_name, ’ RENAME TO jh_’, substring(table_name,6 ),’;’ )FROM information_schema.tables Where table_name LIKE ’33hao_%’;
想把數據庫名為jh中的表前綴為33hao_的換成前綴為jh_
執行上面的代碼后ALTER 出很多句子,但在執行這些ALTER句子時出現錯誤,如下
[SQL]ALTER TABLE 33hao_activity RENAME TO jh__activity;[Err] 1146 - Table ’jh.33hao_activity’ doesn’t exist
不知哪里寫錯了
問題解答
回答1:下劃線也是通配符,應該做escape處理,否則把一些不是前綴為33hao_的表也包含了
select ... from table_name nformation_schema.tables where table_name LIKE ’33hao_%’回答2:
是不是數據庫用錯了,jh這個數據庫真的有33hao_activity這個表嘛?
上一條:設置完mysql索引之后 如何使用下一條:mysql語句查詢
相關文章:
1. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””2. docker-compose中volumes的問題3. boot2docker無法啟動4. nignx - docker內nginx 80端口被占用5. docker安裝后出現Cannot connect to the Docker daemon.6. docker容器呢SSH為什么連不通呢?7. node.js - antdesign怎么集合react-redux對input控件進行初始化賦值8. dockerfile - 為什么docker容器啟動不了?9. java - SSH框架中寫分頁時service層中不能注入分頁類10. 關于docker下的nginx壓力測試
排行榜

網公網安備