FireDACでMySQLを使う際の環境設定にはまったので、備忘録として書く。
使用するデータベースのバージョンの選択
RAD Studioのバージョンによって、サポートしているデータベースのバージョンが違うことに注意。
C++Builderは32bitアプリケーションなので、開発環境からMySQLにアクセスするために32bit版のクライアントライブラリ(libmysql.dll)が必要になる。
さらに、自分で作成するアプリケーションが64bitである場合は64bit版のクライアントライブラリも必要になる。
現在公開されているMySQLの最新は8.0.19であるが、8.0.19での32bit版クライアントライブラリの入手方法が調べてもよくわからなかったので、今回は
- RAD Studio 10.2
- MySQL 5.7.29
を使用することにした。
開発環境作成手順
MySQLのインストールに関する詳細は省略。
-
MySQL64bit版インストーラーをダウンロード
-
64bitでインストールする。(インストーラは32bitだけど問題なし)
-
MySQL32bit版のzipをダウンロード
-
3.のzipを任意のディレクトリに展開する。展開後必要なのはbinとlib配下のみなので、それ以外は削除する。
こんな感じ。 -
FDDrivers.iniを編集し、参照するlibmysql.dllを設定する。
FDDrivers.iniの格納場所はこちらを参考に。
[FDDrivers.ini]
Encoding=UTF8
[MySQL]
VendorLibWin32 =C:\mysql-5.7.29-win32\lib\libmysql.dll
VendorLibWin64 =C:\Program Files\MySQL\MySQL Server 5.7\lib\libmysql.dll
VendorLibWin32は32bit版のDLLへのパスを、VendorLibWin64は64bit版のDLLへのパスを記述する。
6.接続確認を行う。
C++BuilderでForm上にTFDConnectionを配置し、ダブルクリックする。