DEFINE TABLE DB コマンド
AX コネクターを使用してデータベース テーブルに接続し、Analytics サーバー テーブルを定義します。Microsoft SQL Server、Oracle、DB2 データベースに接続することができます。
構文
DEFINE TABLE DB {SOURCE データベース プロファイル <PASSWORD 数値> <PASSWORD 数値> | SERVER サーバー プロファイル <PASSWORD 数値>} <FORMAT 書式名> SCHEMA スキーマ <TITLED ACL テーブル名> <PRIMARY|SECONDARY> DBTABLE DB テーブル名 FIELDS {フィールド名|ALL} <...n> <WHERE 条件> <ORDER フィールド名>
パラメーター
SOURCE データベースプロファイル |
データベース エンジンにアクセスするために使用する Analytics データベース プロファイル。 データベース プロファイルには、次のように、データベース エンジンに接続するために必要な情報があります。
メモ DEFINE TABLE DB では、Microsoft SQL Server、Oracle、DB2 データベースにのみ接続できます。 |
PASSWORD 番号 省略可能 |
使用するパスワード定義。 実際のパスワードを入力することを求めたり指定したりするのには、PASSWORD 番号の構文は使用しません。パスワード定義とは、以前に PASSWORD コマンドか SET PASSWORD コマンドを使用して入力または設定されたパスワードのことです。 番号はパスワード定義の番号です。たとえば、以前に 2 つのパスワードをスクリプトで設定したり入力したりしている場合には、PASSWORD 2 により、2 番目のパスワードを使用することを指定するなどします。 パスワードの入力または設定の詳細については、次を参照してください。 このパスワードは、データベース プロファイルにパスワードを指定して保存していない場合にのみ指定する必要があります。SOURCE キーワードの後に PASSWORD を 2 回使用します。1 番目のパスワードでサーバーにログオンし、2 番目のパスワードでデータベースにログオンします。 |
SERVER サーバープロファイル |
使用されなくなりました。 バージョン 10.0 より前の Analytics では、ACL Server Edition for z/OS へ接続するときに使用されていました。バージョン 10.0 以降の Analytics には、ACL Server Edition for z/OS が同梱されなくなりました。 |
FORMAT フォーマット名 省略可能 |
使用したいテーブル レイアウトを持つ、Analytics テーブルまたはテーブル レイアウト ファイル(.layout)の名前。 |
SCHEMA スキーマ |
接続するスキーマ。スキーマ名は引用符で囲む必要があります。 |
TITLED ACLテーブル名 省略可能 |
作成する Analytics テーブルの名前。 ACLテーブル名は引用符で囲んだ文字列として指定する必要があります。TITLED を省略すると、データベースのテーブル名が使用されます。一度に複数のテーブルにアクセスした場合は、最初のテーブル名が使用されます。 |
PRIMARY | SECONDARY 省略可能 |
複数ファイル コマンド内でテーブルを主テーブルと副テーブルのどちらとして使用します。どちらのオプションも指定されない場合、デフォルト値の PRIMARY が使用されます。 |
DBTABLE データベーステーブル名 |
アクセスするデータベース テーブル。データベーステーブル名は引用符で囲んだ文字列として指定する必要があります。 |
FIELDS フィールド名 | ALL |
出力に含めるフィールド:
複数のテーブルからフィールドを使用するには:
メモ AX Connector を使用すると、無制限の関連したテーブルにアクセスすることができますが、5 つ以下のアクセスを推奨します。複数のテーブルにアクセスすると処理時間が増えます。 |
WHERE 条件 省略可能 |
対象となるデータを、指定した条件を満たすレコードに限定する SQL WHERE 節。 引用符で囲まれた文字列として入力された有効な SQL 構文を使用する必要があります。 複数のテーブルを結合しようとすると、WHERE 句に結合条件が表示されます。 "Table_1.First_name = Table_2.First_name" |
ORDER 複数のフィールド名 省略可能 |
データベース エンジンがレコードの並べ替えに使用するフィールド。フィールド名は引用符で囲んだ文字列として指定する必要があります。 レコードを並べ替えるときにはコマンドの実行に時間がかかります。並べ替えが重要であるときにのみ ORDER を使用します。 |
例
例
Microsoft SQL Server データベース内のデータに AX Connector 経由でアクセスしたいとします。それには、DEFINE TABLE DB コマンドを使用します。データベース プロファイルを使用して AX Connector に接続する SOURCE パラメーターも指定します。
DEFINE TABLE DB SOURCE "SQLServer_Audit" SCHEMA "HR" TITLED "Payroll" DBTABLE "HR.Employee" FIELDS "EmployeeID" DBTABLE "HR.EmployeePayHistory" FIELDS "Rate PayFrequency" WHERE "HR.Employee.EmployeeID=HR.EmployeePayHistory.EmployeeID"
備考
機能の仕組み
Analytics サーバー テーブルは、データベース プロファイルを使用してデータベース テーブルに接続するためのクエリとして定義されます。
日付時刻値の時刻部分を非表示にする
日付時刻値の時刻部分を非表示にするには、DEFINE TABLE DB コマンドの前に SET SUPPRESSTIME コマンドを置きます。
SET SUPPRESSTIME ON は、バージョン 10.0 より前の Analytics スクリプトで使用することを目的としています。それらのスクリプトでは、日付時刻値の時刻部分は切り捨てられることが前提となっています。それらのスクリプトは、SET SUPPRESSTIME ON を追加しない場合には、日付時刻型対応バージョンの Analytics では動作することができません。
詳細については、SET コマンドの「SET SUPPRESSTIME」セクションを参照してください。