mysql 如何統一修改資料表中所有表的字首
阿新 • • 發佈:2020-12-19
技術標籤:mysql
在mysql中我們可以使用ALTER命令來修改資料庫表的名稱,例如:
ALTER TABLE test_test RENAME TO wj_test;
執行如上命令我們就可以將資料庫中的test字首修改成wj
但是一個數據庫中有人多的表,我們一個一個的寫這樣的話是很浪費時間的,那麼如何能夠批量生成上面類似的命令,一次性批量將資料庫中所有的表的字首全都變更呢?
這時候我們可以使用select命令來查詢到指定字首的表,然後拼接成我們上面的命令,這時候我們就可以得到多條ALTER命令,這樣我們就可以一次性將資料庫中所有的表字首修改了
如:
SELECT CONCAT( 'ALTER TABLE ', table_name, ' RENAME TO wj_', substring(table_name, 5), ';' ) FROM information_schema. TABLES WHERE table_schema = 'test' AND table_name LIKE 'test_%';
命令解釋:
將名稱為test的資料庫中所有包含test_表查詢除了,並組合成如下結構:
ALTER TABLE 表名 RENAME TO 變更表名
根據上面的命令,查詢結構如下:
將查詢結果的命令一次執行後,我們就可以將test中所有包含test字首的表程式設計wj字首