アプリケーションプログラミングインターフェイスガイド> Webサービスオペレーション> オペレーションリファレンス> executeSqlScript
 
executeSqlScript
提供されたscriptTextをTDVサーバー内で直接実行します。
「isBlocking」がTRUEに設定されている場合、このオペレーションは、実行に関連付けられた処理が完了し、「outputs」エレメントが設定されるまで戻りません。
FALSEに設定すると、実行に関連付けられた処理が完了するとSQLスクリプトの実行が返されますが、「outputs」エレメントにデータが入力されるのを待つことはありません。
includeMetadataがTRUEの場合、応答には、この呼び出しまたは後のgetProceduralResultの呼び出しのいずれかで結果に提供される出力パラメーターデータの名前とタイプを説明するメタデータエレメントが含まれます。
inputエレメントには、実行への入力となる一連のパラメーターが含まれています。パラメータには次の2つのエレメントが含まれます。
definition:このパラメーター値のSQL言語データタイプ。たとえば、VARCHAR(40)またはBIGINTです。
value:このパラメーターの値。
ユーザーまたはグループが設定されている場合、システムテーブルに対するクエリは、これらのリストのユーザーおよびグループがアクセスできるリソースを返します。それらが設定されていない場合、システムテーブルクエリは現在のユーザーがアクセスできるリソースを返します。これらのパラメータを設定するには、現在のユーザーにREAD_ALL_RESOURCES権限が必要です。
完了したエレメントは、考えられるすべての結果が取得されたかどうかを報告します。
requestStatusエレメントは、実行に関連付けられたサーバー要求のステータスを報告します。リクエストのステータスは、次のいずれかになります。
STARTED:リクエストが開始されました。リクエストは作成されましたが、まだ実行されていません。
WAITING:リクエストはキューでリクエスト処理を待機しています。
実行中:リクエストは現在サーバーによって実行されています。
completed:リクエストに関連付けられた実行が完了しました。結果を取得できるようになりました。
CLOSING:リクエストは終了します。
SUCCESS:リクエストは正常に終了しました。
FAILURE:リクエストは失敗して終了しました。
TERMINATED:リクエストは終了しました。
outputエレメントには、一連のProcValueインスタンスが含まれています。 outタイプがカーソルの場合、サーバー内の結果へのハンドルであるresultIdを取得する必要があります。 getTabularResultおよびcloseResultで使用できます。 outタイプがカーソルでない場合は、実際の出力値を取得する必要があります。
返されたresultIdは、サーバー内の結果へのハンドルを返します。これは、getProceduralResultおよびcloseResultで使用できます。
カーソルである出力パラメーターに対して返される値は、表形式のresultIdです。これは、getTabularResultおよびcloseResultで使用できます。表形式のresultIdを閉じると、そのカーソルのみが閉じます。一方、手続き型resultIdを閉じると、プロシージャと、プロシージャに関連付けられているすべてのカーソルが閉じます。
このオペレーションに関連するすべてのシステムリソースは、呼び出しを含むトランザクションが完了すると閉じられます。これは、resultIdが、この実行オペレーションを呼び出したのと同じトランザクションの外部で使用された場合、無効であることを意味します。したがって、resultIdを使用する場合は、このexecuteオペレーションの呼び出しと、resultIdを使用するすべてのオペレーションを明示的なトランザクションで囲む必要があります。
このオペレーションを呼び出すことができるのは、ACCESS_TOOLS権限を持つユーザーのみです。
ロケーション
/services/webservices/system/admin/execute/operations/
リクエストエレメント
isBlocking(オプション):TRUE(デフォルト)の場合、実行が完了するまで戻らないでください。
includeMetadata(オプション):TRUEの場合、応答には出力パラメーター名とそのタイプに関する情報が含まれます。デフォルトはFALSEです。
入力(オプション):実行入力として使用するパラメーターの定義と値のリスト。
scriptText:実行されるSQL。
users(オプション):システムテーブルクエリの場合、このリストに含まれるユーザーがアクセスできる結果を返します。
groups(オプション):システムテーブルクエリの場合、このリストに含まれるグループがアクセスできる結果を返します。
応答エレメント
completed:TRUEの場合、実行に関連するすべての処理が完了しています。
requestStatus:実行を実行しているサーバーリクエストのステータス。
メタdata(オプション):結果内の列名とタイプをリストするテーブルメタデータ。
列:列エレメントを参照してください。
rowsAffected(オプション):既知の場合、実行によって影響を受ける行の数。それ以外の場合は設定されていません。
出力(オプション):実行からの出力として返されるパラメーター値のセット。
結果:結果ID。
requestId:リクエストID。
エラー解析
IllegalArgument:いずれかのエレメントが不正な形式である場合。
IllegalArgument:inputsエレメントに必要なパラメーターが欠落している場合。
IllegalArgument:予期しないパラメーターがinputsエレメントに指定されている場合
NotAllowed:不十分なライセンスでこのオペレーションを使用しようとした場合。 RuntimeError:実行中にエラーが発生した場合。
RuntimeError:ユーザーがscriptTextによって参照されるリソースに対する適切な権限を持っていない場合。
セキュリティ:ユーザーがACCESS_TOOLS権限を持っていない場合。