解决连接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 @   Repository  阅读(1877)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示