SQL ServerのカスタムSQLを実行アクション
カスタムSQLを実行
このアクションでは、実行するSQL文字列をSQL Serverインスタンスに送信できます。 これは、INSERT、UPDATE、SELECT、DELETEなどのData Manipulation Language(DML)ステートメント、およびCREATE、ALTER、DROPなどのData Definition Language(DDL)コマンドの実行に使用できます。
1 MBのクエリサイズ制限
1 December 2025以降、このコネクターのRun custom SQLアクションでは、1 MBのクエリサイズ制限が適用されます。 この変更により、プラットフォームの信頼性が向上し、パフォーマンスが向上し、データベースコネクションを過負荷にしたり、アップストリームシステムに影響を与えたりする大規模なクエリを回避できます。
カスタムSQLを使用して行を選択とは異なり、このアクションは簡単に設定できるようには最適化されていません。 列が多いSELECTステートメントの場合は、代わりにそのアクションを使用してください。 カスタムSQLを使用すると、レシピの効率を向上させ、Workatoとデータベース間の負荷のバランスを取ることができます。 カスタムSQLを使用してレシピの効率を高める方法については、ベストプラクティスのセクションを参照してください。
OPAが必要
このアクションには、Workatoオンプレミスエージェントを使用したコネクションが必要です。 詳細については、オンプレミス接続を参照してください。
タイムアウトエラーの発生
大規模なデータセットの一括ロード、データベース内のテーブル作成、および更新には、長い時間がかかる場合があります。 これにより、タイムアウトでジョブが失敗する可能性があります。
カスタムSQLを非同期で実行して、タイムアウトエラーを防止します。 詳細については、カスタムSQLを非同期で実行を参照してください。
カスタムSQLを実行アクション
入力
| 入力フィールド | 説明 |
|---|---|
| SQL | 必須。 SQL Serverインスタンスで実行する有効なSQL文字列を入力します。 Workatoは複数のSQLステートメントを実行できますが、最後のステートメントの結果のみを返します。 各ステートメントを ;で区切ります。データピルをマッピングして動的SQLを実行できます。 データピルを一重引用符( '')で囲みます。クエリサイズは1 MBに制限されています。 |
| 出力フィールド | SQLステートメントによって返される列を定義します。 出力スキーマを手動で設定するか、Use SQLをクリックしてサンプルクエリから生成できます。 Use SQLオプションでは、 SELECTステートメントで始まるクエリのみがサポートされています。 WITHで始まるクエリはサポートされておらず、構文エラーが発生します。 戻り値を想定していない場合は、このフィールドを空白のままにします。 |
出力
| 出力フィールド | 説明 |
|---|---|
| 行 | SQL実行から返される行のリスト。 構造は出力フィールド入力によって定義されます。 出力フィールド入力が空白の場合、このフィールドはデータツリーに配列データピルとして表示されます。 |
| 影響を受けた行数 | 挿入、更新、または削除された行数。 SELECTステートメントの場合はnilを返します。 CREATE TABLEなどのDDLステートメントの場合は0を返します。 |
サイズ制限
カスタムSQLステートメントがデータを返す場合、サイズ上限は50,000行です。
カスタムSQLを非同期で実行
このアクションでは、実行するSQL文字列をSQL Serverインスタンスに送信できます。 これは、INSERT、UPDATE、SELECT、DELETEなどのData Manipulation Language(DML)ステートメント、およびCREATE、ALTER、DROPなどのData Definition Language(DDL)コマンドの実行に使用できます。
カスタムSQLクエリの処理が開始された後、Workatoはクエリ結果を取得できる状態かどうかを定期的に確認します。 結果が正常に取得されると、Workatoはレシピの次のステップに進みます。
非同期で実行する理由
大規模なデータセットをアップロード(INSERT)または更新(UPDATE)している場合、アクションの応答に時間がかかることがあります。 タイムアウト制限を超えると、タイムアウトエラーによりレシピが失敗します。
SQLクエリを非同期で実行すると、タイムアウトを気にせずに大規模なデータセットに対してクエリを実行できます。 アクションの処理に数時間かかる場合でも、ジョブはタイムアウトしません。
アクションにはオンプレミスエージェントが必要
このアクションには、Workatoオンプレミスエージェントを使用したコネクションが必要です。 詳細については、オンプレミス接続ガイドを参照してください。
カスタムSQLを実行(非同期)アクション
出力
| 入力フィールド | 説明 |
|---|---|
| 行 | SQL実行から返される行のリスト。 このリスト内のフィールドは、出力フィールド入力フィールドによって定義されます。 空白のままにすると、この行はデータツリーで配列データピルとして使用できます。 |
| 影響を受けた行数 | これは、SQL文字列によって挿入/更新/削除された行数を示す整数値です。
DDLを実行すると(例:テーブルの作成)、値 |
サイズ制限
カスタムSQLステートメントがデータを返す場合、サイズ上限は50,000行です。
Last updated: