本文章來給大家介紹mysql批量刪除相同前綴的表和修改表名,各位同學(xué)不防進(jìn)入?yún)⒖?如果有很多表需要?jiǎng)h除,而表中有相同的前綴,我們可能需要如下語句:
- drop table pre_tablename1;
- drop table pre_tablename2;
- drop table pre_tablename3;
- ......
如果我們手動(dòng)寫,可能需要很多重復(fù)性的工作而且可能還不知道表名稱,因此我們可以通過sql語句輸出上面的刪除表語句,執(zhí)行sql語句,代碼如下:
- Select CONCAT( 'drop table ', table_name, ';' )
- FROM information_schema.tables
- Where table_name LIKE 'pre_%';
注意:like ‘pre_%’ 其中 pre_是你需要替換的表前綴,當(dāng)然你也可以根據(jù)自己的情況寫規(guī)則.
執(zhí)行查詢,會(huì)自動(dòng)把匹配的表生成出 drop table table_name這樣的SQL語句,批量復(fù)制一下到記事本或者 et之類的編輯工具中,確定你的sql語句是否正確,這么一來也可以安全的審核一下語句,避免誤操作..
當(dāng)然這只是一種思路,也可以用在其他問題中,如批量修改表名的操作方法,代碼如下:
- Select CONCAT( 'ALTER TABLE ', table_name, 'RENAME TO ', table_name,';' ) --Vevb.com
- FROM information_schema.tables
- Where table_name LIKE 'uc_%';
執(zhí)行查詢,會(huì)得到結(jié)果,代碼如下:
ALTER TABLE uc_aaa RENAME TO uc_aaa;
ALTER TABLE uc_bbb RENAME TO uc_bbb;
批量復(fù)制一下到記事本或者 et之類的編輯工具中,然后批量替換 RENAME TO uc 成 RENAME TO 你想要的表前綴,完成后 再執(zhí)行.
新聞熱點(diǎn)
疑難解答
圖片精選