1. 程式人生 > >ORACLE儲存過程建立和呼叫

ORACLE儲存過程建立和呼叫

主要總結下遇到個幾個問題:

1、在業務程式碼執行時,賦值給一個變數,需要使用:=,而不是=;

2、在plsql中執行完建立語句,呼叫報錯

解決辦法:

右鍵編輯儲存過程,在控制檯中可以看到報錯資訊,點選錯誤資訊,可以看到出錯程式碼被標紅

3、在查詢資料時,發現有人用is代替as來寫,在這裡總結一下在ORACLE中儲存過程的通用模板:

      create or replace procedureName/(name in out vachar,age in varchar)----需要傳參時,加上斜槓後代碼

               is/as----這裡is,as都可以,後面還可以宣告變數,如:as  resultCount number

      begin

               ----這裡寫sql業務程式碼,常用的處理方法if  then-else-end if;

      exception

               ----這裡寫異常處理資訊,常用處理方法when  then---when others then---end;

               when too_many_rows then

               DBMS_OUTPUT.PUT_LINE('返回值多於1行');

               when others then

               DBMS_OUTPUT.PUT_LINE('在RUNBYPARMETERS過程中出錯!');

      end;

4、執行儲存過程方法:

      declare
                  realgasoffername varchar2(255);----注意一下,引數型別需要和資料庫一致
      begin
                  realgasoffername:='test';----引數賦值
                  runbyparmeters();---呼叫儲存過程
                  DBMS_OUTPUT.PUT_LINE(REALGASOFFERNAME||' hahaha  '||'lalala');
      end;

5、常用的儲存過程sql:

      ----ORACLE根據名稱一行行顯示儲存過程
      select  text  from  user_source  where name  =  'runbyparmeters'  order  by  line;

      ---=查詢當前使用者的儲存過程
      select  *  from  user_objects  where  object_type  =  'PROCEDURE';