我在my.ini中分别设置
default-character-set=gb2312
default-character-set=utf8
default-character-set=gbk
来启动Mysql,在终端插入中文,只有设置为gb2312、gbk才能正常插入和显示;但无论设置为哪一个,在代码中使用mysql_query(l_pMyData,"insert into info values('第八月')")插入中文时,始终插入失败;使用mysql_query(l_pMyData,"setcharacter_set_connection=utf8,
character_set_connection=gbk,character_set_results=gb2312")则插入中文成功,但用终端查看还是乱码。好像很复杂,望高手点拨一下吧!
default-character-set=gb2312
default-character-set=utf8
default-character-set=gbk
来启动Mysql,在终端插入中文,只有设置为gb2312、gbk才能正常插入和显示;但无论设置为哪一个,在代码中使用mysql_query(l_pMyData,"insert into info values('第八月')")插入中文时,始终插入失败;使用mysql_query(l_pMyData,"setcharacter_set_connection=utf8,
character_set_connection=gbk,character_set_results=gb2312")则插入中文成功,但用终端查看还是乱码。好像很复杂,望高手点拨一下吧!
是不是client和server的字符集设置要一样呢?你把他们都设为utf8试试
启动时:default-character-set=gbk
建表info:mysql_query(l_pMyData,"create table if not exists info(name char(32))
character set gbk");
再设置:mysql_query(l_pMyData,"set names gbk");
插入中文:mysql_query(l_pMyData,"insert into di values('乱码')");插入成功在终端处查看:先 >set names gbk> select * from di;
+------+
| name |
+------+
| 乱码 |
+------+
1 row in set (0.00 sec)
显示果然是‘乱码’,哈哈