版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Version 3.0第六章第六章第五章第五章 - - Oracle 中的中的 OOP 概念概念 面向對象的功能面向對象的功能封裝、多態(tài)和繼承封裝、多態(tài)和繼承 Oracle 支持各種各樣的對象支持各種各樣的對象 抽象數(shù)據(jù)類型是包含一種或多種子類型的數(shù)據(jù)類型抽象數(shù)據(jù)類型是包含一種或多種子類型的數(shù)據(jù)類型 可變數(shù)組允許在單個行中存儲某個記錄的重復屬性可變數(shù)組允許在單個行中存儲某個記錄的重復屬性 嵌套表是表中的表。表在另一個表中被表示為行嵌套表是表中的表。表在另一個表中被表示為行 嵌套表對條目數(shù)沒有限制嵌套表對條目數(shù)沒有限制 對象視圖允許在僅使用關系表的應用程序中實現(xiàn)面對象視圖允許在僅使用關系表的應用
2、程序中實現(xiàn)面向對象的概念向對象的概念 行對象不是嵌入對象行對象不是嵌入對象 PL/SQL 簡介簡介 數(shù)據(jù)類型及其用法數(shù)據(jù)類型及其用法 邏輯比較邏輯比較 控制結構控制結構 錯誤處理簡介錯誤處理簡介 PL/SQL 代表代表 Procedural Language/SQL(Procedural Language:過程語言)過程語言) 它是對它是對 SQL 的擴展的擴展 PL/SQL 中存在過程構造和數(shù)據(jù)庫訪問中存在過程構造和數(shù)據(jù)庫訪問 在在 Oracle 服務器和客戶機應用程序中使用服務器和客戶機應用程序中使用 支持大型對象和集合支持大型對象和集合 支持對象類型和集合支持對象類型和集合 調用外部函數(shù)
3、和過程調用外部函數(shù)和過程 支持支持 SQL 支持支持 OOP 更高生產率更高生產率 更佳性能更佳性能 可移植性可移植性 與與 Oracle 集成在一起集成在一起 嚴密的安全性嚴密的安全性SQL 語句執(zhí)行器語句執(zhí)行器主程序或主程序或 ORACLE 工具工具匿名匿名 PL/SQL 塊塊匿名匿名 PL/SQL 塊塊過程語句過程語句執(zhí)行器執(zhí)行器ORACLE 服務器服務器PL/SQL 引擎引擎過程語句過程語句SQL語句語句 PL/SQL 引擎是主要組件,它駐留在引擎是主要組件,它駐留在 Oracle 服務器中服務器中 PL/SQL 引擎引擎處理處理 PL/SQL 塊并將其分離為塊并將其分離為 SQL 語
4、句及過程語句語句及過程語句將過程語句發(fā)送到過程語句執(zhí)行器以將過程語句發(fā)送到過程語句執(zhí)行器以進行處理進行處理將將 SQL 語句發(fā)送到語句發(fā)送到 SQL 語句執(zhí)行器語句執(zhí)行器以進行處理以進行處理 它包括一組語句它包括一組語句 PL/SQL 程序中的基本單元程序中的基本單元 將相關的聲明和語句進行邏輯分組將相關的聲明和語句進行邏輯分組 聲明對于塊是局部的聲明對于塊是局部的在塊完成之后,將超出范圍在塊完成之后,將超出范圍 PL/SQL 的各個組成部分的各個組成部分 聲明部分聲明部分 可執(zhí)行部分可執(zhí)行部分 異常處理部分異常處理部分 PL/SQL 塊的結構塊的結構DECLARE DECLARE decla
5、rationsdeclarationsBEGIN BEGIN executable statementsexecutable statements EXCEPTIONEXCEPTION handlershandlersEND;END;其中,其中,declarationsdeclarations 是聲明,是聲明,executableexecutable statementsstatements 是可執(zhí)行語句,是可執(zhí)行語句,handlershandlers 是處理是處理程序。程序。 數(shù)據(jù)的臨時存儲數(shù)據(jù)的臨時存儲 在聲明部分中聲明在聲明部分中聲明 可以在可以在 SQL 語句和過程語句中使用語句和過程
6、語句中使用 在可執(zhí)行部分中賦予新值在可執(zhí)行部分中賦予新值 使用變量的優(yōu)點使用變量的優(yōu)點 可重用性可重用性 易于維護易于維護 內置數(shù)據(jù)類型內置數(shù)據(jù)類型 標量標量 復合復合 引用引用 LOB 標量標量 容納單個值容納單個值 沒有內部組成沒有內部組成 分為四個類別:分為四個類別: NUMBER CHARACTER DATE BOOLEAN Number 類型類型 用于存儲和操縱數(shù)字數(shù)據(jù)用于存儲和操縱數(shù)字數(shù)據(jù) Number 類型是:類型是: BINARY_INTEGER NUMBER子類型是子類型是 DEC、DECIMAL、DOUBLE PRECISION、FLOAT、INTEGER、INT、NUME
7、RIC、REAL、SMALLINT PLS_INTEGER Character 類型類型 CHAR VARCHAR2 RAW LONG 和和 LONG RAW ROWID 和和 UROWID 區(qū)域字符類型區(qū)域字符類型 NCHAR NVARCHAR2 Datetime 和和 Interval 類型類型 DATE TIMESTAMP TIMESTAMP WITH TIME ZONE TIMESTAMP WITH LOCAL TIME ZONE INTERVAL YEAR TO MONTH INTERVAL DAY TO SECOND BOOLEAN 類型類型 用于存儲邏輯值(用于存儲邏輯值(TRU
8、E、FALSE 和和 NULL) 不接受任何參數(shù)不接受任何參數(shù) 不能向數(shù)據(jù)庫中插入不能向數(shù)據(jù)庫中插入 BOOLEAN 數(shù)據(jù)數(shù)據(jù) 不能將列值提取或選擇到不能將列值提取或選擇到 BOOLEAN 變量變量中中 只允許對只允許對 BOOLEAN 變量執(zhí)行邏輯操作變量執(zhí)行邏輯操作 組合類型組合類型 RECORD VARRAY NESTED TABLE LOB 類型類型 BLOB CLOB NCLOB BFILE 引用類型引用類型 REF CURSOR REF操作符操作符 屬性屬性 引用數(shù)據(jù)庫中的數(shù)據(jù)類型和對象引用數(shù)據(jù)庫中的數(shù)據(jù)類型和對象 PL/SQL 變量和常量可以具有屬性變量和常量可以具有屬性 屬性的
9、類型屬性的類型 %type引用數(shù)據(jù)庫列引用數(shù)據(jù)庫列 %rowtype代表表中的行代表表中的行 PL/SQL 支持支持 SQL 和和 PL/SQL 中變量和常中變量和常量的比較(稱為量的比較(稱為“布爾表達式布爾表達式”) 布爾表達式的類型有:布爾表達式的類型有: 數(shù)值型數(shù)值型 字符型字符型 日期型日期型 數(shù)值型布爾表達式數(shù)值型布爾表達式 比較數(shù)值比較數(shù)值 下表說明這一點:下表說明這一點: 字符型布爾表達式字符型布爾表達式 比較用引號括起來的序列或單個比較用引號括起來的序列或單個字符字符 下表說明這一點:下表說明這一點: 運算符運算符 含義含義示例示例=等于name = MARK!=不等于pro
10、duct != computer按字母順序排在其前 name1 按字母順序排在其后 name1 name2=按字母順序排在其前或等于 name2 =按字母順序排在其后或等于 name3 = name4 日期型布爾表達式日期型布爾表達式 比較兩個日期比較兩個日期 下表說明這一點:下表說明這一點: 運算符運算符含義含義示例示例=等于Odate = 12-Jan-74!=不等于Odate != 14 Feb - 88早于 Odate 晚于 Odate 30 jun - 77=早于或等于 next_day(odate, 6)=晚于或等于 odate = 25-DEC-67 控制流語句控制流語句 條件控
11、制條件控制 迭代控制迭代控制 順序控制順序控制 條件控制條件控制 基于條件執(zhí)行語句基于條件執(zhí)行語句 類型:類型:if then、if then else、if then elsif 和和 CASE 語句語句 迭代控制迭代控制 簡單循環(huán)簡單循環(huán) WHILE 循環(huán)循環(huán) FOR 循環(huán)循環(huán) 順序控制順序控制 GOTO 語句語句 NULL 語句語句 PL/SQL 中的錯誤條件稱為異常中的錯誤條件稱為異常 有兩種類型的異常:有兩種類型的異常: 預定義的預定義的 用戶定義的用戶定義的 當在當在 PL/SQL 程序中出現(xiàn)錯誤時,將程序中出現(xiàn)錯誤時,將引發(fā)異常引發(fā)異常 在出現(xiàn)錯誤時,正常執(zhí)行將停止,控在出現(xiàn)錯誤
12、時,正常執(zhí)行將停止,控制權轉移到異常處理部分制權轉移到異常處理部分 預定義的異常預定義的異常 PL/SQL 程序違反程序違反 Oracle 規(guī)則時,將隱式引規(guī)則時,將隱式引發(fā)它發(fā)它 用戶定義的異常用戶定義的異常 由由 raise 語句顯式引發(fā)語句顯式引發(fā) 只能在只能在 PL/SQL 塊的聲明部分中聲明塊的聲明部分中聲明 PL/SQL 代表代表 procedural language/SQL(procedural language:過程語言)過程語言) PL/SQL 是一種塊結構的語言是一種塊結構的語言 將將 SQL 的數(shù)據(jù)操縱功能與過程語言的數(shù)的數(shù)據(jù)操縱功能與過程語言的數(shù)據(jù)處理功能結合在一起據(jù)
13、處理功能結合在一起 允許我們使用所有允許我們使用所有 SQL DML、TCL、SQL 函數(shù)和運算符函數(shù)和運算符 PL/SQL 引擎執(zhí)行引擎執(zhí)行 PL/SQL 塊塊 PL/SQL 支持所有支持所有 SQL 數(shù)據(jù)類型和數(shù)據(jù)類型和 ANSI 標標準類型準類型 PL/SQL 塊的三個組成部分是:聲明部分、塊的三個組成部分是:聲明部分、可執(zhí)行部分和異常處理部分可執(zhí)行部分和異常處理部分 變量和常量是在聲明部分中聲明的變量和常量是在聲明部分中聲明的 LOB 類型用于存儲大型對象類型用于存儲大型對象 屬性用于引用數(shù)據(jù)庫中的數(shù)據(jù)類型和對象屬性用于引用數(shù)據(jù)庫中的數(shù)據(jù)類型和對象 支持對變量和常量進行比較支持對變量和常量進行比較 布爾表達式的三種類型是布爾表達式的三種類型是 - - 數(shù)值型、字符型數(shù)值型、字符型和日期型和
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 土地租賃糾紛協(xié)議書(2篇)
- 商場導購禮儀人員合同
- 二手私人會所買賣合同模板文本
- 永久建筑模板施工合同
- 化工公司高管聘用合同范例
- 玩具倉房租賃合同
- 萬能工項目管理合同
- 生鮮冷藏車租賃合同
- 建筑工程電梯安裝合同范本
- 旅游節(jié)慶活動協(xié)管員聘用合同
- SYT 0452-2021 石油天然氣金屬管道焊接工藝評定-PDF解密
- 2024年江蘇醫(yī)藥職業(yè)學院單招職業(yè)技能測試題庫及答案解析
- 醫(yī)院安全生產年終總結
- 2024年全國高考物理電學實驗真題(附答案)
- JB-T 14510-2023 活性污泥法一體化污水處理裝置
- 2024家長會安全教育
- 2024年度-全新事業(yè)單位內部控制培訓
- 天津市近幾年高考數(shù)學(文科)試卷知識點總結
- 護士培訓課件:醫(yī)療護士法律法規(guī)應知應會
- 軟件度量與度量指標的應用
- 《陶瓷裝飾?彩繪》課程標準
評論
0/150
提交評論