查看MySQL字符编码:一次性搞定(查看mysql字符编码)
MySQL的主要有utf-8和gbk两种字符编码,在使用MySQL数据库开发项目前,需要知道数据库里各个表的字符编码是什么,防止出现乱码问题。那么有没有一个简单方便的查看字符编码的命令?当然有,这就是MySQL提供的“show create table tablename”命令,使用它可以查看表(Table)的完整创建语句,其中涵盖了表的字符编码类型。
比如,我们需要查看表“users”的字符编码类型,可以如下执行SQL语句:
mysql> show create table users;
这样,就可以查询出表“users”的完整创建语句,示例代码如下:
CREATE TABLE `users` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(30) NOT NULL DEFAULT ”,
`password` varchar(64) NOT NULL DEFAULT ”,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8
在上面的示例代码中,你可以看到“DEFAULT CHARSET=utf8”,这就表明表“users”的字符编码类型是utf-8。不仅仅是查看表“users”字符编码,我们也可以使用“show create table tablename”命令来查看其它表的字符编码,只要把“tablename”更换成其它表的名称即可。
另外,假如我们需要检查的表太多,一个个的检查就会耗费太多时间,这时候,还可以考虑用“information_schema”数据库提供的“tables”表来查看MySQL中所有表的字符编码,示例代码如下:
SELECT TABLE_NAME,TABLE_COLLATION
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA=’your_db’;
上面这行代码可以查询出数据库“your_db”中所有表的字符编码,就不需要单独拿出一个表来查询了,一次性就搞定。
总之,使用MySQL提供的“show create table tablename”或“information_schema”数据库的“tables”表,可以轻松的查看MySQL字符编码,这样可以一次性把数据库所有表的字符编码都搞定。