Oracle過程


過程是一組可以按名稱呼叫的PL/SQL語句。 呼叫規範指定java方法或第三代語言例程,以便可以從SQL和PL/SQL呼叫它。

建立過程

語法

CREATE [OR REPLACE] PROCEDURE procedure_name  
    [ (parameter [,parameter]) ]  
IS  
    [declaration_section]  
BEGIN  
    executable_section  
[EXCEPTION  
    exception_section]  
END [procedure_name];

以下是建立過程必須定義的三種型別的語句。

  • IN:這是一個預設引數,它將值傳遞給子程式。
  • OUT:必須指定,它向呼叫者返回一個值。
  • IN OUT:必須指定,它將初始值傳遞給子程式並將更新的值返回給呼叫者。

Oracle建立過程範例

在此範例中,將在user表中插入記錄,所以需要先建立user表。

user表建立語句:

create table user(id number(10) primary key,name varchar2(100));

現在編寫程式程式碼以在user表中插入記錄。

程式程式碼:

create or replace procedure "INSERTUSER"    
(id IN NUMBER,    
name IN VARCHAR2)    
is    
begin    
    insert into user values(id,name);    
end;    
/

執行上面程式碼,得到以下結果 -

Procedure created.

Oracle程式呼叫過程

讓我們來看看如何呼叫上面建立的過程。參考以下範例程式碼 -

BEGIN    
   insertuser(101,'Maxsu');  
   dbms_output.put_line('record inserted successfully');    
END;    
/

現在,檢視USER表中的記錄,將看到上面插入了一條記錄。

ID        Name
---------------------------
101        Maxsu

Oracle刪除過程

語法

DROP PROCEDURE procedure_name;

刪除範例

DROP PROCEDURE INSERTUSER;

執行上面範例程式碼後,將刪除上面建立的過程:INSERTUSER