15.13 EXECUTE_REMOTE_PLSQLプロシージャ
このプロシージャは、REST対応SQLインスタンスでPL/SQLコードを実行します。
構文
procedure execute_remote_plsql(
p_server_static_id in varchar2,
p_plsql_code in varchar2,
p_auto_bind_items in boolean default true,
p_sql_parameters in out t_parameters );
パラメータ
表15-11 EXECUTE_REMOTE_PLSQLプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
ORDS REST対応SQLインスタンスの静的IDです。 |
|
実行されるPL/SQLコード。 |
|
IN方向とOUT方向のページ・アイテム値を自動的にバインドするかどうか。ページ・アイテムではないバインド変数をPL/SQLコードが参照する場合には、これをFALSEに設定する必要があります。デフォルト: TRUE |
|
追加のバインド変数(必要な場合)。 |
例
例1
リモート・データベースに対してPL/SQLブロックを実行します。
begin
apex_exec.execute_remote_plsql(
p_server_static_id => '{Static ID of the REST Enabled SQL Service}',
p_plsql_code => q'#begin :P10_NEW_SAL := salary_pkg.raise_sal( p_empno => :P10_EMPNO ); end;#' );
end;
例2
任意のバインド変数を操作するため、任意のバインドを使用して、REST対応SQLサービスに値を渡し、値を戻すことができます。
declare
l_sql_parameters apex_exec.t_parameters;
l_out_value varchar2(32767);
begin
apex_exec.add_parameter( l_sql_parameters, 'MY_BIND_IN_VAR', '{some value}' );
apex_exec.add_parameter( l_sql_parameters, 'MY_BIND_OUT_VAR', '' );
apex_exec.execute_remote_plsql(
p_server_static_id => '{Static ID of the REST Enabled SQL Service}',
p_plsql_code => q'#begin :MY_BIND_OUT_VAR := some_remote_plsql( p_parameter => :MY_BIND_IN_VAR ); end;#',
p_auto_bind_items => false,
p_sql_parameters => l_sql_parameters );
l_out_value := apex_exec.get_parameter_varchar2(
p_parameters => l_sql_parameters,
p_name => 'MY_BIND_OUT_VAR');
-- further processing of l_out_value
end;
親トピック: APEX_EXEC