データベース操作
Version 22.0.8483
データベース操作
データベースオペレーションでは、データベースに接続し、データベースに対してクエリを実行できます。これらのオペレーションは、ジョブ実行後の変換の適用、ロギングシステムの作成など、多くのことに使用できます。
以下の例は、Post Job イベントでdbNonQuery オペレーションを使用して、ジョブの結果を記録する新しい行を挿入します。
<api:info title="After Run" desc="このイベントはジョブを実行した後に発生します。">
<input name="JobName" required="true" desc="実行されたジョブの名前。" />
<input name="Source" required="true" desc="ソース接続の名前。" />
<input name="Destination" required="true" desc="同期先接続の名前。" />
<input name="JobStatus" required="true" desc="完了した実行のステータス。"/>
<input name="Query#" required="true" desc="実行された各クエリを含む配列。" />
<input name="QueryStatus#" required="true" desc="実行された各クエリのステータスを含む配列。" />
</api:info>
<api:set attr="db.driver" value="System.Data.SqlClient"/>
<api:set attr="db.conn" value="Data Source=sqlserver;Initial Catalog=Test;User ID=user;Password=pass;"/>
<api:set attr="db.query">
INSERT INTO MyLog (JobName, RunDate, Results) VALUES ('[_input.JobName]', '[null | now()]', '[_input.JobStatus]')
<api:set/>
<api:call op="dbNonQuery" in="db"/>
オペレーション
dbListTables
データベースのテーブルをリストします。
インプット属性(必須) |
説明 |
driver |
Java 版ではJDBC ドラーバーのクラス名、.NET 版ではADO.NET プロバイダー名。 |
conn |
接続文字列またはデータベースURL。 |
インプット属性(オプション) |
説明 |
includesystemtables |
システムテーブルを含めるかどうか。True またはFalse が使用可能です。デフォルト値は’False’ です。 |
schema |
テーブルが属するスキーマ。 |
アウトプット属性 |
説明 |
db:name |
テーブル名。 |
db:type |
テーブルの型。 |
db:schema |
テーブルが属するスキーマ。 |
db:catalog |
テーブルが属するカタログ。 |
dbListColumns
テーブルまたはビューのカラムをリストします。
インプット属性(必須) |
説明 |
driver |
Java 版ではJDBC ドラーバーのクラス名、.NET 版ではADO.NET プロバイダー名。 |
conn |
接続文字列またはデータベースURL。 |
table |
カラムをリストするテーブル(またはビュー)。 |
インプット属性(オプション) |
説明 |
schema |
テーブルが属するスキーマ。 |
アウトプット属性 |
説明 |
db:columnname |
カラム名。 |
db:datatype |
カラムのデータ型。 |
dbQuery
データベースに対してクエリを実行します。
インプット属性(必須) |
説明 |
driver |
Java 版ではJDBC ドラーバーのクラス名、.NET 版ではADO.NET プロバイダー名。 |
conn |
接続文字列またはデータベースURL。 |
query |
実行するSQL クエリ文字列。 |
インプット属性(オプション) |
説明 |
commandtimeout |
オペレーションが完了するまでのCommandTimeout(秒)。ゼロ(0)はタイムアウトなしを意味します。この属性のデフォルトは60です。 |
paramname# |
SQL ステートメント内のパラメータ名。 |
paramValue# |
SQL ステートメント内のパラメータ値。 |
アウトプット属性 |
説明 |
db:* |
クエリによりアウトプットは異なります。 |
dbNonQuery
データベースに対してノンクエリを実行します。
インプット属性(必須) |
説明 |
driver |
Java 版ではJDBC ドラーバーのクラス名、.NET 版ではADO.NET プロバイダー名。 |
conn |
接続文字列またはデータベースURL。 |
query |
実行するSQL クエリ文字列。 |
インプット属性(オプション) |
説明 |
commandtimeout |
オペレーションが完了するまでのCommandTimeout(秒)。ゼロ(0)はタイムアウトなしを意味します。この属性のデフォルトは60です。 |
paramname# |
SQL ステートメント内のパラメータ名。 |
paramValue# |
SQL ステートメント内のパラメータ値。 |
アウトプット属性 |
説明 |
db:* |
クエリによりアウトプットは異なります。 |
dbCall
データベースでストアドプロシージャを実行します。
インプット属性(必須) |
説明 |
driver |
Java 版ではJDBC ドラーバーのクラス名、.NET 版ではADO.NET プロバイダー名。 |
conn |
接続文字列またはデータベースURL。 |
Sp |
ストアドプロシージャの名前。 |
インプット属性(オプション) |
説明 |
commandtimeout |
オペレーションが完了するまでのCommandTimeout(秒)。ゼロ(0)はタイムアウトなしを意味します。この属性のデフォルトは60です。 |
dynamic |
ストアドプロシージャの種類。動的ストアドプロシージャの場合はtrue。デフォルト値は’false’ です。 |
inparam:* |
Null ではない値のストアドプロシージャのインプットパラメータ。 |
outparams |
カンマ区切りのストアドプロシージャのアウトプットパラメータ。 |
paramtype:* |
指定されたデータカラムのデータ型。 |
paramsize:* |
指定されたデータカラムのカラムサイズ。 |
アウトプット属性 |
説明 |
db:* |
ストアドプロシージャによってアウトプットは変わります。 |
dbBeginTransaction
データベースでトランザクションを開始します。
インプット属性(必須) |
説明 |
driver |
Java 版ではJDBC ドラーバーのクラス名、.NET 版ではADO.NET プロバイダー名。 |
conn |
接続文字列またはデータベースURL。 |
インプット属性(オプション) |
説明 |
transactiontimeout |
トランザクションのタイムアウト(秒)。ゼロ(0)はタイムアウトなしを意味します。デフォルト値は60です。 |
transactionid |
トランザクションのID。 |
dbEndTransaction
コミットまたはロールバックによってトランザクションを終了します。
インプット属性(必須) |
説明 |
driver |
Java 版ではJDBC ドラーバーのクラス名、.NET 版ではADO.NET プロバイダー名。 |
conn |
接続文字列またはデータベースURL。 |
transactionaction |
トランザクションのアクション。commit またはrollback が使用可能です。 |
インプット属性(オプション) |
説明 |
transactionid |
トランザクションのID。 |