Oracle 儲存過程入門簡介

2021-05-24 23:29:39 字數 893 閱讀 3290

一:無返回值的儲存過程

儲存過程為:

create or replace procedure testa(para1 in varchar2,para2 in varchar2)  as

begin

insert into hyq.b_id (i_id,i_name) values (para1, para2);

end testa;

二:有返回值的儲存過程(非列表)

儲存過程為:

create or replace procedure testb(para1 in varchar2,para2 out varchar2)  as

begin

select into para2 from testtb where i_id= para1;

end testb;

三:返回列表

由於oracle儲存過程沒有返回值,它的所有返回值都是通過out引數來替代的,列表同樣也不例外,但由於是集合,所以不能用一般的引數,必須要用pagkage了.所以要分兩部分,

1,  建乙個程式包。如下:

create or replace package testpackage  as

type test_cursor is ref cursor;

end testpackage;

2,建立儲存過程,儲存過程為:

create or replace procedure testc(p_cursor out testpackage.test_cursor) is

begin

open p_cursor for select * from hyq.testtb;

end testc;

可以看到,它是把游標(可以理解為乙個指標),作為乙個out 引數來返回值的

oracle儲存過程入門

寫個簡單的儲存過程 選用scott的emp表。給員工漲工資,大於2000的漲50,大於1000的漲100,其他的漲150 create or replace procedure addsal employno varchar2 is increment number salary number be...

Oracle儲存過程入門

1.包中定義的儲存過程,必須在包體中實現 但包體中實現的儲存過程在包中可以不定義 2.儲存過程實現中,一旦有begin.end pro name 在begin與end之間必須有 塊。3.儲存過程實現中,如果過程沒有入參與出參列表,則直接寫過程名,沒有 4.在包頭與包體中宣告中包括以下幾種定義 包頭 ...

Oracle儲存過程入門

以前寫過一些儲存過程,不過現在都忘記了,前段時間又要處理一些負雜的資料,所以又自學了一遍儲存過程。首先我們需要了解一些基礎知識 引數型別 in 值傳遞,其作用就相當於常量,預設型別 out 相當於變數,在過程中返回乙個值通常到這個型別 in out 很明顯,就是兩個合起來,用於接受呼叫程式的值,並向...