Home > リファレンスガイド > 設定 > リソース > データベースリソース

データベースリソース

Magic xpiは、[設定]ダイアログボックスでデータベースリソースの情報を格納します。ここには、データマッパーを使用してマッピングすることのできるデータを持ったデータベースの一覧が含まれています。

Magic xpiは、問題なくプロジェクトを構築し、デプロイするために、データベースクライアントとドライバが正しく設定されている必要があります。

Magic xpiランタイムは、デプロイを成功させるために64ビットのクライアントを必要とします。ユーザーは64ビットのOracleクライアントがマシンにインストールされていることを確認する必要があります。

必要なサービス名を Tnsnames.ora (32 ビット Oracle クライアントのファイル)から 64 ビット Oracle クライアントの同じファイルにコピーしてください。

ODBCの場合は、64ビットのODBCドライバがインストールされている必要があります。システムDSN名は一意ではないので、64ビットのODBCドライバでも32ビットのODBCドライバでも同じシステムDSNを定義することができる。

 

Studioでデータベースリソースを検証するには、すべてのデータベースに32ビットドライバが必要です。

データベースリソースには、以下のパラメータがあります(太字のパラメータは必須です)。

パラメータ

説明

DBMS

データベースのタイプ。データベースのタイプをドロップダウンリストから選択します。 一覧には Microsoft SQL Server、Oracle、ODBC、DB2/400、DB2、 Pervasive SQLが含まれています。

データベースタイプのためのデフォルトは以下のファイルに保存されます: <Magic xpi >\Studio\data_types.xml.

データベース名

接続文字列

データソース名

データベースエイリアス

ライブラリ/スキーマ名

データベースのタイプによって、以下の情報を入力します。

  • Microsoft SQL ServerDB2 UDB …… 実際のデータベース名を入力してください。

  • データベース名に特殊文字(スペースやハイフン(-)、プラス符号(+)で終了)が含まれている場合、角括弧で囲まなければなりません。例: [My Database Name]

  • リソース名は、データベース名が<リソース名>_DBになるように定義してはいけません。

  • Oracle 10g11e …… 接続文字列を入力してください。

データベースがローカルにあっても、Magic xpiを通してOracleに接続する場合はエイリアスを使用する必要があります。

  • ODBC/Pervasive …… ODBC データソース名を入力してください。ODBCデータソースがコンピュータのWindows設定に入力されているかを確認してください。Magic xpiは、最大30桁のテーブル名で接続することができます。より長いテーブル名が定義されている場合の処理についの詳細は、この技術情報を照してください。

ODBCリソースと共にデータマッパーを使用する場合、あなたがODBCリソースを[設定]ダイアログボックスの中の[リソース]セクションから削除する時、スキーマにはデフォルトのODBCデータ型を含まれ、削除されたODBCリソースにはODBCデータ型は含まれません。デフォルトは、data_types.xmlファイルに定義されています。

  • DB2/400 …… [DB2/400ライブラリ]ダイアログボックス内での中で有効なライブラリから選択するには、[ライブラリ]ボタンをクリックしてください。存在していないライブラリを選択しても、ウィザードや実行時には表示されません。

Magic.iniファイルの[MAGIC_GATEWAYS]セクションで適切なデータベースゲートウェイがコメントアウトされているか確認してください。エントリーがコメントアウトされている場合(エントリーの前にセミコロン(;)がある)、それを削除するとゲートウェイが有効になります。

Magic xpi StudioでネイティブのMicrosoft® ODBC Driver for SQL Server®を使用するには、data_types.xmlファイルの情報をdata_types_MSSQLODBC.xmlファイルの情報に置き換える必要があります。これらのファイルは両方とも以下の場所にあります。<Magic xpiのインストール先>\Studio.

サーバ名

データベースがインストールされているコンピュータのホスト名。DB2/400の場合は、サーバ名は19文字を越えることができません。

ユーザ

データベースを使用することを承認されているユーザID。ユーザ名にはカンマを含めないでください。データベースのフィルタも参照してください。

ーザフィールドに入力された名前がデータベースサーバ側に存在することを確認してください。

DB2/400 データベースの場合:

  • データベースがインストールされているIBM i マシンで[設定]ダイアログボックスの[リソース]セクションのユーザのユーザプロファイルのコード文字セットIDオプションに数値65535 が使用されていないことを確認してください。

  • 異なるユーザーログインと同じサーバへの複数セッションはサポートされていません。Magic xpiは、見つかったサーバに最初のセッションを持って行きます。

パスワード

ユーザーのパスワード。パスワードにはカンマやパーセント記号(%)を含めないでください。

開始オーナー

このデータベースエントリーを使用するときにフィルタリングで使用するオーナー名。[オーナ]をクリックし、オーナ一覧から選択します。

空白の場合、オーナは最初のオーナが設定されます。Since version: 4.5

参照: データベースのフィルタ

データベースリソースは以下の追加ボタンも提供しています。

ボタン

説明

検証

このボタンはデータベースへの接続が有効かどうかを確認します。データベースへの接続状況がメッセージ表示されます。DB2 for IBM iデータベースを選択した場合、このボタンをクリックしライブラリへの接続性が確認できます。テーブル選択フォームには(オーナー名ではなく)ライブラリ名でプレフィックスされた指定ライブラリのテーブルが表示されます。テーブルを選択すると、オーナの詳細が画面の下部に表示されます。[データベースウィザード]カラムの選択フォーム内の[有効カラム]一覧には、ライブラリ/スキーマで選択したテーブルのカラムを表示します。

テーブル

このボタンは[データベース用フィルタ]ウィンドウを開きます。このウィンドウはこのデータベース接続でどのテーブルが使用されているかを選択することができます。

オーナー

このボタンはオーナ一覧を開きます。ここでは、このデータベースエントリーに必要な開始オーナを選択します。

DB2 for IBM iデータベースを選択した場合、このボタンは無効です。

ライブラリ

このボタンはDB2 for IBM iデータベースを選択した場合のみ有効です。使用する複数のライブラリを選択することができます。

オンライン/オフライン

データマッパーが、データマッパーのドキュメントが開いている時は常に設定されたデータベースと接続しようとするかどうかを定義します。このボタンをクリックしてオンラインとオフライン(デフォルト)モードを切り替えてください。

ボタンがオフラインに設定されると、キャッシュがロードされます。ボタンがオンラインに設定されると、Magic xpiは、現在のテーブルの構造を取得するためにデータベースと接続しようとします。

DBスキーマがオフラインリソースに属していても、以下の場合は接続はデータベースに強制されます。

  • スキーマノード上の[リフレッシュ]オプションを選択する

  • プロパティシート内のSQL文を変更する

  • スキーマリソースを変更する

  • DBウィザードを開く

接続が失敗すると、最後にキャッシュされたデータが使用されます。

ツールバーの上の[リフレッシュデータベーススキーマ]アイコンをクリックするか、[編集]メニューをクリックし[リフレッシュデータベーススキーマ]を選択することで、複数のデータベーススキーマをリフレッシュすることができます。この機能は、データマッパドキュメントがスタジオのフォーカスにある時と、オンラインリソースに属している少なくとも1つのデータベーススキーマがある時だけ有効です。

Since version: 4.5

 

以下のフィールドで環境変数を使用することができます。

  • データベース名;接続文字列;データソース名;データベースエイリアス

  • サーバ名

  • ユーザ

  • パスワード

環境変数は、動的に項目を定義する実際のデータベースに対するエイリアスです。環境変数はパーセント記号(%)で囲む必要があります。また、[環境変数]リポジトリで環境変数を定義する必要があります。環境変数についての詳細は、環境変数を使用するを参照してください。

同じ値に変換される環境変数によって定義された2つ以上のライブラリがある場合、"Incomplete libraries/schema definition"エラーが発生します。

2つのライブラリが同じ値(実ライブラリ名)で定義された場合、(重複した)名前を入力したり、重複名を選択するとライブラリダイアログから抜け出せなくなります。

UPSERT機能を持つデータベースリソースの使用

UPSERT操作は、ネイティブデータベースドライバといくつかのODBCドライバによってサポートされています。

ネイティブドライバを使用してサポートされているデータベースは以下の通りです。

ODBC ドライバでサポートされているデータベースは以下の通りです。

データベース リソースが、UPSERT 機能をサポートする Data Mapper のデスティネーション タブの一部として使用されている場合、プロパティに変更があった場合は、その都度、データベース リソースを検証して保存します。

移行またはアップグレードされたプロジェクトでは、UPSERT 機能の一部として使用する前に、すべてのデータベース リソースを明示的に検証して保存する必要があります。