网上有说的字符编码问题就不多提了,建表的时候要设置有中文字段属性的字符为UTF8或GBK或GB2312,具体的看自己数据源文件的字符编码格式。
我用的是ini文件,现将ini文件中内容写入数据库,我的ini文件的中文编码是gb2312,然后建表的时候,在语句最后加了DEFAULT CHARSET=gb2312,但是查看的时候仍然是有问题,不管我用什么编码;但UTF8的时候可以显示为正确的中文,其它时间查询出来显示都是“?”。
把可以试的办法都试了,浪费了很多时间,下面是解决方法(以我的gb2312为例):
1.建表语句后面加上‘DEFAULT CHARSET=gb2312’;
2.控制面板-->管理工具-->数据源ODBC-->Mysql ODBC 3.51 Driver-->用户DSN-->配置:connect options选项卡下character set属性中选择gb2312(没有的话直接输入)
3.确定,然后去看吧,你会发现的。当然,这只是一种特殊现象,很多是编码问题。注:Delphi7不支持ODBC5.1。