在MySQL中,我们可以使用ALTER TABLE语句来修改表的字符集。
语法格式:
ALTER TABLE table_name
CONVERT TO CHARACTER SET charset_name;
或者
ALTER TABLE table_name
CHARACTER SET = charset_name;
主要参数说明:
- table_name:指定要修改字符集的表名
- charset_name:新的字符集,比如utf8、latin1等
示例:
-- 将students表修改为utf8字符集
ALTER TABLE students
CONVERT TO CHARACTER SET utf8;
-- 将users表修改为latin1字符集
ALTER TABLE users
CHARACTER SET = latin1;
我们也可以同时修改字符集和校对规则:
ALTER TABLE table_name
CONVERT TO CHARACTER SET charset_name
COLLATE collation_name;
sql
ALTER TABLE table_name
CHARACTER SET charset_name
COLLATE collation_name;
修改字符集后,表里的数据也会自动转换。
但修改字符集会锁表,可能需要一定时间。
在修改字符集前,最好用备份表数据。
修改完成后,需要重新建立表索引。