VC中用ADO操作MySql数据库中文问题
2010-05-10 12:55
260 查看
我的程序是用ADO来连接Mysq数据库的,这是原先写好用在MSSQL上的,改了下连接字符串,所以也就没有用MySql C++ API来重新写了。刚开始使用MySql,遇到的问题总是特别的多,现在又遇到一个主要sql字符串中有中文就报错的问题,没有中文一切正常,整整弄了一个上午,在网上也找了很多资料,发现网上很多东西确实是在蒙人,按他们的方法来结果都是一样的,还是错误。
现在终于把问题搞定了,共享下自己的学习经验吧。
用ADO连接MySql数据库要想避免中文乱码等问题,首先要保证数据选用的编码格式为GBK(这是许多前辈们建议的,这个字符集支持的比较多),而且在MySql中还可以设置表的,字段的编码格式。
其次,在ADO连接代码中做必要的设置,具体设置如下:
两方面都保证了以后问题应该就可以搞定了,不过我想并不一定一定要使用GBK,能保证两边的编码格式一致应该就行。
现在终于把问题搞定了,共享下自己的学习经验吧。
用ADO连接MySql数据库要想避免中文乱码等问题,首先要保证数据选用的编码格式为GBK(这是许多前辈们建议的,这个字符集支持的比较多),而且在MySql中还可以设置表的,字段的编码格式。
其次,在ADO连接代码中做必要的设置,具体设置如下:
try { //设置ADO使用的字符集 myConn->Execute("set character_set_connection=gbk",NULL,adCmdText); myConn->Execute("set character_set_results=gbk",NULL,adCmdText); myConn->Execute("set character_set_client=gbk",NULL,adCmdText); myConn->Execute(_bstr_t(sqlText),NULL,adCmdText); } catch (_com_error e) { msg = e.ErrorMessage(); }
两方面都保证了以后问题应该就可以搞定了,不过我想并不一定一定要使用GBK,能保证两边的编码格式一致应该就行。
相关文章推荐
- navicat操作mysql数据库 建表中文乱码问题
- python操作mysql数据库如何解决中文乱码的问题
- DOS命令行操作MySQL数据库中文乱码问题解决
- jdbc操作mysql数据库中文字符串问题
- VC使用ADO连接oracle中文字符问题:涉及oracle字符集、连接字串。
- Java简单操作mysql数据库代码存档+处理中文乱码问题
- mybatis操作mysql数据库中文出现乱码的问题
- VC读取mysql数据库中文字符的时候全部显示问号问题的处理
- VC++通过ADO连接mysql中文显示问题
- mysql数据库-中文乱码问题解决方案
- IDEA操作MySQL数据库乱码问题解决方案
- vc操作excel程序退出的问题
- 解决openfire在使用MySQL数据库后的中文乱码问题(转)
- 关于VC操作Excel和运用ADO操作数据库时产生冲突的解决
- 搞定MySQL数据库中文模糊检索问题
- Wordpress 2.5.1成功搬家并解决wordpress中文Mysql数据库导入乱码问题
- VC下ADO基本操作
- centos环境下java的file操作对象使用中文文件操作异常问题
- python+mysql 操作数据库出现的中文编码问题