熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

詳細講述PLSQL的書寫及語法

2013-11-13 15:58:19  來源: Oracle 

  摘要

  //簡要說明該文檔內容

  SQL是用來訪問關系型數據庫一種通用語言其執行特點是非過程化即不用指明執行的具體方法和途徑而是簡單的調用相應語句來直接取得結果即可PL/SQL是一種過程化語言因此可以用來實現比較復雜的業務邏輯而本篇文章主要講述PLSQL的書寫及語法

  內容

  //可自行增加小分類

   PLSQL語法

  程序結構

  PL/SQL程序都是以塊(block)為基本單位整個PL/SQL塊分三部分聲明部分(用declare開頭)執行部分(以 begin開頭)和異常處理部分(以exception開頭)其中執行部分是必須的其他兩個部分可選無論PL/SQL程序段的代碼量有多大其基本結構就是由這三部分組成而且每條語句均由分號隔開

  
/*聲明部分以declare開頭*/
DECLARE
    declare statement 
/*執行部分以begin開頭以end結束*/
BEGIN
execute statement
/*異常處理部分以exception開始*/
EXCEPTION
    WHEN exceptioncase THEN
    Exception handle
END; 

  例子

  
/*聲明部分以declare開頭*/
DECLARE
    v_job NUMBER();
 
/*執行部分以begin開頭*/
BEGIN
    DELETE FROM employee;
    INSERT INTO employee
                (depno job
                )
         VALUES (
                );
   
    SELECT job
      INTO v_job
      FROM employee
     WHERE depno = ;
   dbms_outputPUT_LINE(v_job);
/*異常處理部分以exception開始*/
EXCEPTION
    WHEN no_data_found THEN
    dbms_outputPUT_LINE(No data);
END; 

  執行結果

  

  數據類型

  PL/SQL主要用於數據庫編程所以其所有數據類型跟oracle數據庫裡的字段類型是一一對應的大體分為數字型布爾型字符型和日期型

  控制結構

  PL/SQL程序段中有三種程序結構條件結構循環結構和順序結構

  a)條件結構


  
IF condition THEN
statement
ELSEIF conditon THEN
statement
ELSE
statementelse
END IF

  b)循環結構

  三種循環結構

  
簡單循環(也稱作無限循環)
LOOP
Loopstatement
END LOOP

  
WHILE 循環
WHILE condition LOOP
loopstatement
END LOOP

  
數字FOR循環
FOR variable IN low_bound upper_bound
LOOP
loopstatement
END LOOP

  通常如果你總是希望循環主體執行至少一次那麼你就應當使用一個簡單循環如果你希望在第一次運行循環主體之前檢查該條件則應使用 WHILE 循環當你計劃通過IN子句中指定的每個值(整數或記錄)進行迭代時則應當使用FOR循環

  c)順序結構

  實際就是goto的運用不過從程序控制的角度來看盡量少用goto可以使得程序結構更加的清晰


From:http://tw.wingwit.com/Article/program/Oracle/201311/17606.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.