解决连接MySql4.0数据库出现的"character_set_results"问题


昨天在部署我的MAS接口程序时,出现如上标题出现的错误。

客户端IP:192.168.1.100,MAS机接口程序部署在客户端。

服务器IP:192.168.1.101,MySql4.0的数据库.

程序连接MySql方式:采用ODBC方式, driver:mysql odbc driver5.1(这是我连接失败前采用的驱动)


 连接串如下(C#):

connectionString="Driver={MySQL ODBC 5.1 Driver};Server=192.168.1.101;Port=3306;Option=131072;Stmt=;Database=mas; User=root;Password=123456" .用该连接串去连接数据时,返回异常:unknow system varibles "character_set_results".....。我猜是不是有关字符集的问题。我查了MYSQL有关字符集文档,简单说一下,。

 

1、character_set_database:保证数据库中存的数据与数据库编码一致;

2、要保证通讯的字符集与数据库的字符集一致,即character_set_client, character_set_connection与character_set_database一致;

3、要保证SELECT的返回与程序的编码一致,即character_set_results与程序编码一致;

4、要保证程序编码与浏览器编码一致,即程序编码与<meta http-equiv="Content-Type" content="text/html; charset=?"/>一致。

  我改了连接串,设置了 character_set_results=uft8方式也不管用。真是个烦人的问题。

好在我冷静分析, 是不是因为driver版本问题。我的mysql driver版本为5.1的,而mysql为:4.0版本的。

重新去官方网站下载驱动,更改driver3.51版本的驱动,再去连接,果然成功!

connectionString="Driver={MySQL ODBC 3.51 Driver};Server=192.168.1.101;Port=3306;Option=131072;Stmt=;Database=mas; User=root;Password=123456"  

掩不住内心的喜悦,特此记念下! 希望能帮到遇到同样问题的朋友!

 

posted @ 2009-11-20 11:20  Repository  阅读(1848)  评论(0编辑  收藏  举报