快捷搜索:  as

MySQL字符集:怎样才能保证不发生乱码

数据库中关于字符集的种类有很多,对编程有影响的主如果客户端字符集和数据库字符集(还有一个办事器字符集,不知道干什么用的)。

数据库中常用的操作便是保存数据和读取数据,在这历程中,乱不乱码和数据库字符集貌似没有什么关系。我们只要包管写入时选择的字符集和读取时选择的字符集同等,即只需包管两次操作的客户端字符集同等即可。

客户端字符集的设置,依据客户端不合措施不合:

1. 应用节制台连接,在my.ini文件中的client项里面设置;

2. 应用ems连接,优先应用ems连接设置设置设备摆设摆设的字符集,默认应用my.ini文件中的设置;

3. jdbc连接,在连接串中指定:

jdbc:mysql://192.168.3.99:3306/test?useUnicode=true& ;characterEncoding=gbk

在写入时Mysq会将客户端指定的字符集转换成数据库字符集存入数据文件,读取时又将数据库字符集转换成客户端指定的字符集展示给客户端,把客户端字符集和数据库字符设置同等,显而易见的好处是免掉落转换的机能损耗;别的,假如斟酌到今后数据库的迁移,将数据库字符集设置为大年夜多半数据库都支持的字符聚会会议省掉落很大年夜麻烦。

几个字符集相关的敕令:

1. 查看 MySQL 数据库办事器字符集,数据库字符集和客户端字符集

show variables like '%char%';

character_set_client,客户端字符集

character_set_database,数据库字符集

character_set_server,办事器字符集

2. 查看 MySQL 数据表(table) 的字符集

show table status from tablename like '%countries%';

3. 查看 MySQL 数据列(column)的字符集。

show full columns from tablename;

4. 查看当前安装的 MySQL 所支持的字符集。

show char set;

您可能还会对下面的文章感兴趣: