IBM DB2 サーバーへの接続(FireDAC)
データベース接続(FireDAC) への移動
このトピックでは、IBM DB2 サーバーへの接続方法を説明します。
目次
サポート対象バージョン
FireDAC ネイティブ ドライバでは、IBM DB2 の Enterprise、Workgroup、Express、または AS/400 エディションのバージョン 8 以降をサポートしています。 バージョン 8.2 以降をお勧めします。 また、FireDAC ODBC ドライバや DBX ブリッジ ドライバを使用して、他の IBM データベース製品を操作することもできます。
クライアント ソフトウェア
Windows 版クライアント ソフトウェア
FireDAC を使用するには、"IBM DATA SERVER DRIVER for ODBC"、"IBM DB2 ODBC DRIVER"、または "IBM DB2 DRIVER FOR ODBC" の x86 または x64 ODBC ドライバをワークステーションにインストールしておく必要があります。これらは次のサイトからダウンロードできます。
ダウンロードして解凍した後、"<クライアント>\bin\db2oreg1 -i" を実行して ODBC ドライバをインストールします。さらに、フィックス パックもダウンロードしてインストールします。
DB2 ODBC ドライバが正しくインストールされていない場合は、接続を試みたときに以下の例外が発生します。
[FireDAC][Phys][ODBC][Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
DB2 AS400
FireDAC は、DB2 AS400 に接続するには、"iSERIES ACCESS ODBC DRIVER" ドライバが必要です。
Linux 版クライアント ソフトウェア
FireDAC は、unixODBC 64 ビット ODBC ドライバ マネージャ ライブラリと IBM DB2 64 ビット ODBC ドライバが必要です。
IBM DB2 64 ビット ODBC ドライバを Linux にインストールするには、それをダウンロードし、次のコマンドを実行してインストールします:
tar -xavf ibm_data_server_driver_for_odbc_cli_linuxx64_v*.tar.*
cd odbc_cli
sudo mkdir -p /opt/ibm/clidriver
sudo cp -r clidriver/* /opt/ibm/clidriver
echo [IBM DB2 ODBC DRIVER] > db2.driver.template
echo Description=IBM DB2 ODBC Driver >> db2.driver.template
echo Driver=/opt/ibm/clidriver/lib/libdb2o.so >> db2.driver.template
echo DontDLClose=1 >> db2.driver.template
echo Threading=1 >> db2.driver.template
odbcinst -i -d -f db2.driver.template
ドライバのリンク
ドライバをリンクするには、以下のいずれかを行います。
- ツールパレットの[FireDAC Links]ページから、TFDPhysDB2DriverLink コンポーネントをドロップ
- uses 句に FireDAC.Phys.DB2 ユニットを追加します。
接続定義パラメータ
DB2 接続属性を指定する方法は 2 つあります。DB2 クライアント ソフトウェアで DB2 接続エイリアスが構成されている場合には、アプリケーションで Alias パラメータを指定します。エイリアスが構成されていない場合には、Protocol、Server、Port、Database の各パラメータを指定します。また、User_Name と Password も指定します(詳細は「接続の定義(FireDAC)」を参照)。
DriverID=DB2
パラメータ | 説明 | 値の例 |
---|---|---|
Alias | 接続エイリアス。 | MyDB2Srv |
Server | ホスト名(Alias を指定していない場合)。 | 127.0.0.1 |
Port | ポートの値(Alias を指定していない場合)。 | 5000 |
Database | データベース名(Alias を指定していない場合)。 | ADDEMO |
Protocol | プロトコル名(Alias を指定していない場合)。 | TCPIP |
User_Name | DB2 ユーザー名。 | db2admin |
Password | データベース ユーザー パスワードです。'{' と '}' を含むパスワードはサポートされていません。 | master |
LoginTimeout | 接続の確立中にアプリケーションがタイムアウトするまでの時間(秒単位)を制御します(0 の場合は無限に待つことを指定します)。 | 30 |
StringFormat |
文字列値を表す方式を次のいずれかとして定義します。
|
Unicode |
ExtendedMetadata |
クエリ結果セットの拡張記述を次のように制御します。
|
True |
ODBCAdvanced | その他の任意の ODBC 接続パラメータ値を追加で指定することができます。デフォルト値は "IGNOREWARNINGS=1" です。 | |
TxSupported | DB2 データベースが SQL トランザクションをサポートしているかどうかを示します。
|
Yes |
MetaDefSchema | デフォルト スキーマ名です。スキーマ名が MetaDefSchema と同じ場合、設計時コードではオブジェクト名からスキーマ名が省略されます。 | db2admin |
使用例
- 既存のデータベース エイリアスを使用して DB2 に接続する場合:
DriverID=DB2 Alias=addemo User_Name=db2admin Password=mypwd MetaDefSchema=db2admin
- 完全な接続情報を使用して DB に接続する場合:
DriverID=DB2 Server=127.0.0.1 Database=addemo Port=50000 Protocol=TCPIP User_Name=db2admin Password=mypwd MetaDefSchema=db2admin
- DB2 AS400 への接続
- DB2 AS400 へ接続するには、次の手順を実行します:
- TFDConnection および TFDPhysDB2DriverLink コンポーネントを TForm にドロップします。
- TFDPhysDB2DriverLink.ODBCDriver プロパティを
'iSeries Access ODBC Driver'
に設定します。 - TFDConnection をダブルクリックして、Driver ID を
DB2
に設定します。 - [ウィザード] ボタンを押します。
- 接続パラメータを、ODBC ドライバ ダイアログを使用して埋めます。
- [OK] ボタンを押して、パラメータを保存します。