Oracle_PL_ SQL_ 튜 토리 얼: 저장 프로시저

3948 단어 Oacle
--######################################--
--    
--   2012.07.06
--######################################--
/*
1、            ,     SQL   。                PL/SQL    。
2、     ,      。                           。
3、         :in out  ,          ,              。
4、       ,                      。
5、           。
*/
CREATE OR REPLACE PROCEDURE procedure_name
( parameter1 IN/OUT sql_datetype --            
, parameter2 IN/OUT sql_datetype --      Oralce        
, parameter3 IN/OUT sql_datetype --in      out     
)
IS
    --       
    _variable _type(_RANGE); 
BEGIN
    excution_statements;
EXCEPTION
    --        RAISE+    
    exception_handing_statements;
END procedure_name;

--######################################--
--1.    (   )
--  
CREATE OR REPLACE PROCEDURE Demo_Proc_Name
IS
    --    (        )
BEGIN
    --        
    NULL;
EXCEPTION
    --    
    exception_statement;
END Demo_Proc_Name;
-- :
--IS            PL/SQL ,
--BEGIN  PL/SQL   ,
--NULL  PL/SQL        ,      ,  PL/SQL          ,
--END     PL/SQL   

--Demo1:
CREATE OR REPLACE PROCEDURE Demo_Proc_Name
IS
    v_time VARCHAR2 (20) := '2012.12.20';
BEGIN
    DBMS_OUTPUT.put_line('The end of the world day is:');
    DBMS_OUTPUT.put_line(v_time);
END Demo_Proc_Name;
--SQL Command->  ->  :
exec Demo_Proc_Name

--Demo2:
CREATE OR REPLACE PROCEDURE Demo_Proc_Name
IS
    v_time VARCHAR2 (20);
BEGIN
    v_time:= '2012.12.20';
    DBMS_OUTPUT.put_line('The end of the world day is:');
    DBMS_OUTPUT.put_line(v_time);
END Demo_Proc_Name;
--SQL Command->  ->  :
exec Demo_Proc_Name

--######################################--
--2.    (     )
--  
CREATE OR REPLACE PROCEDURE Demo_Proc_Name( v_in_para IN type1)
AS
BEGIN
    NULL;
EXCEPTION
    exception_statement;
END Demo_Proc_Name;

--Demo3:
CREATE OR REPLACE PROCEDURE Demo_Proc_Name(v_in_para IN VARCHAR2)
IS
BEGIN
    DBMS_OUTPUT.put_line('My name is:');
    DBMS_OUTPUT.put_line(v_in_para);
END Demo_Proc_Name;
--SQL Command  ->  ->  :
exec Demo_Proc_Name('Wang Lin')

--######################################--
--3.    (     )
--  
CREATE OR REPLACE PROCEDURE Demo_Proc_Name( v_out_para OUT type1)
AS
BEGIN
    NULL;
EXCEPTION
    exception_statement;
END Demo_Proc_Name;

--Demo4:
CREATE OR REPLACE PROCEDURE Demo_Proc_Name(v_out_para OUT VARCHAR2)
IS
BEGIN
    v_out_para:='Wang Lin';
    DBMS_OUTPUT.put_line('My name is:');
    DBMS_OUTPUT.put_line(v_out_para);
END Demo_Proc_Name;
--SQL Command  ->  ->  :
--               
var p varchar2 (20)
--            :
exec Demo_Proc_Name(:p)

--######################################--
--4.    (       )
--  
CREATE OR REPLACE PROCEDURE Demo_Proc_Name( v_in_out_para IN OUT type1)
AS
BEGIN
    NULL;
EXCEPTION
    exception_statement;
END Demo_Proc_Name;

--Demo5:
CREATE OR REPLACE PROCEDURE Demo_Proc_Name(v_in_out_para IN OUT VARCHAR2)
IS
    v_temp VARCHAR2 (20);
BEGIN
    v_temp:=v_in_out_para;
    v_in_out_para:='I''m '||v_in_out_para;
END Demo_Proc_Name;
--SQL Command  ->  ->  :
--                 
var p varchar2 (20)
--       
exec :p:='Wang Lin'
--   P     ,            :
exec Demo_Proc_Name(:p)

좋은 웹페이지 즐겨찾기