當前位置:首頁 » 存儲配置 » oracle存儲過程is和as

oracle存儲過程is和as

發布時間: 2022-11-29 18:26:07

1. oracle存儲過程中的關鍵字is、as究竟有什麼區別呀

1、單獨的FUNCTION, PROCEDURE 習慣用AS,PACKAGE 中的FUNCTION, PROCEDURE 用IS
2、
create [or replace] procere <過程名>
(
<參數1> [方式1] <數據類型1>,
<參數2> [方式2] <數據類型2>
)
is|as
PS/sql過程體;
單獨的這么看is as 也沒區別

2. oracle 存儲過程 as 和is 區別

第一個問題:is和as是可以互用的,用哪個都沒關系的
第二個問題:在外面
第三個問題:過程中沒有declare關鍵字,declare用在語句塊中
第四個問題:估計你看到的是做游標定義的東東,抑或者直接就一句sql。

3. Oracle存儲過程的語法分析

ORREPLACE是一個可選的關鍵字,建議用戶使用此關鍵字。如果過程已經存在,該關鍵字將重新創建過程,這樣就不必刪除和重新創建過程。關鍵字IS和AS均可,它們本身沒有區別。IS後面是一個完整的PL/SQL塊,可以定義局部變數,但不能以DECLARE開始。局部變數在過程內部存放值。形式參數可以有三種模式:IN、OUT、INOUT。如果沒有為形式參數指定模式,那麼默認的模式是IN。IN表示輸入參數OUT表示輸出參數
HelloWorld!創建第一個存儲過程HelloWorldSQL>_output.put_line('helloworld');end;註:需要在存儲過程輸入完成後回車,下一行輸入」/」回車,才會創建成功。當提示Procerecreated表示存儲過程創建成功。調用HelloWorld!執行SQL>setserveroutputon;SQL>exec[ute]helloworld;顯示如下結果helloworldPL/

4. oracle存儲過程

創建存儲過程

createprocerep_getday
(v_yearvarchar2,
v_monthvarchar2)
as
v_datevarchar2(10);
cursorcur_dateis
withtas
(selectrownum-1rnfromalconnectbyrownum<=32)
selectto_char(to_date(v_year||v_month,'yyyymm')+rn,'yyyy-mm-dd')fromtwhereto_char(to_date(v_year||v_month,'yyyymm')+rn,'yyyymm')=v_year||v_month;
begin
opencur_date;
loop
fetchcur_dateintov_date;
exitwhencur_date%notfound;
dbms_output.put_line(v_date);
endloop;
end;

執行

begin
p_getday('2012','11');
end;

結果

5. ORACLE中如何為存儲過程傳遞參數

第一種:只讀。參數是只讀的,不能修改,即調用時傳遞進來的是常量,或者變數(但變數不能在存儲過程中修改)。通常select及DML類型的存儲過程傳遞的是in類型的參數。

第二種:只寫。忽略調用語句傳遞的任何參數,並在函數(過程)內部給這些參數賦值,因此是只寫的。(這種情況是在函數或過程內部給參數重新賦值,但重新賦值後的參數是無法被外部調用的(好像游標類型的參數除外))

CREATE OR REPLACE PROCEDURE "SCOTT"."SWAP" (firstValue out
number, secondValue out number) is
temp number;
begin
temp := firstValue;
firstValue := secondValue;
secondValue := temp;
end swap;

外部調用:

set serveroutput on;
declare
firstVal number;
secondVal number;
begin
firstVal := 10;
secondVal := 20;
scott.swap(firstVal,secondVal);
dbms_output.put_line('first is ' || firstVal);
dbms_output.put_line('second is ' || secondVal);
end;

無法在外部訪問到firstValue與secondValue的值。此時列印出的結果為:

first is
second is
第三種:讀或寫。這可以完全控制參數,讀取傳遞的參數的值。可以再函數(過程)內部修改參數的值,在退出函數(過程)後,這些參數被賦給在函數內部寫入的值,這樣就可以返回多個值。(即入口參數寫入值後,可以傳遞到函數(過程)的外部,供外部調用的時候使用)

ps:函數中的返回值為如下幾種:

char; varchar2; number; integer; date; boolean; table; record

SQL> CREATE OR REPLACE PROCEDURE HelloWorld2 (

2 p_user_name IN VARCHAR2,

3 p_out_val OUT VARCHAR2,

4 p_inout_val IN OUT VARCHAR2

5 ) AS

6 BEGIN

7 dbms_output.put_line('Hello ' || p_user_name || p_inout_val || '!');

8 p_out_val := 'A';

9 p_inout_val := 'B';

10 END HelloWorld2;

11 /

Procere created.

SQL> DECLARE

2 p_outval VARCHAR2(10);

3 p_inoutval VARCHAR2(10) := '~Hi~';

4 BEGIN

5 HelloWorld2('Edward', p_outval, p_inoutval);

6

7 dbms_output.put_line('p_outval=' || p_outval);

8 dbms_output.put_line('p_inoutval=' || p_inoutval);

9 END;

10 /

Hello Edward~Hi~!

p_outval=A

p_inoutval=B

PL/SQL procere successfully completed.

6. 請教各位:Oracle中,存儲過程里as 什麼意思 還是取別名嗎那麼NULL AS PER_ABE 是什麼意思

不知道您全部的語句是什麼,如果單看這個,那麼就是一個固定值的列,這個固定值就是空(NULL),這個列的別名是PER_ABE
例如:SELECT NULL AS NULLCOLUMN FROM DUAL,其實就是選了一個定值,而這個定值是空。AS後邊是把這個定值指定一個列名。

7. oracle存儲過程到底是is還是as啊

沒什麼區別,一樣的,都可以用~~

8. oracle存儲過程如何輸出信息

可用DBMS_OUTPUT.PUT_LINE()對存儲過程的進行輸出。

編寫存儲過程:

create or replace procere test_pro(in_num number)

as

M number;

begin

M := in_num;

if 0 < M then

dbms_output.put_line('輸出SQL語句1');

elsif M < 3 then

dbms_output.put_line('輸出SQL語句2');

else

dbms_output.put_line('nothing');

end if;

end;

(8)oracle存儲過程is和as擴展閱讀;

存儲在資料庫的數據字典中,存儲在當前的應用中安全性由資料庫提供安全保證,必須通過授權才能使用存儲子程序,安全性靠應用程序來保證,如果能執行應用程序,就能執行該子程序。模式描述IN參數用來從調用環境中向存儲過程傳遞值,不能給IN參數賦值,給此參數傳遞的值可以是常量、有值的變數、表達式等。

9. 創建存儲過程is和as有什麼區別

is 用來判斷類型 如: if(val is String){.....}

as 作為/當做 的意思吧,我敘述不清,給你個例子吧:
function xx(e:Event):void{
var ss:Loader = e.target as Loader; // 讓SS共享調用XX事件的對象的信息;
..}

10. oracle的存儲過程is和as什麼區別

使用過vba嗎??
存儲過程里的procere 相當於 sub 無返回值
存儲過程里的function 相當於 Function 必須有回值

熱點內容
thinkphp緩存關閉 發布:2024-04-26 18:19:32 瀏覽:96
linux信號捕捉 發布:2024-04-26 18:19:27 瀏覽:934
編譯有哪兩種模式 發布:2024-04-26 17:53:30 瀏覽:871
伺服器電腦上能用嗎 發布:2024-04-26 17:44:42 瀏覽:560
組件式編程 發布:2024-04-26 17:19:57 瀏覽:943
電子兒童存錢罐如何改密碼 發布:2024-04-26 17:19:13 瀏覽:601
什麼安卓手機直播投屏好 發布:2024-04-26 17:18:31 瀏覽:627
linuxhba查看 發布:2024-04-26 16:57:28 瀏覽:903
啟動mongodb服務linux 發布:2024-04-26 16:38:37 瀏覽:553
525標軸選裝哪些配置 發布:2024-04-26 16:34:24 瀏覽:849