程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> 關於Oracle數據庫 >> Oracle存儲過程入門學習基本語法

Oracle存儲過程入門學習基本語法

編輯:關於Oracle數據庫

1.基本結構
  create OR REPLACE PROCEDURE存儲過程名字
  (
  參數1 IN NUMBER,
  參數2 IN NUMBER
  ) IS
  變量1 INTEGER :=0;
  變量2 DATE;
  BEGIN
  END 存儲過程名字
  2.select INTO STATEMENT
  將select查詢的結果存入到變量中,可以同時將多個列存儲多個變量中,必須有一條記錄,否則拋出異常(如果沒有記錄拋出NO_DATA_FOUND)
  例子:
  BEGIN
  select col1,col2 into 變量1,變量2 FROM typestruct where xxx;
  EXCEPTION
  WHEN NO_DATA_FOUND THEN
     xxxx;
  END;
  ...
  3.IF 判斷
  IF V_TEST=1 THEN
    BEGIN
     do something
    END;
  END IF;
  4.while 循環
  WHILE V_TEST=1 LOOP
  BEGIN
 XXXX
  END;
  END LOOP;
  5.變量賦值
  V_TEST := 123;
  6.用for in 使用cursor
  ...
  IS
  CURSOR cur IS select * FROM xxx;
  BEGIN
 FOR cur_result in cur LOOP
  BEGIN
   V_SUM :=cur_result.列名1+cur_result.列名2
  END;
 END LOOP;
  END;
  7.帶參數的cursor
  CURSOR C_USER(C_ID NUMBER) IS select NAME FROM USER where TYPEID=C_ID;
  OPEN C_USER(變量值);
  LOOP
  FETCH C_USER INTO V_NAME;
  EXIT FETCH C_USER%NOTFOUND;
   do something
  END LOOP;
  CLOSE C_USER;
  8.用pl/sql developer debug
  連接數據庫後建立一個Test WINDOW
  在窗口輸入調用SP的代碼,F9開始debug,CTRL+N單步調試

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved