在MySQL中如何判断特定表使用的字符集?

时间:2010-04-27 05:07:00

标签: mysql unicode character-encoding

我有一个庞大的mysql表,我认为可能使用了错误的字符集。如果是这样,我需要使用

进行更改

ALTER TABLE mytable CONVERT TO CHARACTER SET utf8

但是因为这是一个非常大的表,所以除非必须,否则我宁愿不运行此命令。所以我的问题是,我怎么能问mysql特定表上的字符集是什么?

我可以在mysql中调用status来查看数据库的字符集,但这并不一定意味着所有表都具有相同的字符集,对吧?

2 个答案:

答案 0 :(得分:2)

尝试:show create table my_table;

答案 1 :(得分:0)

如果您的表使用了错误的字符集,则此查询将中断数据 所以,它必须以另一种方式转换 如果你不想转换,获得正确数据的唯一正确方法(即告诉mysql不要重新编码)是SET NAMES <table charset>查询。但排序和过滤不起作用 要查看当前的字符集,您可以使用SHOW CREATE TABLE查询