[
推薦
]
ORACLE?PL/SQL
編程詳解之
一
:
PL/SQL?
程序設計簡介
(
千里之行
,
始于足下
)
——
通過知識共享樹立個人品牌。
繼上
六
篇:
??????? [ 頂 ]ORACLE?PL/SQL 編程詳解之二: PL/SQL 塊結構和組成元素 ( 為山九仞,豈一日之功 )
????? ?
[
推薦
]ORACLE?PL/SQL
編程詳解之三:
PL/SQL
流程控制語句
(
不給規則,不成方圓
)
??????? [ 推薦 ]ORACLE?PL/SQL 編程之四:把游標說透 ( 不怕做不到,只怕想不到 )
? [ 推薦 ]ORACLE?PL/SQL 編程之五:異常錯誤處理 ( 知已知彼、百戰不殆 )
?? ? ???? ORACLE?PL/SQL 編程之六:把過程與函數說透 ( 窮追猛打,把根兒都拔起 !)?
接下來 再次 介紹PL/SQL的基礎篇: PL/SQL?程序設計簡介 ,還望大家繼續支持與推薦~!
?
本篇主要內容如下:
?
SQL
語言只是訪問、操作數據庫的語言,并不是一種具有流程控制的程序設計語言,而只有程序設計語言才能用于應用軟件的開發。
PL?/SQL
是一種高級數據庫程序設計語言,該語言專門用于在各種環境下對
ORACLE
數據庫進行訪問。由于該語言集成于數據庫服務器中,所以
PL/SQL
代碼可以對數據進行快速高效的處理。除此之外,可以在
ORACLE
數據庫的某些客戶端工具中,使用
PL/SQL
語言也是該語言的一個特點。本章的主要內容是討論引入
PL/SQL
語言的必要性和該語言的主要特點,以及了解
PL/SQL
語言的重要性和數據庫版本問題。還要介紹一些貫穿全書的更詳細的高級概念,并在本章的最后就我們在本書案例中使用的數據庫表的若干約定做一說明。
1.
1
???SQL
與
PL/SQL
1.
1
.1??
什么是
PL/SQL?
PL/SQL
是?
Procedure?Language?&?Structured?Query?Language?
的縮寫。
ORACLE
的
SQL
是支持
ANSI(American?national?Standards?Institute)
和
ISO92?(International?Standards?Organization)
標準的產品。
PL/SQL
是對
SQL
語言存儲過程語言的擴展。從
ORACLE6
以后,
ORACLE
的
RDBMS
附帶了
PL/SQL
。它現在已經成為一種過程處理語言,簡稱
PL/SQL
。目前的
PL/SQL
包括兩部分,一部分是數據庫引擎部分;另一部分是可嵌入到許多產品(如
C
語言,
JAVA
語言等)工具中的獨立引擎。可以將這兩部分稱為:數據庫
PL/SQL
和工具
PL/SQL
。兩者的編程非常相似。都具有編程結構、語法和邏輯機制。工具
PL/SQL
另外還增加了用于支持工具(如
ORACLE?Forms
)的句法,如:在窗體上設置按鈕等。本章主要介紹數據庫
PL/SQL
內容。
1.
2
??PL/SQL的
優點或特征
1.2.1??
有利于客戶
/
服務器環境應用的運行
對于客戶
/
服務器環境來說,真正的瓶頸是網絡上。無論網絡多快,只要客戶端與服務器進行大量的數據交換。應用運行的效率自然就回受到影響。如果使用
PL/SQL
進行編程,將這種具有大量數據處理的應用放在服務器端來執行。自然就省去了數據在網上的傳輸時間。
1.2.2??
適合于客戶環境
PL/SQL
由于分為數據庫
PL/SQL
部分和工具
PL/SQL
。對于客戶端來說,
PL/SQL
可以嵌套到相應的工具中,客戶端程序可以執行本地包含
PL/SQL
部分,也可以向服務發
SQL
命令或激活服務器端的
PL/SQL
程序運行。
1.2.
3
??
過程化
PL/SQL
是
Oracle
在標準
SQL
上的過程性擴展,不僅允許在
PL/SQL
程序內嵌入
SQL
語句,而且允許使用各種類型的條件分支語句和循環語句,可以多個應用程序之間共享其解決方案
。
1.2.
4
??
模塊化
PL/SQL
程序結構是一種描述性很強、界限分明的塊結構、嵌套塊結構,被分成單獨的過程、函數、觸發器,且可以把它們組合為程序包,提高程序的模塊化能力
。
1.2.
5
?
?
運行錯誤的可處理性
使用
PL/SQL
提供的異常處理(
EXCEPTION
),開發人員可集中處理各種
ORACLE
錯誤和
PL/SQL
錯誤,或處理系統錯誤與自定義錯誤,以增強應用程序的健壯性。
1.2.
6
?
?
提供大量內置程序包
ORACLE
提供了大量的內置程序包。通過這些程序包能夠實現
DBS
的一些低層操作、高級功能,不論對
DBA
還是應用開發人員都具有重要作用。
當然還有其它的一些優點如:更好的性能、可移植性和兼容性、可維護性、易用性與快速性等。
1.
3
??PL/SQL?
可用的
SQL
語句
????PL/SQL
是
ORACLE
系統的核心語言,現在
ORACLE
的許多部件都是由
PL/SQL
寫成。在
PL/SQL
中可以使用的
SQL
語句有:
INSERT
,
UPDATE
,
DELETE
,
SELECT?INTO
,
COMMIT
,
ROLLBACK
,
SAVEPOINT
。
提示:在?
PL/SQL
中只能用?
SQL
語句中的?
DML?
部分,不能用?
DDL?
部分,如果要在
PL/SQL
中使用
DDL(
如
CREATE??table??
等
)
的話,只能以動態的方式來使用。
l?
ORACLE?
的?
PL/SQL?
組件在對?
PL/SQL?
程序進行解釋時,同時對在其所使用的表名、列名及數據類型進行檢查。
l?
PL/SQL?
可以在
SQL*PLUS?
中使用。
l?
PL/SQL?
可以在高級語言中使用。
l?
PL/SQL
可以在
ORACLE
的開發工具中使用
(
如:
SQL?Developer
或
Procedure?Builder
等
)
。
l?
其它開發工具也可以調用
PL/SQL
編寫的過程和函數,如
Power?Builder?
等都可以調用服務器端的
PL/SQL
過程。
1.
4
??運行
PL/SQL
程序
????PL/SQL
程序的運行是通過
ORACLE
中的一個引擎來進行的。這個引擎可能在
ORACLE
的服務器端,也可能在?
ORACLE?
應用開發的客戶端。引擎執行
PL/SQL
中的過程性語句,然后將
SQL
語句發送給數據庫服務器來執行。再將結果返回給執行端。
??2011??
EricHu
原創作品,轉貼請注明作者和出處,留此信息。
------------------------------------------------
cnBlobs:
http://www.cnblogs.com/huyong/
CSDN
:
http://blog.csdn.net/chinahuyong
?
作者:
EricHu
(
DB
、
C\S
、
B\S
、
WebService
、
WCF
、
PM
等
)
出處:
http://
www
.cnblogs.com
/huyong/
Q?Q
:
80368704???E-Mail:?80368704@qq.com
本博文歡迎大家瀏覽和轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,在『參考』的文章中,我會表明參考的文章來源,尊重他人版權。若您發現我侵犯了您的版權,請及時與我聯系。
更多文章請看
?
[
置頂
]
索引貼
——
(不斷更新中)
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
