设为首页 加入收藏

TOP

mysql CAPI 接口 读取中文乱码的解决方案
2014-11-24 00:59:56 来源: 作者: 【 】 浏览:6
Tags:mysql CAPI 接口 读取 中文 乱码 解决方案

最近的yymysqlsdk的开源项目里,对中文的支持不到位,因此用了1.5天的时间,对中文处理的各个情况进行了分析。

1.首先确认你的mysql配置文件,my.ini (只针对windows)里的配置,如没有则添加

[client]

default-character-set=gbk (是为了,开发客户端程序时,对中文的支持;如果此处设置为utf8,我没有验证过,稍后验证,哈哈)

[mysql]

default-character-set=utf8

[mysqld]

default-character-set=utf8

2.数据库编码属性,选择utf8,我使用的是naticat mysql。

3.具体到表,右键查询表信息-》ddl ,有没有 看到 一句 “ENGINE=InnoDB DEFAULT CHARSET=latin1;”

对了,这就是设计表的时候,naticat 默认使用的编码方式,请不要随影更改此编码方式,latin1是兼容对utf8的支持(瞎猜的)

4.然后就是用vc去开发客户端程序了,在real_connect后,请执行 编码设置,mysql_query(xxx,“set names latin1”);

5.看代码吧,

view plain

int rows = mysql_num_rows(res);

int fields = mysql_num_fields(res);

for (int i=0;i

{

MYSQL_ROW row = mysql_fetch_row(res);

unsigned long *lengths = mysql_fetch_lengths(res);

for (int j=0;j

{

printf("%s\n",row[j]);

6.此时输出的就是utf8编码的,中文

以上就是我的总结,如对您有帮助,我不胜荣幸。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇浅析Mysql数据回滚错误的解决方法 下一篇浅析mysql、mysqli、PDO

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: