Home > リファレンスガイド > 設定 > サービス > DBトリガーサービス
トリガーサービスは、データベーストリガーを使用してデータベース内のCRUD操作をキャプチャするメカニズムを提供します。ユーザーは、選択したデータベースの複数のテーブルの作成、更新、削除イベントをキャプチャし、これらのイベントに基づいてフローをトリガーできます。
このため、ユーザーはデータベース接続の詳細を提供し、作成、更新、および削除イベントをキャプチャする必要があるテーブルを追加する必要があります。 イベントの下に複数のテーブルをグループ化できます。 これらのイベントは、フローに定義されたトリガーによって使用されます。
DB Triggerサービスには、次のパラメーターが含まれています。 太字のパラメーターは必須です。
パラメータ |
説明 |
||
JDBC URL |
データベースに接続するためのJDBC URLを入力します。 JDBC URLは、環境変数を使用して選択することもできます。 JDBC URLには、データベースサーバーのJDBC URLが含まれている必要があります。オプションで、データベース名、ユーザー名、パスワードを必要な形式で含めることができます。
サポートされているフォーマットと用例については、サポートされているJDBC URL フォーマットを参考にしてください。 |
||
データベース名 |
データベース名を入力します。 データベース名がJDBC URLの一部として定義されている場合、このフィールドは空白のままにすることができます。 ここに入力したデータベース名は、JDBC URLで指定したデータベース名よりも優先されます。 |
||
ユーザ名 |
データベースに接続するためのユーザー名を入力します。 ユーザー名がJDBC URLの一部として定義されている場合、このフィールドは空白のままにすることができます。 ここに入力したユーザー名は、JDBC URLで指定したユーザー名よりも優先されます。 |
||
パスワード |
データベースで認証するためのパスワードを入力します。 ユーザー名がJDBC URLの一部として定義されている場合、このフィールドは空白のままにすることができます。 ここで入力したパスワードは、JDBC URLで指定したパスワードよりも優先されます。 |
||
クリーンアップ期間(日数) |
クリーンアップ期間の値を日数で入力します。この値は、処理されてクリーンアップ経過時間を過ぎたイベントをクリーンアップするために使用されます。 デフォルトでは、クリーンアップは午前0時に行われます。 または、ユーザーはクリーンアップ時間の明示的な値を1〜24の範囲で設定できます。 デフォルト値を変更するには、Magic.iniファイルのJVM_ARGにdbtrigger.clean.atプロパティを追加します。 クリーンアップ期間の値が空の場合、デフォルトでは実行時に1日に設定されます。 |
DB Triggerサービスには、次のボタンもあります。:
名前 |
説明 |
検証 |
検証ボタンは、最初にデータベースパラメータに基づいてデータベースへの接続を試みます。接続が成功すると、トリガーアクションテーブルがデータベースに存在するかどうかがチェックされます。 トリガーテーブルがデータベースに存在しない場合は、テーブルが作成されます。 データベース接続が成功し、トリガーテーブルが作成されると、成功メッセージが表示されます。 |
イベント |
このボタンをクリックして、[トリガーイベント]ダイアログを開きます。 データベース定義が検証されない場合は、イベントが最初に検証されます。 |
DBトリガーサービスは、それぞれのJDBCドライバーを使用してさまざまなデータベースに接続します。 Magic xpiのインストールには、サポートされているすべてのJDBCドライバーが含まれているわけではありません。 必要に応じて、ユーザーが手動で準備する必要があります。 JDBCトリガーのjarファイルは、DBトリガーサービスを作成する前に、<Magic xpi インストールフォルダ>\Runtime\Java\DatabaseDriversに配置する必要があります。 |
トリガーアクションテーブル
トリガーイベントダイアログで、ユーザーは、作成、更新、削除イベントなどの、キャプチャする必要があるテーブルを追加します。すべてのイベントが追加されると、データベースにトリガーを作成するためのテンプレートスクリプトが生成されます。 このスクリプトはトリガーアクションテーブルを使用して、キャプチャされたCRUDイベントを格納します。このテーブルは、DBトリガーによって実行時にポーリングされます。処理される行には、クリーンアップのマークが付けられます。 これらのレコードは、定義されたクリーンアップ期間を過ぎるとテーブルから削除されます。
テーブル内のレコードは、以下の規則に基づいて処理されます:
新しいイベントは、トリガーステータス列の値を0に設定してトリガーアクションテーブルに挿入されます。値が0のすべてのレコードは、実行時にDBトリガーによって処理されます。
レコードが処理されると、トリガーステータス値は1に変更されます。トリガーステータスが1のテーブル内のすべての行がクリーンアップの対象になります。
レコードの処理が失敗した場合、トリガーステータス値は2に設定されます。失敗した行に対してのアクションは、ユーザーが実行する必要があります。 これらのレコードを再処理するには、ユーザーはエラーを修正してから、トリガーステータス値を0に設定する必要があります。
|
サポートされるデータベース
DBトリガーサービスは、下記のデータベースをサポートします。:
MS-SQL
Oracle
MySQL
DB2
DB2/400
PostgreSQL
以下は、Magicxpi用に認定されたサポートされているデータベースドライバーのリストです。これは完全なリストではなく、他の互換性のあるドライバーも機能する可能性があります。
データベース |
ドライバ名 JARファイル |
MSSQL |
sqljdbc4-4.0.jar |
MySQL |
mysql-connector-java-5.1.41.jar |
Oracle |
ojdbc7.jar |
PostgreSQL |
postgresql-42.2.6.jre7.jar |
DB2/400 |
Jt400.jar |
DB2 |
db2jcc4.jar db2jcc.jar db2jcc_license_cu.jar |
(Since version: 4.13)
関連トピック