自己搞糊涂了,进了 mysql 设一下
SET character_set_client = gbk
SET character_set_connection = gbk
SET character_set_database = gbk
SET character_set_results = gbk
SET character_set_server = gbkSET collation_connection = gbk_bin
SET collation_database = gbk_bin
SET collation_server = gbk_bin
然后就OK了
SET character_set_client = gbk
SET character_set_connection = gbk
SET character_set_database = gbk
SET character_set_results = gbk
SET character_set_server = gbkSET collation_connection = gbk_bin
SET collation_database = gbk_bin
SET collation_server = gbk_bin
然后就OK了
mysql> show variables like "%char%";
+--------------------------+-------------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | gbk |
| character_set_results | gbk |
| character_set_server | gbk |
| character_set_system | utf8 |
| character_sets_dir | D:\MySQL\MySQL Server 4.1\share\charsets/ |
+--------------------------+-------------------------------------------+mysql> show variables like "%colla%";
+----------------------+---------+
| Variable_name | Value |
+----------------------+---------+
| collation_connection | gbk_bin |
| collation_database | gbk_bin |
| collation_server | gbk_bin |
+----------------------+---------+
3 rows in set (0.00 sec)然后执行 查询语句
mysql> select * from bordinfo where bordname='s';
ERROR 1267 (HY000): Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (
gbk_bin,COERCIBLE) for operation '='还是出错阿!!!
怎么办??另外,我发现,当前设置好的参数,到下次进来后,又变成了原来默认的拉! 真是郁闷,为什么这样啊??
mysql>
要修改表的字符集设置
让它支持中文呢?
我有原来版本导出的数据
解决办法在SQL文件的头部放了上面设置的语句
在产生连接池的时候上也应该添加相应的设置语句
就是麻烦了一点,是否有办法直接在.INI文件中进行配置?谢谢
SET character_set_connection = gbk
SET character_set_database = gbk
SET character_set_results = gbk
SET character_set_server = gbkSET collation_connection = gbk_bin
SET collation_database = gbk_bin
SET collation_server = gbk_bin
SET character_set_client = gbk
SET character_set_connection = gbk
SET character_set_database = gbk
SET character_set_results = gbk
SET character_set_server = gbkSET collation_connection = gbk_bin
SET collation_database = gbk_bin
SET collation_server = gbk_bin以后,然后退出mysql状态重新登陆后mysql> show variables like "%char%";
+--------------------------+-----------------------------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | gbk |
| character_set_results | latin1 |
| character_set_server | gbk |
| character_set_system | utf8 |
| character_sets_dir | D:\WWW\MySQL\MySQL Server 4.1\share\charsets/ |
+--------------------------+-----------------------------------------------+
不知道为什么,请指教?
+--------------------------+-----------------------------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | gbk |
| character_set_results | latin1 |
| character_set_server | gbk |
| character_set_system | utf8 |
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 4.1\share\charsets/ |
+--------------------------+-----------------------------------------------+
可见仍有几个变量没有统一!
选Manual Selected Default Character Set/Collation 再在下拉框中选GB2312或GBK就可以解决中文问题了。