用mysql odbc3.51连接mysql5.0以上的数据库是否不支持中文哦,在mysql服务器中已设置成了中文简体,查询出来的结果还是乱码,(50分)

  • 主题发起人 主题发起人 飞天大侠
  • 开始时间 开始时间

飞天大侠

Unregistered / Unconfirmed
GUEST, unregistred user!
用mysql odbc3.51连接mysql5.0以上的数据库是否不支持中文哦,在mysql服务器中已设置成了中文简体,delphi7.0凡是中文内容的表查询出来的结果全是"???"<br><br>补充几点:<br>1,表只要是中文,在TTable的table属性里全是问号<br>2,字段若是中文,效果同上<br>3,表内容若是中文,效果同上
 
字符集转换的问题
 
这是一个UNICODE的问题,DELPHI目前的版本都还没有对UNICODE的支持,D2008有支持了.如果你只是学习的话,D2008出的时候装上就OK了,你如你有之前的系统,那你可以考虑用TntUnicodeControls------------下边是对UNICODE的讲解<br>----------------------------------------------------------<br>什么是UNICODE:http://java.ccidnet.com/art/3737/20060605/571357_1.html
 
sql语句最先执行处加一句 &nbsp;set names 'utf-8'<br>就可以了。<br>这个是内码转换的问题。<br>我的PHP+MYSQL也是这么解决的问题。
 
mysql的配置及建表时的问题,注意字符集的设定,应用类似于如下的建表语句:<br>CREATE TABLE `log` (<br>&nbsp; `ID` int(11) NOT NULL auto_increment,<br>&nbsp; `logtime` datetime default NULL,<br>&nbsp; `logvalue` varchar(250) default NULL,<br>&nbsp; PRIMARY KEY &nbsp;(`ID`)<br>) ENGINE=MyISAM DEFAULT CHARSET=gbk;
 
楼主应该早就解决了吧<br>如果还没有, 可以试试比较简单的办法:<br>在某个地方加上下面这句就可以了:<br>SET character_set_results = GBK, character_set_connection = GBK, character_set_client = GBK
 
后退
顶部