久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

oracle中存儲函數與存儲過程的區別是什么

135次閱讀
沒有評論

共計 1003 個字符,預計需要花費 3 分鐘才能閱讀完成。

自動寫代碼機器人,免費開通

這期內容當中丸趣 TV 小編將會給大家帶來有關 oracle 中存儲函數與存儲過程的區別是什么,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

一:存儲過程:簡單來說就是有名字的 pl/sql 塊。

語法結構: 

create or replace  存儲過程名(參數列表)
 is
 -- 定義變量
 begin
 --pl/sql
 end;

  案例: 

create or replace procedure add_(a int,b int)
 is 
 c int;
 begin
 c:=a+b;
 dbms_output.put_line(c);
 end;

  調用存儲過程

 declare
 begin 
 add_(12,34);
 end;

存儲過程的三種類型參數:

輸入參數(默認)in

輸出參數 out

輸入輸出參數 in out

函數定義

  語法結構: 

 create or replace function  函數名(參數列表) return  類型
 is
 begin
 end;

  案例: 

create or replace function f1(n1 dec,n2 dec) return dec
 is
 r dec(19,2);
 begin
 r:=n1/n2;
 return r;
 exception
 when zero_divide then
 dbms_output.put_line( 除數不能為 0 
 return 0;
 end;

存儲過程與存儲函數的區別和聯系:

相同點:1. 創建語法結構相似,都可以攜帶多個傳入參數和傳出參數;

2. 都是一次編譯,多次運行;

不同點:1. 存儲過程定義關鍵字用 procedure,函數定義用 function;

2. 存儲過程中不能用 return 返回值,但函數中可以,而且函數中必須有 return 返回;

3. 執行方式略有不同,存儲過程的執行方式有兩種 (1. 使用 execute;2. 使用 begin 和 end) 函數除了

存儲過程的兩種方式,還可以當做表達試使用,例如放在 select 中(select f1() from dual;)

總結:如果只有一個返回值,用存儲函數,否則,一般用存儲過程。

上述就是丸趣 TV 小編為大家分享的 oracle 中存儲函數與存儲過程的區別是什么了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注丸趣 TV 行業資訊頻道。

向 AI 問一下細節

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-04發表,共計1003字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 聂荣县| 黄大仙区| 大新县| 岑溪市| 永丰县| 武夷山市| 漯河市| 邻水| 武宁县| 五寨县| 宕昌县| 获嘉县| 灵丘县| 都江堰市| 宁津县| 黑河市| 资源县| 永和县| 双桥区| 哈密市| 封开县| 壶关县| 惠来县| 张家港市| 绥化市| 沙雅县| 广宗县| 朝阳区| 两当县| 徐州市| 深水埗区| 安多县| 涿鹿县| 云浮市| 图们市| 乌鲁木齐市| 东港市| 怀集县| 武冈市| 安仁县| 奉节县|