mysql 如何統一修改數據表中全部表的前綴

在mysql中咱們能夠使用ALTER命令來修改數據庫表的名稱,例如:mysql

ALTER TABLE test_test RENAME TO wj_test;

執行如上命令咱們就能夠將數據庫中的test前綴修改爲wjsql

可是一個數據庫中有人多的表,咱們一個一個的寫這樣的話是很浪費時間的,那麼如何可以批量生成上面相似的命令,一次性批量將數據庫中全部的表的前綴全都變動呢?數據庫

這時候咱們能夠使用select命令來查詢到指定前綴的表,而後拼接成咱們上面的命令,這時候咱們就能夠獲得多條ALTER命令,這樣咱們就能夠一次性將數據庫中全部的表前綴修改了編程

如:spa

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_%';

命令解釋:code

將名稱爲test的數據庫中全部包含test_表查詢除了,並組合成以下結構:orm

ALTER TABLE 表名 RENAME TO 變動表名

根據上面的命令,查詢結構以下:blog

image.png

將查詢結果的命令一次執行後,咱們就能夠將test中全部包含test前綴的表編程wj前綴rem

相關文章
相關標籤/搜索