Oracle PL/SQL實例精解

內容介紹

《OraclePL/SQL實例精解(原書第4版)》是一本逐步分解的,詳盡的PL/SQL編程教程,使用真實場景的試驗、範例和練習來介紹讀者所需的PL/SQL編程技能,涵蓋Oracle 11g的最新特性。作者的寫作手法源自於在哥倫比亞大學教授PL/SQL編程技術的經驗,深度探索PL/SQL編程技術,融合自己的最佳實踐。使用《OraclePL/SQL實例精解(原書第4版)》,讀者可以快速掌握PL/SQL編程基本知識,並建立工程化的概念,是市面上難得的PL/SQL教程。《OraclePL/SQL實例精解(原書第4版)》是一本集中式的解決方案範例教程,使用真實場景的試驗。大量範例。練習來介紹所需的所有Oracle PL/SQL技能。這個版本完全面向Oracle 11g,覆蓋Oracle PL/SQL編程的所有基礎知識,包括PL/SQL語法。程式控制結構,包,以及Oracle 11g重要改進的觸發器。你可以通過《OraclePL/SQL實例精解(原書第4版)》獨立學習每個關鍵任務,以及最重要的PL/SQL編程技術。通過實踐性的學習手段,可以分享作者的解決方案,這些解決方案提供深度探索視角和已證實的最佳實踐。每章後面的項目會綜合套用所學的技術,通過實踐活動加深對知識的理解和掌握程度。《OraclePL/SQL實例精解(原書第4版)》的寫作手法充分體現了作者在哥倫比亞大學向專業人士教授PL/SQL編程的經驗和技巧。通過這種逐步分解的講解方式,資料庫開發者和DBA的新手可以更快地獲職工程實踐經驗;高級的PL/SQL程式設計師可以把《OraclePL/SQL實例精解(原書第4版)》作為實踐性解決方案的參考資源。

作品目錄

??? 目錄
??? 第1 章PL/SQL 概念………………………1
??? 1.1 在客戶端/ 伺服器架構中PL/SQL 的套用……………………………1
??? 1.1.1 使用PL/SQL 匿名語句塊……………6
??? 1.1.2 理解如何執行PL/SQL ………………8
??? 1.2 SQL*Plus 中的PL/SQL …………………9
??? 1.2.1 使用替代變數……………………13
??? 1.2.2 使用DBMS_OUTPUT.PUT_LNE 語句………………………………14
??? 1.3 動手試驗………………………………15
??? 第2 章通用程式語言基礎……………16
??? 2.1 PL/SQL 編程基礎………………………16
??? 2.1.1 充分利用PL/SQL 語言組件………………………………17
??? 2.1.2 充分利用PL/SQL 變數……………18
??? 2.1.3 合理使用PL/SQL 保留字…………20
??? 2.1.4 在PL/SQL 中使用標識符…………21
??? 2.1.5 使用Anchored 數據類型…………22
??? 2.1.6 聲明和初始化變數………………24
??? 2.1.7 理解語句塊、嵌套語句塊和標籤的作用範圍…………………………27
??? 2.2 動手試驗………………………………30
??? 第3 章PL/SQL 中的SQL ………………31
??? 3.1 在PL/SQL 中使用DML ………………31
??? 3.1.1 變數初始化時使用SELECT NTO 語法………………………………32
??? 3.1.2 在PL/SQL 語句塊中使用DML …34
??? 3.1.3 在PL/SQL 語句塊中使用序列……35
??? 3.2 使用SAVEPONT ……………………36
??? 3.3 動手試驗………………………………41
??? 第4 章條件控制:F 語句……………42
??? 4.1 F 語句…………………………………42
??? 4.1.1 使用F-THEN 語句………………46
??? 4.1.2 使用F-THEN-ELSE 語句………49
??? 4.2 ELSF 語句……………………………52
??? 4.3 嵌套F 語句……………………………60
??? 4.4 動手試驗………………………………65
??? 第5 章條件控制:CASE 語句…………66
??? 5.1 CASE 語句……………………………66
??? 5.1.1 使用CASE 語句…………………72
??? 5.1.2 使用搜尋式CASE 語句…………75
??? 5.2 CASE 表達式…………………………79
??? 5.3 NULLF 和COALESCE 函式……………………………………85
??? 5.3.1 NULLF 函式………………………88
??? 5.3.2 使用COALEESCE 函式…………91
??? 5.4 動手試驗………………………………93
??? 第6 章疊代控制:第一部分…………95
??? 6.1 簡單循環………………………………95
??? 6.1.1 使用帶有EXT 條件的簡單循環…98
??? 6.1.2 使用帶有EXT WHEN 條件的簡單循環…………………………100
??? 6.2 WHLE 循環……………………………103
??? 6.3 數值型FOR 循環………………………110
??? 與N 選項一起使用數值型FOR 循環………………………………114
??? 與REVERSE 選項一起使用數值型FOR 循環…………………………115
??? 動手試驗………………………………117
??? 第7 章疊代控制:第二部分…………118
??? CONTNUE 語句………………………118
??? 使用CONTNUE 語句……………121
??? 使用CONTNUE WHEN 語句………………………………126
??? 嵌套循環………………………………127
??? 動手試驗………………………………133
??? 第8 章錯誤處理和內置異常…………134
??? 處理錯誤………………………………134
??? 內置異常………………………………138
??? 動手試驗………………………………146
??? 第9 章異常…………………………………147
??? 異常作用範圍…………………………147
??? 用戶定義異常…………………………154
??? 異常傳播………………………………161
??? 理解異常的傳播方式……………166
??? 再次拋出異常……………………169
??? 動手試驗………………………………171
??? 第10 章異常:高級概念………………172
??? RASE_APPLCATON_ERROR ……………172
??? EXCEPTON_NT 編譯指令……………177
??? SQLCODE 和SQLERRM ……………180
??? 動手試驗………………………………185
??? 第11 章游標簡介…………………………186
??? 游標操作………………………………186
??? 充分利用記錄類型………………190
??? 處理顯式游標……………………191
??? 充分利用游標屬性………………195
??? 集成所做的工作…………………197
??? 使用游標FOR 循環和嵌套游標………………………………200
??? 使用游標FOR 循環……………201
??? 處理嵌套的游標…………………202
??? 動手試驗………………………………206
??? 第12 章高級游標…………………………207
??? 在游標和複雜的嵌套游標中使用參數………………………………207
??? 在游標中使用參數………………208
??? 使用複雜的嵌套游標……………208
??? FOR UPDATE 和WHERE
??? CURRENT 游標………………………210
??? 第13 章觸發器……………………………214
??? 什麼是觸發器…………………………214
??? 理解什麼是觸發器………………221
??? 使用BEFORE 和AFTER 觸發器……………………………222
??? 觸發器類型……………………………225
??? 使用行觸發器和語句觸發器……230
??? 使用NSTEAD OF 觸發器………232
??? 動手試驗………………………………236
??? 第14 章複合觸發器………………………237
??? 變異表問題……………………………237
??? 複合觸發器……………………………244
??? 動手試驗………………………………256
??? 第15 章集合………………………………257
??? PL/SQL 表……………………………257
??? 使用聯合數組……………………265
??? 使用嵌套表………………………270
??? 變長數組………………………………272
??? 多層集合………………………………279
??? 動手試驗………………………………284
??? 第16 章記錄………………………………285
??? 記錄類型………………………………285
??? 使用基於表的和基於游標的記錄………………………………292
??? 使用用戶定義的記錄……………297
??? 嵌套記錄………………………………301
??? 記錄的集合……………………………306
??? 動手試驗………………………………311
??? 第17 章本地動態SQL …………………312
??? EXECUTE MMEDATE 語句……………………………………312
??? OPEN-FOR 、FETCH 和CLOSE 語句…………………………323
??? 動手試驗………………………………331
??? 第18 章批量SQL…………………………332
??? FORALL 語句…………………………332
??? BULK COLLECT 子句………………348
??? 動手試驗………………………………362
??? 第19 章過程………………………………363
??? 創建過程………………………………364
??? 創建過程…………………………364
??? 從數據字典查詢有關過程的信息………………………………366
??? 過程傳入和傳出參數…………………366
??? 動手試驗………………………………369
??? 19.3.1 第一部分…………………………369
??? 第二部分…………………………369
??? 第20 章函式………………………………370
??? 20.1 創建和使用函式………………………370
??? 創建存儲函式……………………371
??? 使用函式…………………………372
??? 在SQL 語句中調用函式…………373
??? 編寫複雜的函式…………………374
??? 動手試驗………………………………375
??? 第21 章包…………………………………376
??? 使用包的好處…………………………376
??? 創建包規範………………………378
??? 創建包體…………………………379
??? 調用存儲包………………………381
??? 創建私有對象……………………383
??? 創建包變數和游標………………386
??? 游標變數………………………………388
??? 21.3 擴展包…………………………………396
??? 動手試驗………………………………408
??? 第22 章存儲代碼…………………………409
??? 22.1 收集有關存儲代碼的信息……………409
??? 從數據字典收集存儲代碼信息…409
??? 使用RESTRCT_REFERENCES 編譯指令實現純度等級…………414
??? 重載模組…………………………419
??? 動手試驗………………………………424
??? 第23 章Oracle 中對象類型……………425
??? 對象類型………………………………425
??? 使用對象類型……………………432
??? 使用集合和對象類型……………436
??? 對象類型方法…………………………440
??? 動手試驗………………………………461
??? 第24 章Oracle 提供的包………………463
??? 使用Oracle 提供的包來配置PL/SQL 、訪問檔案和調度作業…………………463
??? 使用UTL_FLE 來訪問檔案……469
??? 使用DBMS_JOB 來調度作業…470
??? 提交作業…………………………471
??? 使用Oracle 提供的包來生成解釋計畫和創建HTML 頁面…………………473
??? 使用Oracle Web Toolkit 來創建
??? Web 頁面………………………………482
??? 附錄APL/SQL 格式化指南……………498
??? 附錄BStudent 資料庫模式……………502
??? 附錄CANS SQL 標準…………………506
??? 附錄D動手試驗部分的參考答案……510

熱門詞條

聯絡我們