国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

數(shù)據(jù)庫PL/SQL異常處理(組圖)

2024-07-21 02:34:38
字體:
供稿:網(wǎng)友

  在設(shè)計PL/SQL程序時,經(jīng)常會發(fā)生這樣或那樣的錯誤,異常處理就是針對錯誤進行處理的程序段,Oracle 9i中的異常處理分為系統(tǒng)預定義異常處理和自定義異常處理兩部分。
  
  系統(tǒng)預定義異常處理
  
  系統(tǒng)預定義異常處理是針對PL/SQL程序編譯、執(zhí)行過程中發(fā)生的問題進行處理的程序。 下列代碼為正確代碼,在【SQLPlus Worksheet】中能夠順利執(zhí)行。
  
  ―――――――――――――――――――――――――――――――――――――
  
  set serveroutput on
  
  declare
  
  tempno integer:=90;
  
  begin
  
  tempno:=tempno+1;
  
  end;
  
  ―――――――――――――――――――――――――――――――――――――
  
  【配套程序位置】:第9章/ correctplsql.sql。
  
  下列代碼為錯誤代碼,在【SQLPlus Worksheet】中的執(zhí)行結(jié)果如圖9.56所示。
  
 數(shù)據(jù)庫PL/SQL異常處理(組圖)(圖一)
點擊查看大圖

  【配套程序位置】:第9章/ wrongplsql.sql。
  
  由于代碼有錯誤,因此將激活系統(tǒng)預定義的異常處理,并得出如下提示信息。
  
 數(shù)據(jù)庫PL/SQL異常處理(組圖)(圖二)

  Oracle 9i提供了很多異常處理,讀者可以嘗試修改可以正常運行的程序,并執(zhí)行修改后的程序,就可以發(fā)現(xiàn)調(diào)用了哪些異常處理,下面著重介紹如何自定義異常處理。
  
  自定義異常處理
  
  1. 定義異常處理
  
  定義異常處理的語法如下:
  
  declare
  
  異常名 exception;
  
  2. 觸發(fā)異常處理
  
  觸發(fā)異常處理的語法如下:
  
  raise 異常名;
  
  3. 處理異常
  
  觸發(fā)異常處理后,可以定義異常處理部分,語法如下:
  
  Exception
  
  When 異常名1 then
  
  異常處理語句段1;
  
  When 異常名2 then
  
  異常處理語句段2;
  
  4. 實例
  
  下面的PL/SQL程序包含了完整的異常處理定義、觸發(fā)、處理的過程。定義名為salaryerror的異常,在scott.emp數(shù)據(jù)表中查找empno=7566的記錄,將其值放入變量tempsal中,判定tempsal值若不在900和2600之間,說明該員工的薪水有問題,將激活異常處理,提示信息。
  
  在【SQLPlus Worksheet】中執(zhí)行下列PL/SQL代碼,執(zhí)行結(jié)果如圖9.57所示。
  
 數(shù)據(jù)庫PL/SQL異常處理(組圖)(圖三)
點擊查看大圖

  【配套程序位置】:第9章/ exceptiondefine.sql。
  
數(shù)據(jù)庫PL/SQL異常處理(組圖)(圖四)


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 万年县| 六安市| 姚安县| 辽阳县| 津南区| 英吉沙县| 凯里市| 平阴县| 汕头市| 奇台县| 浮山县| 老河口市| 澄江县| 墨玉县| 岢岚县| 盈江县| 内黄县| 乌苏市| 宾川县| 仪征市| 朝阳区| 泸西县| 北票市| 青浦区| 大竹县| 东乡族自治县| 浠水县| 北宁市| 安吉县| 来安县| 安图县| 洪洞县| 班戈县| 宜丰县| 百色市| 中阳县| 馆陶县| 横峰县| 中阳县| 秀山| 嘉黎县|