首頁 >資料庫 >Oracle >怎麼執行oracle儲存過程

怎麼執行oracle儲存過程

WBOY
WBOY原創
2022-01-25 14:24:1428105瀏覽

在oracle中,可以利用「begin end」語句和指定預存程序名字並給予參數來執行預存程序,語法為「create or replace procedure 預存程序名稱begin 使用者名稱程序名稱(參數); end;」。

怎麼執行oracle儲存過程

本教學操作環境:Windows10系統、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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn