版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、異常和游標(biāo)管理,第七章,2,回顧,PL/SQL 代表 procedural language/SQL(procedural language:過程語言) 將 SQL 的數(shù)據(jù)操縱功能與過程語言的數(shù)據(jù)處理功能結(jié)合在一起 允許使用所有的 SQL DML、TCL、SQL 函數(shù)和操作符 PL/SQL 引擎執(zhí)行 PL/SQL 塊 PL/SQL 塊的三個組成部分是:聲明部分、可執(zhí)行部分和異常處理部分 在聲明部分中聲明變量和常量 LOB 類型用于存儲大型對象 屬性用于引用數(shù)據(jù)庫的數(shù)據(jù)類型和對象 支持變量和常量的比較 有三種類型的控制結(jié)構(gòu) - 條件控制、迭代控制和順序控制,第六章 - PL/SQL 簡介,3,目
2、標(biāo),詳細(xì)討論異常 游標(biāo)管理技巧,4,異常 8- 1,程序錯誤 編譯時 運行時 異常 處理運行時錯誤,5,PL/SQL 是如何處理異常的? 錯誤引發(fā)異常 每當(dāng)引發(fā)異常時,都將控制權(quán)傳遞給異常處理程序 異常處理程序處理異常,異常8 - 2,6,異常中涉及的步驟 聲明異常 引發(fā)異常 處理異常,異常 8- 3,7,異常的類型 預(yù)定義的異常 非預(yù)定義的異常 用戶定義的異常,異常 8- 4,8,預(yù)定義的異常 由 Oracle 為常見錯誤預(yù)定義 在 DBMS_STANDARD 程序包中提供了這些定義 不需要顯式聲明,異常8 - 5,9,非預(yù)定義的異常 指定與 Oracle 錯誤關(guān)聯(lián)的異常 關(guān)聯(lián)是通過 EXC
3、EPTION_INIT 編譯指示建立的,異常8 - 6,10,用戶定義的異常 由程序定義的錯誤 在聲明部分中聲明 類型 EXCEPTION 聲明用戶定義的異常 是使用 RAISE 語句顯式引發(fā)的,異常 8- 7,11,Raise_Application_Error 用于創(chuàng)建用戶定義的錯誤消息的過程 既可以在可執(zhí)行部分中使用,也可以在異常部分中使用 錯誤編號必須介于 20000 和 20999 之間 錯誤消息的長度可長達(dá) 2048 個字節(jié),異常8 - 8,12,游標(biāo)管理9 - 1,游標(biāo) 指向上下文區(qū)域的句柄或指針 上下文區(qū)域 - 用于 SQL 處理的內(nèi)存區(qū) 上下文區(qū)域的內(nèi)容 語句處理的行數(shù) 指向
4、語句的語法分析表示的指針,13,游標(biāo)管理9 - 2,游標(biāo)類型 靜態(tài)游標(biāo) 隱式游標(biāo) 顯式游標(biāo) REF 游標(biāo),14,游標(biāo)管理9 - 3,隱式游標(biāo) 由 Oracle 在內(nèi)部聲明 用于處理 DML 語句 返回單行的查詢,15,游標(biāo)屬性 %NOTFOUND %FOUND %ROWCOUNT %ISOPEN,游標(biāo)管理 9- 4,16,顯式游標(biāo) 由用戶顯式聲明 游標(biāo)將指向活動集中的當(dāng)前行 控制顯式游標(biāo) Open Fetch Close,游標(biāo)管理 9- 5,17,循環(huán)游標(biāo) 顯式游標(biāo)的替代方法 它的工作原理是什么? 隱式打開游標(biāo) 自動從活動集獲取行 在處理完所有行時關(guān)閉游標(biāo) 優(yōu)點 簡化代碼的編寫,游標(biāo)管理9 -
5、 6,18,REF 游標(biāo) 在運行時使不同的語句與之關(guān)聯(lián) REF 游標(biāo)使用游標(biāo)變量 游標(biāo)變量 一種引用類型 可以在運行時指向不同的存儲位置 Close 語句關(guān)閉游標(biāo)并釋放用于查詢的資源,游標(biāo)管理9 - 7,19,游標(biāo)變量的類型 具有約束的游標(biāo)變量 具有返回類型的游標(biāo)變量 也稱為“強(qiáng)游標(biāo)” 無約束的游標(biāo)變量 沒有返回類型的游標(biāo)變量 也稱為“弱游標(biāo)”,游標(biāo)管理9 - 8,20,限制 不能在程序包中聲明游標(biāo)變量 遠(yuǎn)程子程序不能接受游標(biāo)變量的值 不能使用比較操作符對游標(biāo)變量進(jìn)行相等或不相等測試 不能將空值賦予游標(biāo)變量 表不能存儲游標(biāo)變量的值,游標(biāo)管理9 - 9,21,總結(jié) 2- 1,異常處理運行時錯誤 可用的異常類型有三種:預(yù)定義的、非預(yù)定義的和用戶定義的 Raise_application_error 以交互方式傳達(dá)預(yù)定義的異常 游標(biāo)是一個指向上下文區(qū)域的指針 可用的兩種靜態(tài)游標(biāo)類型是隱式游標(biāo)和顯式游標(biāo),22,總結(jié)2 - 2,可用的不同游標(biāo)屬性是:%notfound、%found、%rowcount 和 %i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供應(yīng)鏈管理平臺開發(fā)協(xié)議
- 質(zhì)量檢查標(biāo)準(zhǔn)及檢驗報表模板
- 校園安全知識競賽題庫及答案
- 體育行業(yè)體育教練員績效評定表
- 電工(高級)資格證考試通關(guān)模擬題庫及參考答案詳解【典型題】
- 2020年證券考試《金融市場基礎(chǔ)知識》真題及答案
- 制造業(yè)生產(chǎn)線上工長績效評定表
- 電工(高級)資格證考試高分題庫附答案詳解【黃金題型】
- 2025年鄂州市粱子湖區(qū)保安員考試真題附答案解析
- 2023年人教版中學(xué)七7年級下冊數(shù)學(xué)期末解答題難題(及答案)
- 工傷的事故調(diào)查報告
- 《無人機(jī)地面站與任務(wù)規(guī)劃》 課件 第1-5章 概論 -無人機(jī)航測任務(wù)規(guī)劃與實施
- 道路工程樣板引路方案(3篇)
- 員工年度考核證明模板范本
- 2025至2030中國掩模對準(zhǔn)系統(tǒng)行業(yè)項目調(diào)研及市場前景預(yù)測評估報告
- 2025年部編版二年級語文上冊全冊單元復(fù)習(xí)課教案(共8個單元)
- 數(shù)字射線檢測技術(shù)
- DB37∕T 4355-2021 淺海區(qū)海底重力測量技術(shù)規(guī)程
- 2025年江蘇省中職職教高考統(tǒng)考數(shù)學(xué)試卷真題(含答案詳解)
- 2025年哈鐵單招試題及答案
- SAP QM質(zhì)量管理模塊配置詳解(S4系統(tǒng))
評論
0/150
提交評論