Delphi XE8中的DBExpress使用ODBC方式连接MySQL 5.6.24 X64!!!!

Delphi:XE2、XE8

MySQL:5.6.24 X64

      今天准备做一个使用数据库的REST程序,最开始使用XE2,后来使用XE8,但是我遇到一个让我头疼的问题,就是无法连接我要使用的数据库,这个问题我几乎找遍了互联网,搜索各种可能的解决方法,但是都没有解决,最后无意中发现解决的方法,解决的过程真痛苦,几乎用了我一天时间,希望大家比我幸福!!

     我为什么要用DBExpress来连接数据库?我发现DBExpress可能是DataSnap REST的首选数据库连接库,所以想用DBExpress来连接!!

     我为什么使用ODBC方式来连接MySQL?ODBC方式,只要对应数据库驱动安装正确,就应该可以建立系统DSN,可以为所有程序使用,建立DSN就可以验证是否可以正常使用这个数据库了!!

     我早上兴高采烈地建好了DSN,我的数据库是64位的,我安装了MySQL的32位和64位ODBC驱动,我觉得我应该首先选择使用64位ODBC管理器建立DSN,于是我顺利在64位ODBC管理器建立了一个DSN,测试一切正常,按照常理,这时候应该一切顺利了,我应该可以在各种程序中使用这个数据源了,哪知道痛苦从此开始了!!!

    我在XE2中和XE8中使用“Data Exploer”来连接我的MySQL数据库,提示我:


   这怎么可能呢?明明已经建立好了数据源了啊,我最后把这个64位的DSN删除,在32位ODBC管理器里面建立了一个32位的DSN,再次连接,一切正常了!!原来我开发的程序是32位的!!!如果我们想要这个数据源能够同时为32位和64位提供服务怎么办?首先,安装MySQL的32位和64位ODBC驱动,随后分别在32位和64位ODBC管理器中建立相同名称的DSN,随后我们就可以无忧使用这个数据源了!!!


  关于上面问题,网上不少说是缺少“libmysql.dll”,解决方法就是把对应的这个文件放到system32目录中,我也按照网上的解决方法去处理,但是还是没有解决,如果你解决了,麻烦告诉我一下,谢谢!!! sunylat@163.com


参考:DBExpress和各个数据库驱动对应关系图。

    http://docwiki.embarcadero.com/RADStudio/XE8/en/DbExpress_Supported_Database_Management_Systems


      


 

posted on 2015-06-06 17:53  sunylat  阅读(305)  评论(0编辑  收藏  举报