日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Oracle過程和函數(shù)的區(qū)別

Oracle過程和函數(shù)相信大家都比較了解,下面就為您詳細介紹Oracle過程和函數(shù)二者之間的區(qū)別,希望可以讓您對Oracle過程和函數(shù)有更深的認識。

Oracle過程和函數(shù)都以編譯后的形式存放在數(shù)據(jù)庫中,函數(shù)可以沒有參數(shù)也可以有多個參數(shù)并有一個返回值。過程有零個或多個參數(shù),沒有返回值。函數(shù)和過程都可以通過參數(shù)列表接收或返回零個或多個值,函數(shù)和過程的主要區(qū)別不在于返回值,而在于他們的調(diào)用方式。Oracle過程是作為一個獨立執(zhí)行語句調(diào)用的:

 
 
 
  1. pay_involume(invoice_nbr,30,due_date); 

函數(shù)以合法的表達式的方式調(diào)用:

 
 
 
  1. order_volumn:=open_orders(SYSDATE,30); 

 

創(chuàng)建過程的語法如下:

 
 
 
  1. CREATE [ OR REPLACE] PROCEDURE [schema.]procedure_name  
  2. [parameter_lister]  
  3. {AS|IS}  
  4. declaration_section  
  5. BEGIN  
  6. executable_section  
  7. [EXCEPTION  
  8. exception_section]  
  9. END [procedure_name]   

每個參數(shù)的語法如下:

 
 
 
  1. paramter_name mode datatype [(:=|DEFAULT) value] 

mode有三種形式:IN、OUT、INOUT。

IN表示在調(diào)用過程的時候,實際參數(shù)的取值被傳遞給該過程,形式參數(shù)被認為是只讀的,當過程結(jié)束時,控制會返回控制環(huán)境,實際參數(shù)的值不會改變。

OUT在調(diào)用過程時實際參數(shù)的取值都將被忽略,在過程內(nèi)部形式參數(shù)只能是被賦值,而不能從中讀取數(shù)據(jù),在過程結(jié)束后形式參數(shù)的內(nèi)容將被賦予實際參數(shù)。

INOUT這種模式是IN和OUT的組合;在Oracle過程內(nèi)部實際參數(shù)的值會傳遞給形式參數(shù),形勢參數(shù)的值可讀也可寫,過程結(jié)束后,形勢參數(shù)的值將賦予實際參數(shù)。

創(chuàng)建函數(shù)的語法和過程的語法基本相同,唯一的區(qū)別在于函數(shù)有RETUREN子句

 
 
 
  1. CREATE [ OR REPLACE] FINCTION [schema.]function_name  
  2. [parameter_list]  
  3. RETURN returning_datatype  
  4. {AS|IS}  
  5. declaration_section  
  6. BEGIN  
  7. executable_section  
  8. [EXCEPTION]  
  9. exception_section  
  10. END [procedure_name]   

在執(zhí)行部分函數(shù)必須有喲個或多個return語句。

在創(chuàng)建函數(shù)中可以調(diào)用單行函數(shù)和組函數(shù),例如:

 
 
 
  1. CREATE OR REPLACE FUNCTION my_sin(DegreesIn IN NUMBER)  
  2. RETURN NUMBER  
  3. IS   
  4. pi NUMBER=ACOS(-1);  
  5. RadiansPerDegree NUMBER;  
  6.  
  7. BEGIN  
  8. RadiansPerDegree=pi/180;  
  9. RETURN(SIN(DegreesIn*RadiansPerDegree));  
  10. END   

 

 

【編輯推薦】

Oracle to_char函數(shù)的使用

oracle函數(shù)返回表的實現(xiàn)

帶您了解Oracle FBI索引

詳解Windows下卸載Oracle數(shù)據(jù)庫

詳解Oracle多種表連接方式


網(wǎng)站題目:Oracle過程和函數(shù)的區(qū)別
標題鏈接:http://m.5511xx.com/article/cdiscih.html