Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
C++DelphiIDERAD Studio

64bit IDE × 64bitドライバ:RAD StudioとMySQLの接続がもっとシンプルに!

RAD Studio 12.3で初期リリースされた64-bit IDEにより、開発環境がより強力かつ柔軟になりました。本ブログでは、FireDACを使ってMySQL 8.4へネイティブに接続する方法を、実際の設定例とともにご紹介します。「64-bit IDEで何が変わるのか?」に関心がある方にぴったりの内容です。

64-bit IDEの登場が意味すること

RAD Studio 12.3ではついに64-bit IDEが登場しました。これにより、開発者にとって次のような大きな恩恵があります:

  • 大容量メモリの利用:プロジェクトが大規模になるにつれて、32-bit IDEでは扱いきれなかったメモリ領域の制限が解消。
  • 64-bitドライバの直接利用:FireDACなどのコンポーネントを用いて、IDE内から64-bitデータベースドライバが直接接続可能に。
  • 開発環境のシンプル化:わざわざ32-bit用ドライバを別途インストールしなくてもよくなった。

従来の32-bit IDEでは、64-bitのMySQLドライバが直接利用できず、「開発時の確認が面倒」という声が多かったのではないでしょうか?

MySQL 8.x以降では32-bitのネイティブドライバは提供されていない

MySQL 8.0以降、Oracle公式ではWindows向けの32-bitネイティブドライバ(libmysql.dllなど)は提供されていません。現状、libmysql.dllを使用したネイティブ接続は不可で、32-bitアプリからMySQLへ接続するためには、ODBCドライバに切り替える必要があります。

ただ、ODBCドライバではODBC DSNの設定が必要であったり、一部の型や機能などに制約があります。その点ネイティブドライバは、ODBCを介さずにMySQLと直接通信できるため、高速かつ軽量な接続が可能です。ドライバDLLをアプリと一緒に配置するだけで使える手軽さに加え、MySQL固有の機能にも柔軟に対応できるため、既存資産との互換性やパフォーマンスを重視する開発者に好まれています。

64-bitのIDEであれば、libmysql.dllを使用したMySQLへのネイティブ接続が行えます。

FireDAC+64-bit IDEでMySQL 8.4に接続する(ネイティブドライバ使用)

環境準備

  • RAD Studio 12.3 (64-bit IDE)
  • MySQL 8.4 (64-bit)  MySQL公式サイト から取得
  • MySQL ネイティブドライバ(libmysql.dll)
    • libmysql.dll をアプリケーションと同じフォルダ、またはシステムパスの通ったフォルダへ配置
  • FireDAC コンポーネント

補足: MySQL 8.0以降では、TLS(SSL)による接続がサポートされており、使用できるTLSバージョンはTLS 1.0、1.1、1.2、1.3です。ただし、TLS 1.0と1.1はセキュリティ上の理由から現在では非推奨とされており、TLS 1.2以降の使用が推奨されています。特にMySQL 8.0.16以降ではTLS 1.3にも対応しており、より安全で高速な通信が可能です。安全性を重視する場合は、TLS 1.2またはTLS 1.3での接続が望ましいとされています。RAD Studio 12.3のFireDACでは、TFDConnectionのUseSSLプロパティをtrueに設定した場合、MySQLへTLS 1.3での接続にも対応しています。

本ブログでは、FireDACからMySQLへの接続は、非SSLで進めます。

簡単な実行手順

(1) Windowsのスタートメニューから「RAD Studio 12(64-bit initial Release)」を選択
(2) 新規VCLアプリケーションを作成する
(3)フォームに以下のコンポーネントを配置する
  • TFDConnection
  • TFDQuery
  • TDataSource
  • TDBGrid
(4)フォーム上のFDConnection1を選択し、マウスを右クリックして[接続エディタ]を選択し、各パラメータを設定する
  • DriverID: MySQL
  • Server: <ローカル>(または接続先IP)
  • Database: 任意のデータベース名
  • User_Name: 任意のユーザー名(例えば、root)
  • Password: アカウントのパスワード
  • Port: 3306(変更していない場合)

設定後、[テスト]ボタンを押して接続テストを実行してください。

下記の画像のように「接続の確立が成功しました」というメッセージが表示された場合は、64-bit IDEから64-bit のネイティブドライバを利用してMySQLへ接続できています。

1 35

もし接続テスト時に以下のエラーメッセージが表示される場合は、

[FireDAC][Phys][MySQL]-314. ベンダ ライブラリ [libmysql.dll, libmariadb.dll or libmysqld.dll] を読み込めません。指定されたモジュールが見つかりません。ヒント: PATH またはアプリケーションの EXE ディレクトリに含まれているか、x64 -bit であるかを確認してください。

libmysql.dllへパスが通っていない、あるいはlibmysql.dllへパスは通っているが、こちらのサポート情報のように特定のファイルが不足しているために発生している恐れがございますので、ご確認ください。

接続テストが完了したら、次のステップへ進んでください。

(5) 簡単なサンプルテーブルを作成する

FDConenctionの[接続スクリプト]タブを選択して、以下のSQL文を入力します。

最後に [▶]実行ボタンを押して、SQL文を実行してください。

下図のようにエラーメッセージが表示されなければ、テーブルの作成とデータ挿入が完了です。

2 15
(6) オブジェクトインスペクタで各プロパティを設定
プロパティ 設定値
FDConnection1.LoginPrompt false
FDQuery1.SQL Select * from books
DataSource1.DataSet FDQuery1
DBGrid1.DataSource DataSource1

上記のプロパティを設定し、最後にFDQuery1のActiveプロパティをtrueに設定します。

(7) データの表示

下図のようDBGridに表示されているデータは、FireDACコンポーネントを用いて、IDE内から64-bitデータベースドライバが直接接続しています。

3 10

従来のIDEでは、アプリケーションは64-bit であっても、IDE自体が32-bit だったため、32-bit 版のドライバを別途インストールして接続確認する必要がありました。これは環境構築の手間や混乱の原因になりがちでした。

しかし、RAD Studio 12.3ではIDEが64-bit 化されたことで、64-bit ドライバを直接IDEから使用できるようになり、開発・デバッグの流れが格段にシンプルかつ効率的になります。

まとめ

RAD Studio 12.3の64-bit IDEの登場により、Delphi開発者はこれまでにない快適な環境を手に入れました。
特に、64-bit のデータベースドライバをIDEから直接利用できるようになった点は、大きな進化です。

従来の開発フローでは、IDEが32-bit だったため、次のような不便がありました。

Before(従来の32-bit IDE)

  • 64-bit アプリを開発していても、IDEでは64-bit ドライバが使えない
  • 開発PCに32-bit 版のドライバを別途インストールする必要あり
  • 実行時とデザイン時で接続環境が異なる → 動作確認が面倒

After(RAD Studio 12.3の64-bit IDE)

  • IDEから直接64-bit のMySQLドライバが利用可能
  • FireDACを使った接続テストもその場で実行可能
  • 接続構成がシンプルになり、構築ミスや環境差異によるトラブルが減少

今回はMySQLを例にしましたが、64-bit をサポートする他のデータベースでも同じ手法で開発を進めることができます。

64-bit IDE使用時の注意点

初期リリース段階のため、現状64-bit IDEには以下の注意点があります。

  • 一部未対応機能あり: ActiveX、COMライブラリ、タイプライブラリ、Visual Assist for C++など、一部の機能がまだ未対応です。
  • Win64以外のプラットフォームは利用不可: Win32やLinux、iOS等のプラットフォームは64-bit IDEでは利用できません。これらを利用する場合は32-bit IDEを使用する必要があります。
  • 32-bit IDEとの機能差 : 現状では、64-bit IDEは32-bit版IDEと機能的に完全一致しておらず、今後のバージョンでの機能追加が予定されています。
  • 機能マネージャとGetItパッケージは32-bit IDEのみ対応: 機能マネージャやGetItを利用したパッケージインストールは、現時点では32-bit IDEでのみサポートされています。

RAD Studioは今後、64-bit IDEを標準的なIDE環境として段階的に整備していく見込みです。

関連情報



See What's New in 12.2 Athens See What's New in 12.3 Athens Dev Days of Summer 2-24

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

This site uses Akismet to reduce spam. Learn how your comment data is processed.

IN THE ARTICLES