QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1848|回复: 0

C函数操作mysql5插入数据乱码(已经设置了字符集为utf8)!

[复制链接]
发表于 2009-2-24 16:01:01 | 显示全部楼层 |阅读模式
已经修改了/etc/my.cnf文件,并在终端查询设置:

mysql> show variables like 'collation_%';
+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_general_ci |
| collation_server     | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)

mysql> show variables like 'char_%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

说明字符集设置成功了。在终端里插入中文可以显示,但程序里面通过C函数插入始终是乱码。
最后在连接数据库后加入 mysql_query(mysql,"SET NAMES utf8");成功。但问题出来了,在网上搜寻SET NAMES utf8就是设置字符集的作用,但我已经修改my.cnf,为什么还要在程序里面调用SET NAMES utf8来设置字符集。mysql的版本5.0.45
您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-4-25 23:41 , Processed in 0.051063 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表