# PostgreSQL - カスタム SQL アクションを使用して長いクエリを実行
このアクションを使用すると、設定されたタイムアウト内でカスタム SQL クエリを非同期で実行することができます。INSERT
、UPDATE
、DELETE
のようなデータ操作言語(DML)ステートメントや、CREATE
、ALTER
、DROP
のようなデータ定義言語(DDL)コマンドを実行するために使用できます。
カスタム SQL クエリの処理が開始されると、Workato は定期的にクエリ結果が取得可能かどうかを確認します。結果が正常に取得されると、Workato はレシピの次のステップに進みます。
# 長いクエリを使用する理由
大量のデータセットをアップロード(INSERT
)または更新(UPDATE
)している場合、アクションの応答に長い時間がかかることがあります。タイムアウトの制限を超えると、タイムアウトエラーによりレシピが失敗する原因となります。
SQL クエリを非同期で実行すると、大規模なデータセットに対してクエリを実行することができます。アクションが実行できる最大時間は 60 分です。この上限を超えると、ジョブはタイムアウトします。
カスタム SQL アクションで長いクエリを実行
# 入力フィールド
入力フィールド | 説明 |
---|---|
SQL | このフィールドは必須です。実行する有効な SQL 文字列を入力してください。この SQL 文字列はあなたの PostgreSQL インスタンスで実行されます。 複数の SQL ステートメントが提供された場合、それらはすべて実行されます。ただし、最後のステートメントからの結果のみが返されます。各ステートメントは ここでデータピルをマッピングして、動的に変化する SQL ステートメントを実行することができます。データピルをシングルクォーテーション ( |
パラメータ | このフィールドは SQL ステートメントと共に使用されます。まず、WHERE 句の入力で名前付きバインド変数を宣言します。次に、この入力フィールドを使用してこれらの変数に値を割り当てます。パラメータ値は静的なものまたはデータピルであることができます。データベースがバインド変数に期待する最も近い対応するデータ型を選択してください。 |
タイムアウト制限(分) | この待機アクションの上限を設定します。このアクションが指定されたタイムアウトより長くかかると、ジョブはエラーを返します。最大タイムアウトは 60 分です。 |
出力フィールド | SQL ステートメントから期待する列を説明するためにこの入力を使用します。戻り値が期待されない場合、または必要ない場合は、この入力フィールドを無視しても構いません。 |
# 出力フィールド
出力フィールド | 説明 |
---|---|
行 | SQL 実行から返された行のリスト。このリストのフィールドは、出力フィールドの入力フィールドで定義されます。 空白のままにすると、この行はデータツリーで配列のデータピルとして利用可能になります。 |
影響を受けた行数 |
データ操作言語(DML)ステートメントの実行によって影響または変更された行数を指します。
DDL(CREATE)の実行時には、値 |
行数 | 返された行数を指します。 |
Last updated: 2025/3/13 6:42:56