0

我在将 Devart UniDac 与嵌入式 mySQL 数据库连接时遇到问题。

代码如下:

basedir := GetCurrentDir + '\mysql';
UniConnection1.ProviderName := 'MySQL';
UniConnection1.Database := 'razrednici';
UniConnection1.SpecificOptions.Values['Embedded'] := 'True';
UniConnection1.SpecificOptions.Values['EmbeddedParams'] := '--basedir=' +
  basedir + ''#13#10'--datadir=data';
UniConnection1.Connect;

但我收到一些文件丢失的错误消息,我有一个数据库, ./mysql/data/razrednici 我有一个共享文件夹以及数据文件夹和libmysqld.dllexe 文件......丢失了什么?帮帮我

4

1 回答 1

0

要使用嵌入式服务器,您应该将所需的 libmysqld.dll 和“共享”目录从 MySQL 服务器目录复制到应用程序所在的目录。

这个库对于 32 位和 64 位应用程序是不同的,它与 MySQL 服务器一起分发。

libmysqld.dll 和 share\english\errmsg.sys 文件与相应位数的 MySQL Server 分发一起分发。

注意,MySQL Embedded Server 库的 32 位和 64 位客户端库被称为相同的 - libmysqld.dll 并且它们中的每一个都以相应的位数分布。

将 libmysqld.dll 放在所用文件的同一目录中就足够了。

还尝试在您的示例中使用以下代码:

UniConnection.SpecificOptions.Values['EmbeddedParams'] := '--basedir=.'#13#10'--datadir=data';
于 2017-06-23T13:02:56.273 回答