ホームページ  >  記事  >  データベース  >  Oracleストアドプロシージャの実行方法

Oracleストアドプロシージャの実行方法

WBOY
WBOYオリジナル
2022-01-25 14:24:1427969ブラウズ

Oracle では、「begin end」ステートメントを使用して、ストアド プロシージャ名を指定し、パラメータを指定してストアド プロシージャを実行できます。構文は、「create or replace プロシージャ ストアド プロシージャ名 begin username プロシージャ名 (パラメータ); 終わり;"。

Oracleストアドプロシージャの実行方法

このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。

Oracle ストアド プロシージャの実行方法

例: インデックスを作成するには、次のストアド プロシージャがあります。

--procedure create_index
create or replace procedure create_index(indexName in varchar2, tableName in varchar2, columnName in varchar2)
i
tmp_name VARCHAR2(50);
TMP_SQL VARCHAR2(1024);
cnt NUMBER;
begin
select table_name into tmp_name from user_tables where upper(table_name)=upper(tableName);
if length(tmp_name)>0 then
SELECT COUNT(*) INTO cnt FROM USER_INDEXES T WHERE T.TABLE_NAME=''|| tableName ||'' AND T.INDEX_NAME=''|| indexName;
IF cnt = 0 THEN
execute immediate 'create index ' || indexName ||' on ' || tableName ||'('|| columnName ||') TABLESPACE TBS_TXNIDX';
END IF;
end if;
EXCEPTION
WHEN NO_DATA_FOUND THEN
BEGIN
NULL;
END;
end;

1) コマンド ウィンドウで: exec ストアド プロシージャ (パラメータ. ..);

exec create_index('IDX_ORG_SET_PROCESS_1','CPS_ORG_SETTLEMENT_PROCESS','ORG_IDENTITY_ID ASC');

2) SQL ウィンドウの下:

begin
create_index('IDX_STATEMENT_DETAIL_LINK','CPS_BANK_STATEMENT_DETAIL','LINK_TXN_ID ASC');
end;

推奨チュートリアル: 「Oracle ビデオ チュートリアル

以上がOracleストアドプロシージャの実行方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。