本人使用:DELPHI X10.2.2 版本连接 MYSQL 5.1 (安装 mysql-5.1.72-win32.msi)的32位版本,开始连接不了;
将 MYSQL 5.1 安装目录下bin 中的 libmySQL.dll ,复制到:DELPHI 安装目录下 bin (本人安装于 E:\Embarcadero\Studio19.0\),
由于是 32位 Mysql ,所以是bin,而不是:bin64。 使用 Delphi 的 Data Explorer 中 dbExpress 的MySql ,修改其中参数,就可以读到数据结构了。
不再出现 "Failed : DBX Error: Driver can not be properly initialized. .....",即驱动已经正确设置。!!!
=================================
XE7Datasnap使用dbExpress连接MySQL数据库: https://www.2cto.com/database/201412/360021.html
dbExpress提供了多种的连接能力,这次以MySQL为例,对MYSQL的连接进行了试验,过程中需要注意的几个点:
1.创建DataSnap的服务器端,这些都没什么说的,根据向导来,最后生成ServerMethodsUnit1模块,
2.在Data Explorer设置的连接信息,当然现在是连不通的
3.在ServerMethodsUnit1模块中加入TSQLConnect、TSQLTable、TDataSetProvider三个元件。
4.选择ConnectionName为MySQLConnection,Driver选择为MySQL,填写DataBase,HostName,Password,UserName,如果服务器有字符要求,还要填写ServerCharSet(一般为UTF-8)。
5.然后点SQLConnect的Connected属性,发现报错,怎么也连不上,如果你也出现这样的问题,需按照下面的办法来处理。
连接不上的处理:
1.安装mysql的服务器端,若开发32bit程序,注意选择32bit安装包,将安装目录bin中的libmysql.dll复制到system32目录中,或者直接将bin目录放入Delphi的library当中。
2.将XE7安装目录中的dbxmys.dll找到,一般应该在X:\Embarcadero\Studio\15.0\Redist\win32\里面,复制到应用程序的Debug目录下。
然后重新点SQLConnect的Connected属性为True,果然连接成功了。