怎樣執行oracle存儲過程

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視頻教程

以上就是怎樣執行

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享