龙空技术网

mysql 修改所有表前缀和表字符集

零一间 119

前言:

此刻朋友们对“修改数据库表中的数据语句”大致比较着重,大家都需要知道一些“修改数据库表中的数据语句”的相关资讯。那么小编也在网摘上搜集了一些有关“修改数据库表中的数据语句””的相关文章,希望姐妹们能喜欢,大家一起来学习一下吧!

修改表前缀

添加表前缀

-- hms数据库所有表加前缀'hms_'

SELECT

CONCAT( 'ALTER TABLE `', table_name, '` RENAME TO hms_', table_name, ';' ) AS "生成修改表SQL语句"

FROM

information_schema.TABLES

WHERE

TABLE_SCHEMA = 'hms'

替换表前缀

-- hms数据库所有表前缀'hms_'替换为'hm_'

SELECT

CONCAT( 'RENAME TABLE `', table_name, '` TO ', REPLACE ( table_name, 'hms_', 'hm_' ), ';' ) AS "生成修改表SQL语句"

FROM

information_schema.TABLES

WHERE

TABLE_SCHEMA = 'hms'

注意

替换前后产生的新旧表名不能一致,否则提示表已经存在。

表名用反引号括起来 ``,防止关键词阻止正常执行。

修改字符集

修改数据库字符集

ALTER DATABASE db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

把表默认的字符集和所有字符列(CHAR,VARCHAR,TEXT)改为新的字符集:

ALTER TABLE db_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

只修改表的默认字符集:

ALTER TABLE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

批量修改字符集

SELECT

CONCAT( 'ALTER TABLE ', TABLE_NAME, ' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;' ) 'alter_charset_sql'

FROM

information_schema.TABLES

WHERE

TABLE_SCHEMA = 'hospital1.1';

标签: #修改数据库表中的数据语句 #mysql修改前缀