- Oracle數據庫編程經典300例
- 肖俊宇編著
- 986字
- 2018-12-30 10:29:29
實例007 創建PL/SQL塊
【實例描述】
Oracle PL/SQL語言(Procedural Language/SQL)是結合了結構化查詢語言SQL與Oracle自身過程控制為一體的強大語言,PL/SQL不但支持更多的數據類型,擁有自身的變量聲明、賦值語句,而且還有條件、循環等流程控制語句。過程控制結構與SQL數據處理能力無縫地結合形成了強大的編程語言,可以創建過程和函數及程序包。
本實例創建一個簡單的PL/SQL塊,計算一個長為5,寬為4的矩形面積。創建完成后將該塊在SQL*Plus中運行,其運行結果如圖1-25所示。

圖1-25 創建PL/SQL塊計算矩形面積
【實現過程】
(1)打開SQL*Plus工具。執行【開始】|【運行】命令,在【運行】對話框中輸入“sqlplusw”命令,打開SQL*Plus,在登錄框中輸入“system/oracle”(用戶名/口令),如圖1-26所示。此處口令“oracle”為安裝Oracle時設置的,讀者需將其改為自身為其設置的口令。

圖1-26 登錄SQL*Plus
(2)編寫PL/SQL代碼。連接到Oracle SQL*Plus后,在“SQL>”字符串后輸入PL/SQL代碼,如下所示:
SQL> DECLARE 2 LEN NUMBER:=5; 3 WIDTH NUMBER:=4; 4 AREA NUMBER; 5 BEGIN ------執行部分開始 6 AREA:=LEN*WIDTH; 7 DBMS_OUTPUT.PUT_LINE(AREA); ------輸出AREA的值到SQL*Plus 8 END; 9 /
【范例解析】
簡單地說,PL/SQL是一種塊結構的語言,它將一組語句放在一個塊中,一次性發送給服務器,PL/SQL引擎分析收到PL/SQL語句塊中的內容,把其中的過程控制語句由PL/SQL引擎自身去執行,把PL/SQL塊中的SQL語句交給服務器的SQL語句執行器執行。一個PL/SQL程序包含了一個或者多個邏輯塊,邏輯塊中可以聲明變量,變量在使用之前必須先聲明。除了正常的執行程序外,PL/SQL還提供了專門的異常處理部分進行異常處理。每個邏輯塊分為三個部分,語法是:
[DECLARE --declaration statements] BEGIN --executable statements [EXCEPTION --exception statements] END;
其中,DECLARE部分為聲明部分,它包含了變量和常量的定義,該部分由關鍵字DECLARE開始,如果不聲明變量或者常量,可以省略這部分;由關鍵字BEGIN開始,關鍵字END結尾的部分為執行部分,所有的可執行PL/SQL語句都放在這一部分,該部分執行命令并操作變量;由EXCEPTION關鍵字開始的部分為異常處理部分,它也是可選的。
讀者可以看出,PL/SQL事實上是一種編程語言,與Java和C#一樣。除了有自身獨有的數據類型、變量聲明和賦值及流程控制語句外,PL/SQL還有自身的語言特性。
● PL/SQL對大小寫不敏感,本書中約定關鍵字全部大些,其余的部分小寫。
● PL/SQL塊中的每一條語句都必須以分號結束,SQL語句可以是多行的,但分號表示該語句結束。一行中可以有多條SQL語句,他們之間以分號分隔,但是不推薦一行中寫多條語句。
● PL/SQL塊中的END關鍵字后面用分號結尾。
● PL/SQL塊和PL/SQL語句在SQL*Plus中以符號“/”執行。
注意:在SQL*Plus中運行PL/SQL塊前,如果需要將執行結果直接輸出,首先需要執行“set serveroutput on”命令,再用dbms_output.put_line()語句輸出變量值。
- JavaScript百煉成仙
- Java EE 6 企業級應用開發教程
- Python for Secret Agents:Volume II
- Python語言程序設計
- Unity Virtual Reality Projects
- Ray分布式機器學習:利用Ray進行大模型的數據處理、訓練、推理和部署
- Access 2010數據庫基礎與應用項目式教程(第3版)
- Quarkus實踐指南:構建新一代的Kubernetes原生Java微服務
- C語言程序設計案例精粹
- TypeScript項目開發實戰
- 算法訓練營:提高篇(全彩版)
- jQuery開發基礎教程
- 利用Python進行數據分析(原書第3版)
- Python Data Structures and Algorithms
- 面向對象程序設計及C++(第3版)