按照网上提供的ODBC连接数据库的相关资料编写代码,成功编译后运行发现,非中文字段显示正确,而中文字段却是每个汉字以?显示。关于这方面的错误baidu或google下可以找到很多解答方案,我也尝试过其中的一些,有些并没有成功解决,看来出现中文乱码的原因各不相同。在这里我只将我的解决方法贴出来,目的为了让因为这个原因而导致中文乱码问题的朋友成功解决问题。(其实我之前做过ODBC连接Sybase的工作,貌似也是这个原因,所以感觉中文乱码可能大多因此而出现,当出现乱码时,朋友们可以首先在这方面下功夫寻找解决方案)
首先来看一看乱码问题:
可以看到非中文字符能够正常显示,而中文字符不能够正常显示。
我这个问题出现的原因在ODBC数据源的设置上,首先在控制面板中找到管理工具,点击打开数据源(ODBC),找到为该操作配置的数据源,点击打开,然后对其进行配置:
进入配置界面后点击左下方的Details按钮:
在connect菜单下的Character Set中选择gb2312(之所以选择gb2312是因为在用phpmyadmin对MySQL进行管理时,创建的表及其中表项的字符集均为:gb2312_chinese_si),点击OK。
再次运行VC程序,可以看到乱码的问题解决了:
如果问题仍没有解决,可以尝试重启MySQL服务。如果仍不起作用,那就有可能是你遇到的问题和我不同,你可以在网上找寻其他的解决方案,祝你好运!