18 APEX_EXEC
APEX_EXEC
パッケージは、データ処理とデータ問合せの機能をカプセル化し、データ・ソースからApplication Expressのコンポーネントおよびプラグインに抽象化を提供します。APEX_EXEC
には、ローカルおよびリモートのデータ・ソースおよびRESTデータ・ソースで問合せまたは手続き型コールを実行するプロシージャとファンクションが含まれています。これは、アプリケーション内またはパッケージおよびプロシージャ内でのプラグイン開発および手続き型PL/SQL処理に使用できます。
すべてのAPEX_EXEC
プロシージャが機能するには、既存のApplication Expressセッションが必要です。Pure SQLまたはPL/SQLコンテキストでは、APEX_SESSION
パッケージを使用して、新しいセッションを初期化します。
一般的なコール・シーケンスは、使用されるデータ・ソースによって異なります。
-
REST対応のSQLデータ・ソース
-
[オプション]でバインド変数を準備します
-
APEX_EXEC.T_PARAMETERS
型の変数を作成します -
APEX_EXEC.ADD_PARAMETER
とのバインド値を追加します
-
-
リモート問合せコールを実行します
-
APEX_EXEC.OPEN_REMOTE_SQL_QUERY
をコールします
-
-
結果列名の列索引を取得します
-
APEX_EXEC.OPEN_WEB_SOURCE_QUERY
をコールします
-
-
結果セットが使い果たされるまでループします
-
APEX_EXEC.NEXT_ROW
をコールします
-
-
位置により各列の列値を取得します
-
APEX_EXEC.GET_VARCHAR2
、APEX_EXEC.GET_NUMBER
、APEX_EXEC.GET_DATE
、...をコールします
-
-
最後に必ず問合せコンテキストを閉じます - 重要
-
APEX_EXEC.CLOSE
をコールします
-
-
-
RESTデータソース
-
[オプション]でRESTデータ・ソース・パラメータ変数を準備します
-
APEX_EXEC.T_PARAMETERS
型の変数を作成します -
APEX_EXEC.ADD_PARAMETER
とのバインド値を追加します
-
-
RESTデータ・ソースに渡されるフィルタを準備します(データ・ソースでサポートされている場合)
-
APEX_EXEC.T_FILTERS
型の変数を作成します -
APEX_EXEC.ADD_FILTER
とのバインド値を追加します
-
-
RESTデータ・ソースに渡されるORDER BY式を準備します(データ・ソースでサポートされている場合)
-
APEX_EXEC.T_ORDER_BYS
型の変数を作成します -
APEX_EXEC.ADD_ORDER_BY
とのバインド値を追加します
-
-
リモート問合せコールを実行します
-
APEX_EXEC.OPEN_WEB_SOURCE_QUERY
をコールします -
事前に準備したフィルタ、ORDER BYおよびパラメータを渡します
-
-
結果列名の列索引を取得します
-
APEX_EXEC.GET_COLUMN_POSITION
をコールします
-
-
結果セットが使い果たされるまでループします
-
APEX_EXEC.NEXT_ROW
をコールします
-
-
位置により各列の列値を取得します
-
APEX_EXEC.GET_VARCHAR2
、APEX_EXEC.GET_NUMBER
、APEX_EXEC.GET_DATE
、...をコールします
-
-
最後に必ず問合せコンテキストを閉じます - 重要
-
APEX_EXEC.CLOSE
をコールします
-
-
ノート:
常にプロシージャまたはファンクションに例外ハンドラを追加し、データベース・カーソルや一時LOBなどのサーバー・リソースを解放するためにAPEX_EXEC.CLOSE
が常にコールされるようにしてください。
- グローバル定数
- データ型
- ADD_COLUMNプロシージャ
- ADD_DML_ROWプロシージャ
- ADD_FILTERプロシージャ
- ADD_ORDER_BYプロシージャ
- ADD_PARAMETERプロシージャ
- CLEAR_DML_ROWSプロシージャ
- CLOSEプロシージャ
- COPY_DATAプロシージャ
- EXECUTE_DMLプロシージャ
- EXECUTE_PLSQLプロシージャ
- EXECUTE_REMOTE_PLSQLプロシージャ
- EXECUTE_REST_SOURCEプロシージャ
- EXECUTE_WEB_SOURCEプロシージャ(非推奨)
- GETファンクション
- GET_COLUMNファンクション
- GET_COLUMN_COUNTファンクション
- GET_COLUMN_POSITIONファンクション
- GET_DATA_TYPEファンクション
- GETファンクション
- GET_DML_STATUS_CODEファンクション
- GET_DML_STATUS_MESSAGEファンクション
- GET_PARAMETERファンクション
- GET_ROW_VERSION_CHECKSUMファンクション
- GET_TOTAL_ROW_COUNTファンクション
- HAS_ERRORファンクション
- HAS_MORE_ROWSファンクション
- IS_REMOTE_SQL_AUTH_VALIDファンクション
- NEXT_ROWファンクション
- OPEN_LOCAL_DML_CONTEXTファンクション
- OPEN_REMOTE_DML_CONTEXTファンクション
- OPEN_REMOTE_SQL_QUERYファンクション
- OPEN_QUERY_CONTEXTプロシージャ
- OPEN_QUERY_CONTEXTファンクション
- OPEN_REST_SOURCE_DML_CONTEXTファンクション
- OPEN_WEB_SOURCE_DML_CONTEXTファンクション(非推奨)
- OPEN_REST_SOURCE_QUERYファンクション
- OPEN_WEB_SOURCE_QUERYファンクション(非推奨)
- PURGE_REST_SOURCE_CACHEプロシージャ
- PURGE_WEB_SOURCE_CACHEプロシージャ(非推奨)
- SET_NULLプロシージャ
- SET_VALUEプロシージャ
- SET_VALUESプロシージャ
- SET_ROW_VERSION_CHECKSUMプロシージャ