[www.ed2k.online]下載基地為您提供軟件、遊戲、圖書、教育等各種資源的ED2K電驢共享下載和MAGNET磁力鏈接下載。
設為首頁
加入收藏
首頁 圖書資源 軟件資源 游戲資源 教育資源 其他資源
 電驢下載基地 >> 图书资源 >> 計算機與網絡 >> 《Oracle PL/SQL程序設計(第5版)(上下冊)》掃描版[PDF]
《Oracle PL/SQL程序設計(第5版)(上下冊)》掃描版[PDF]
下載分級 图书资源
資源類別 計算機與網絡
發布時間 2017/7/10
大       小 -
《Oracle PL/SQL程序設計(第5版)(上下冊)》掃描版[PDF] 簡介: 中文名 : Oracle PL/SQL程序設計(第5版)(上下冊) 作者 : 弗伊爾斯坦(Steven Feuerstein) 普瑞拜爾(Bill Pribyl) 譯者 : 張曉明 圖書分類 : 軟件 資源格式 : PDF 版本 : 掃描版 出版社 : 人民郵電出版社 書號 : 9787115231437 發行時間 : 2011年07月01日 地區 : 美國 語言 :
電驢資源下載/磁力鏈接資源下載:
全選
"《Oracle PL/SQL程序設計(第5版)(上下冊)》掃描版[PDF]"介紹
中文名: Oracle PL/SQL程序設計(第5版)(上下冊)
作者: 弗伊爾斯坦(Steven Feuerstein)
普瑞拜爾(Bill Pribyl)
譯者: 張曉明
圖書分類: 軟件
資源格式: PDF
版本: 掃描版
出版社: 人民郵電出版社
書號: 9787115231437
發行時間: 2011年07月01日
地區: 美國
語言: 簡體中文
簡介:



編輯推薦
近15年來,成千上萬的PL/SQL程序員──無論是初學者還是經驗豐富的開發者──都同樣需要依賴《Oracle PL/SQL程序設計》來幫助他們充分掌握和應用這門功能強大的語言。
第5版是基於Oracle數據庫11g的R1、R2兩個版本的最新版,包含了語法、建議、大量實例和許多新的信息。
?了解新特征,包括基於版本的重定義功能、函數結果緩存功能、CONTINUE語句、復合觸發器和針對大對象的SecureFiles。
? 使用工具和技巧來優化PL/SQL性能,例如PL/Scope和PL/SQL中的層次化profiler。
? 探討了數據類型、條件控制語句和順序控制語句、循環、異常處理、安全特性、全球化和本地化問題, 以及PL/SQL架構。
? 通過使用過程、函數、觸發器和包,建立模塊化的PL/SQL應用。
內容推薦
《Oracle PL/SQL程序設計(第5版)》基於Oracle數據庫11g,從PL/SQL編程、PL/SQL程序結構、PL/SQL程序數據、PL/SQL中的SQL、PL/SQL應用構建、高級PL/SQL主題這6個方面詳細系統地討論了PL/SQL以及如何有效地使用它。本書能夠幫助你充分利用PL/SQL來解決數據庫開發中遇到的各種問題,引導你掌握各種構建應用的技巧和技術,以便使你編寫出高效、可維護的代碼。《Oracle PL/SQL程序設計(第5版)》不但介紹了大量的Oracle 11g的PL/SQL新性能,還提供了許多優化PL/SQL性能的新方法。   《Oracle PL/SQL程序設計(第5版)》結構清晰,示例豐富,實踐性強,適用於Oracle數據庫開發人員、Oracle數據庫管理員等相關數據庫從業人員,也可以作為各大、中專院校相關專業師生的參考用書和相關培訓機構的培訓教材。
內容截圖


網盤下載
http://pan.baidu.com/share/link?shareid=318689&uk=1309655855


目錄:


目 錄(上冊)
第1部分 PL/SQL編程
第1章 PL/SQL概述 3
1.1 什麼是PL/SQL? 3
1.2 PL/SQL的起源 4
1.2.1 早期的PL/SQL 4
1.2.2 改進的應用程序移植能力 5
1.2.3 改進的執行授權和事務一致性 5
1.2.4 低調地起步,穩定地前進 6
1.3 這就是PL/SQL 6
1.3.1 與SQL整合 7
1.3.2 控制和條件邏輯 8
1.3.3 出現錯誤了 9
1.4 關於PL/SQL的版本 10
1.4.1 Oracle數據庫11g的新特性 12
1.5 PL/SQL開發人員的資源 15
1.5.1 O’Reilly PL/SQL系列 16
1.5.2 網絡上的PL/SQL 17
1.6 一些建議 18
1.6.1 不要太著急 18
1.6.2 不要怕尋求幫助 19
1.6.3 采用一種創建新的甚至激進的方法 20
第2章 創建並運行PL/SQL代碼 21
2.1 在數據庫中導航 21
2.2 創建和編輯源代碼 22
2.3 SQL*Plus 23
2.3.1 啟動SQL*Plus 24
2.3.2 運行一個SQL語句 26
2.3.3 運行PL/SQL程序 26
2.3.4 運行腳本 28
2.3.5 什麼是“當前目錄” 29
2.3.6 其他SQL*Plus任務 30
2.3.7 SQL*Plus中的錯誤處理 34
2.3.8 喜歡或者討厭SQL*Plus的原因 34
2.4 執行必要的PL/SQL任務 35
2.4.1 創建存儲過程 35
2.4.2 執行存儲過程 39
2.4.3 顯示存儲過程 39
2.4.4 存儲程序的授權和別名 40
2.4.5 刪除存儲程序 41
2.4.6 隱藏存儲過程的源代碼 41
2.5 編輯PL/SQL的環境 42
2.6 在其他語言中調用PL/SQL 43
2.6.1 C:使用Oracle的預編譯器(Pro*C) 44
2.6.2 Java:使用JDBC 45
2.6.3 Perl:使用Perl DBI和DBD::Oracle 46
2.6.4 PHP:使用Oracle擴展 47
2.6.5 PL/SQL Server Pages 48
2.6.6 其他 49
第3章 語言基礎 50
3.1 PL/SQL塊結構 50
3.1.1 匿名塊 52
3.1.2 命名塊 53
3.1.3 嵌套塊 54
3.1.4 作用范圍 55
3.1.5 規范SQL語句中所有對變量和列的引用 56
3.1.6 可見性 58
3.2 PL/SQL字符集 61
3.3 標識符 63
3.3.1 保留字 64
3.3.2 空白和關鍵詞 66
3.4 直接量 66
3.4.1 NULL 67
3.4.2 在一個直接量字符串中嵌入單引號 68
3.4.3 數字直接量 69
3.4.4 布爾直接量 70
3.5 分號分隔符 70
3.6 注釋 70
3.6.1 單行注釋語法 71
3.6.2 多行注釋語法 71
3.7 PRAGMA關鍵字 72
3.8 標簽 73
第2部分 PL/SQL程序結構
第4章 條件和順序控制 77
4.1 IF語句 77
4.1.1 IF-THEN組合 78
4.1.2 IF-THEN-ELSE組合 80
4.1.3 IF-THEN-ELSIF組合 81
4.1.4 避免IF語法陷阱 82
4.1.5 嵌套的IF語句 84
4.1.6 短路求值 84
4.2 CASE語句和表達式 86
4.2.1 簡單的CASE語句 87
4.2.2 搜索型CASE語句 88
4.2.3 嵌套的CASE語句 90
4.2.4 CASE表達式 91
4.3 GOTO語句 93
4.4 NULL語句 94
4.4.1 增加程序的可讀性 94
4.4.2 在標簽之後使用NULL 95
第5章 用循環進行迭代處理 96
5.1 循環的基礎知識 96
5.1.1 不同循環的例子 97
5.1.2 PL/SQL循環結構 98
5.2 簡單循環 99
5.2.1 終止簡單循環:EXIT和EXIT WHEN 100
5.2.2 模仿一個REPEAT UNTIL循環 101
5.2.3 人為的無限循環 101
5.3 WHILE循環 103
5.4 數值型的FOR循環 104
5.4.1 使用數值型FOR循環的規則 105
5.4.2 數值型FOR循環的例子 105
5.4.3 處理非平滑增長 106
5.5 游標FOR循環 107
5.5.1 游標型FOR循環的例子 108
5.6 循環的標簽 109
5.7 CONTINUE語句 110
5.8 迭代處理的技巧 113
5.8.1 循環索引使用容易理解的名稱 113
5.8.2 好的退出方式 114
5.8.3 獲得FOR循環執行信息 115
5.8.4 循環式的SQL語句 116
第6章 異常處理 118
6.1 異常處理概念和術語 118
6.2 定義異常 120
6.2.1 聲明有名異常 121
6.2.2 異常名稱和錯誤代碼相互關聯 122
6.2.3 被命名的系統異常 125
6.2.4 異常的作用范圍 127
6.3 拋出異常 128
6.3.1 RAISE語句 128
6.3.2 使用RAISE_APPLICATION_ERROR 129
6.4 處理異常 130
6.4.1 內置的錯誤函數 132
6.4.2 在一個單獨的句柄中包含多個異常 137
6.4.3 未處理的異常 137
6.4.4 傳播未處理異常 138
6.4.5 異常後繼續 140
6.4.6 WHEN OTHERS的處理代碼 142
6.5 構建一個有效的錯誤管理架構 144
6.5.1 確定異常管理策略 145
6.5.2 組織好對應用專有錯誤代碼的使用 148
6.5.3 使用標准化的錯誤管理程序 149
6.5.4 使用自己的異常對象 151
6.5.5 創建通用錯誤處理的標准模板 153
6.6 充分利用PL/SQL錯誤管理 155
第3部分 PL/SQL數據
第7章 使用數據 159
7.1 程序數據的命名 159
7.2 PL/SQL數據類型概述 161
7.2.1 字符數據 162
7.2.2 數字 162
7.2.3 日期、時間戳和時間間隔 163
7.2.4 布爾類型 164
7.2.5 二進制數據類型 164
7.2.6 ROWIDs 165
7.2.7 REF CURSORs 165
7.2.8 Internet數據類型 165
7.2.9 “Any”數據類型 166
7.2.10 用戶定義數據類型 166
7.3 程序數據的聲明 166
7.3.1 聲明一個變量 167
7.3.2 聲明常量 168
7.3.3 NOT NULL語句 168
7.3.4 錨定聲明 168
7.3.5 游標和表的錨 170
7.3.6 使用錨定聲明的好處 171
7.3.7 NOT NULL數據類型的錨 172
7.4 程序員定義的子類型 173
7.5 數據類型轉換 174
7.5.1 隱式類型轉換 174
7.5.2 顯式類型轉換 176
第8章 字符串 182
8.1 字符串類型 182
8.1.1 VARCHAR2數據類型 183
8.1.2 CHAR數據類型 184
8.1.3 String子類型 185
8.2 使用字符串 186
8.2.1 字符串常量 186
8.2.2 不可打印字符 187
8.2.3 拼接字符串 188
8.2.4 處理大小寫 189
8.2.5 傳統的檢索、提取和替換 192
8.2.6 補齊 194
8.2.7 正則表達式的檢索、提取和替換 197
8.2.8 使用空字符串 208
8.2.9 混用CHAR和VARCHAR2 210
8.3 字符串函數快速參考 212
第9章 數字 221
9.1 數值型數字類型 221
9.1.1 NUMBER類型 222
9.1.2 PLS_INTEGER類型 227
9.1.3 BINARY_INTEGER類型 228
9.1.4 SIMPLE_INTEGER類型 228
9.1.5 BINARY_FLOAT和BINARY_DOUBLE類型 230
9.1.6 SIMPLE_FLOAT和SIMPLE_DOUBLE類型 235
9.1.7 數字子類型 235
9.2 數字轉換 237
9.2.1 TO_NUMBER函數 237
9.2.2 TO_CHAR函數 240
9.2.3 CAST函數 246
9.2.4 隱式轉換 246
9.3 數字運算符 248
9.4 數字函數 249
9.4.1 四捨五入和截斷函數 249
9.4.2 三角函數 250
9.4.3 數字函數的快速參考 250
第10章 日期和時間戳 255
10.1 Datatime數據類型 255
10.1.1 聲明日期時間變量 258
10.1.2 選擇日期時間數據類型 259
10.2 得到當前日期和時間 259
10.3 INTERVAL數據類型 262
10.3.1 聲明INTERVAL變量 263
10.3.2 什麼時候使用INTERVAL 264
10.4 日期時間轉換 266
10.4.1 從字符串到日期時間 266
10.4.2 從日期時間到字符串 269
10.4.3 使用時區 271
10.4.4 精確匹配需要格式掩碼 274
10.4.5 讓精確匹配更容易 275
10.4.6 解釋滑動窗口中兩位數字的年份 275
10.4.7 把時區轉換成字符串 276
10.4.8 用填充模式把輸出補齊 277
10.5 日期和時間戳直接量 278
10.6 時間間隔的轉換 279
10.6.1 從數字到時間間隔的轉換 280
10.6.2 把字符串轉換成間隔 281
10.6.3 時間間隔的格式化顯示 281
10.7 時間間隔直接量 282
10.8 CAST和EXTRACT 284
10.8.1 CAST函數 284
10.8.2 EXTRACT函數 285
10.9 日期時間的算法 286
10.9.1 時間間隔和日期時間的算法 286
10.9.2 DATE數據類型的日期算法 287
10.9.3 計算兩個日期時間之間的時間間隔 288
10.9.4 DATE和TIMESTAMP混合計算 290
10.9.5 時間間隔的加減運算 291
10.9.6 時間間隔的乘除運算 292
10.9.7 使用不受限制的時間間隔類型 293
10.10 日期/時間函數的快速參考 294
第11章 記錄類型 297
11.1 PL/SQL中的記錄 297
11.1.1 使用記錄的好處 298
11.1.2 聲明記錄 300
11.1.3 程序員自定義的記錄類型 301
11.1.4 使用記錄類型 304
11.1.5 記錄的比較 310
11.1.6 觸發器偽記錄 311
第12章 集合 313
12.1 集合概述 314
12.1.1 集合概念和術語 314
12.1.2 集合類型 316
12.1.3 集合示例 317
12.1.4 使用集合的場合 321
12.1.5 選擇一個集合類型 326
12.2 集合方法(內置) 327
12.2.1 COUNT方法 328
12.2.2 DELETE方法 329
12.2.3 EXISTS方法 330
12.2.4 EXTEND方法 331
12.2.5 FIRST和LAST方法 332
12.2.6 LIMIT方法 333
12.2.7 PRIOR和NEXT方法 333
12.2.8 TRIM方法 334
12.3 使用集合 335
12.3.1 聲明集合類型 336
12.3.2 集合變量的聲明和初始化 340
12.3.3 用數據填充集合 345
12.3.4 訪問集合內的數據 350
12.3.5 使用字符串索引的集合 350
12.3.6 復雜數據類型的集合 356
12.3.7 多級集合 359
12.3.8 在SQL中使用集合 367
12.4 嵌套表的多重集合操作 372
12.4.1 測試嵌套表是否相等及成員屬性 374
12.4.2 檢查元素是否是嵌套表的成員 375
12.4.3 執行高級集合操作 376
12.4.4 處理嵌套表中的重復數據 377
12.5 模式級別集合的維護 379
12.5.1 必需的權限 379
12.5.2 集合和數據字典 379
第13章 其他數據類型 381
13.1 BOLEAN類型 381
13.2 RAW數據類型 382
13.3 UROWID和ROWID數據類型 383
13.3.1 獲得ROWID 384
13.3.2 使用ROWID 384
13.4 LOB數據類型 386
13.5 使用LOB 387
13.5.1 理解LOB定位符 389
13.5.2 LOB的空和NULL 390
13.5.3 向LOB中寫入數據 392
13.5.4 讀取LOB數據 395
13.5.5 BFILE不同於其他 396
13.5.6 SecureFiles和BasicFiles 401
13.5.7 臨時LOB 403
13.5.8 原生的LOB操作 406
13.5.9 LOB轉換函數 410
13.6 預定義的對象類型 411
13.6.1 XMLType類型 411
13.6.2 URI類型 415
13.6.3 Any類型 417
第4部分 PL/SQL中的SQL
第14章 DML和事務管理 423
14.1 PL/SQL中的DML 424
14.1.1 DML語句的快速入門 424
14.1.2 DML操作的游標屬性 428
14.1.3 從DML語句返回信息 429
14.1.4 DML和異常處理 430
14.1.5 DML和記錄 431
14.2 事務管理 434
14.2.1 COMMIT語句 434
14.2.2 ROLLBACK語句 435
14.2.3 SAVEPOINT語句 436
14.2.4 SET TRANSACTION命令 436
14.2.5 LOCK TABLE語句 437
14.3 自治事務 438
14.3.1 定義自治事務 438
14.3.2 自治事務的規則和限制 439
14.3.3 事務的可見性 440
14.3.4 什麼時候使用自治事務 440
14.3.5 構建一個自治的日志機制 441
第15章 數據提取 444
15.1 游標基礎 445
15.1.1 一些有關數據提取的術語 446
15.1.2 典型的查詢操作 447
15.1.3 游標屬性介紹 448
15.1.4 在游標中使用PL/SQL變量 451
15.1.5 在顯式游標和隱式游標間做選擇 451
15.2 使用隱式游標 452
15.2.1 隱式游標的例子 453
15.2.2 隱式游標的異常處理 454
15.2.3 隱式SQL的游標屬性 456
15.3 使用顯式游標 458
15.3.1 聲明顯式游標 459
15.3.2 打開顯式游標 462
15.3.3 從顯式游標中提取數據 463
15.3.4 顯式游標中的列別名 464
15.3.5 關閉顯式游標 465
15.3.6 顯式游標的屬性 467
15.3.7 游標參數 469
15.4 SELECT…FOR UPDATE 472
15.4.1 用COMMIT釋放鎖資源 473
15.4.2 WHERE CURRENT OF語句 474
15.5 游標變量和REF CURSOR 475
15.5.1 為什麼用游標變量 476
15.5.2 和靜態游標的相同點 477
15.5.3 聲明REF CURSOR類型 478
15.5.4 聲明游標變量 478
15.5.5 打開游標變量 479
15.5.6 從一個游標變量獲取數據 480
15.5.7 游標變量的使用規則 483
15.5.8 游標變量作為參數傳遞 486
15.5.9 游標變量的約束限制 488
15.6 游標表達式 488
15.6.1 使用游標表示式 489
15.6.2 游標表達式的約束限制 491
第16章 動態SQL和動態PL/SQL 492
16.1 NDS語句 493
16.1.1 EXECUTE IMMEDIATE語句 493
16.1.2 OPEN FOR語句 496
16.1.3 4種動態SQL方法 502
16.2 綁定變量 503
16.2.1 參數模式 504
16.2.2 重復的占位符 506
16.2.3 NULL值的傳遞 507
16.3 使用對象和集合 508
16.4 動態PL/SQL 510
16.4.1 構建動態PL/SQL塊 511
16.4.2 用動態塊替換重復的代碼 513
16.5 NDS的建議 513
16.5.1 對於共享的程序使用調用者權限 514
16.5.2 預估並處理動態的錯誤 514
16.5.3 使用綁定而不是拼接 516
16.5.4 把代碼注入的風險最小化 518
16.6 什麼時候使用DBMS_SQL 521
16.6.1 解析非常長的字符串 521
16.6.2 得到查詢的列的信息 522
16.6.3 實現第4種方法的動態SQL的需求 524
16.6.4 把動態游標的解析最小化 530
16.7 Oracle數據庫11g新特性 532
16.7.1 DBMS_SQL.TO_REFCURSOR函數 532
16.7.2 DBMS_SQL.TO_CURSOR函數 534
16.7.3 DBMS_SQL的安全性增強 536
目 錄(下冊)
第5部分 構造PL/SQL應用程序
第17章 過程、函數與參數 543
17.1 代碼模塊化 543
17.2 過程 545
17.2.1 調用一個過程 547
17.2.2 過程的頭部 548
17.2.3 過程體 548
17.2.4 END標簽 548
17.2.5 RETURN語句 549
17.3 函數 549
17.3.1 函數的結構 549
17.3.2 返回的數據類型 552
17.3.3 END標簽 552
17.3.4 調用函數 553
17.3.5 不帶參數的函數 554
17.3.6 函數的頭部 554
17.3.7 函數體 555
17.3.8 RETURN語句 555
17.4 參數 557
17.4.1 定義參數 558
17.4.2 形參和實參 558
17.4.3 參數模式 559
17.4.4 在PL/SQL中明確地把形參和實參關聯在一起 562
17.4.5 NOCOPY參數模式限定符 566
17.4.6 缺省值 566
17.5 局部或者嵌套模塊 567
17.5.1 使用局部模塊的好處 568
17.5.2 局部模塊的作用范圍 571
17.5.3 用局部模塊讓我們的代碼更整潔 571
17.6 模塊重載 572
17.6.1 使用重載的好處 573
17.6.2 重載的限制 576
17.6.3 關於數字類型的重載 576
17.7 前置聲明 577
17.8 高級主題 579
17.8.1 在SQL中調用我們的函數 579
17.8.2 表函數 581
17.8.3 確定性函數 591
17.9 把模塊化進行到底 592
第18章 包 593
18.1 為什麼是包? 593
18.1.1 演示包的能力 594
18.1.2 有關包的一些概念 597
18.1.3 圖示私有性 599
18.2 構建包的規則 599
18.2.1 包規范 600
18.2.2 包體 601
18.2.3 包的初始化 603
18.3 包成員的調用規則 607
18.4 使用包數據 608
18.4.1 在一個Oracle會話內全局可見 609
18.4.2 全局公有數據 609
18.4.3 包游標 610
18.4.4 包的串行化 614
18.5 何時使用包 617
18.5.1 封裝對數據的訪問 617
18.5.2 避免直接量的硬編碼 620
18.5.3 改善內置特性的可用性 622
18.5.4 把邏輯上相關的功能組織在一起 623
18.5.5 緩存靜態的會話數據 624
18.6 包和對象類型 624
第19章 觸發器 626
19.1 DML觸發器 627
19.1.1 DML觸發器的概念 628
19.1.2 創建DML觸發器 630
19.1.3 DML觸發器的例子:不許作弊! 635
19.1.4 同一類型的多個觸發器 641
19.1.5 何去何從 642
19.1.6 突變表的錯誤 644
19.1.7 復合觸發器:聚集一堂 645
19.2 DDL觸發器 648
19.2.1 創建DDL觸發器 649
19.2.2 可用事件 651
19.2.3 可用屬性 652
19.2.4 使用事件和屬性 653
19.2.5 刪除不可刪除的 657
19.2.6 INSTEAD OF CREATE 觸發器 657
19.3 數據庫事件觸發器 659
19.3.1 創建數據庫事件觸發器 659
19.3.2 STARTUP觸發器 660
19.3.3 SHUTDOWN觸發器 661
19.3.4 LOGON觸發器 661
19.3.5 LOGOFF觸發器 661
19.3.6 SERVERERROR觸發器 662
19.4 INSTEAD OF觸發器 666
19.4.1 創建INSTEAD OF觸發器 666
19.4.2 INSTEAD OF INSERT觸發器 668
19.4.3 INSTEAD OF UPDATE觸發器 670
19.4.4 INSTEAD OF DELETE觸發器 671
19.4.5 填充表 671
19.4.6 嵌套表的INSTEAD OF觸發器 672
19.5 AFTER SUSPEND觸發器 674
19.5.1 構建AFTER SUSPEND觸發器 674
19.5.2 看看真實的觸發器 676
19.5.3 ORA_SPACE_ERROR_INFO函數 677
19.5.4 DBMS_RESUMABLE包 678
19.5.5 捕獲多個時間 679
19.5.6 該不該處理? 680
19.6 管理觸發器 680
19.6.1 禁用、啟用以及刪除觸發器 680
19.6.2 創建一個禁用的觸發器 681
19.6.3 查看觸發器 682
19.6.4 檢查觸發器的有效性 684
第20章 管理PL/SQL代碼 685
20.1 管理數據庫內的代碼 686
20.1.1 數據字典視圖概述 687
20.1.2 顯示存儲對象的信息 688
20.1.3 源代碼的顯示和搜索 689
20.1.4 根據程序的大小確定Pinning需求 691
20.1.5 獲得存儲代碼的屬性 692
20.1.6 通過視圖分析和更改觸發器狀態 693
20.1.7 分析參數信息 693
20.1.8 分析標識符的使用(Oracle 數據庫11g的PL/Scope) 695
20.2 依賴關系的管理以及代碼的重編譯 697
20.2.1 通過數據字典視圖分析依賴關系 698
20.2.2 細粒度依賴(Oracle數據庫11g) 702
20.2.3 遠程依賴 703
20.2.4 Oracle的遠程調用模式的限制 706
20.2.5 失效的程序單元的重編譯 707
20.3 編譯時刻警告 711
20.3.1 一個入門例子 711
20.3.2 啟用編譯時刻警告 712
20.3.3 一些有用的警告 714
20.4 PL/SQL程序的測試 722
20.4.1 典型的、華而不實的測試技術 723
20.4.2 PL/SQL代碼測試的一般建議 726
20.4.3 PL/SQL的自動測試選項 727
20.4.4 用utPLSQL測試 728
20.4.5 用Quest Code Tester for Oracle測試 730
20.5 跟蹤PL/SQL的執行 732
20.5.1 DBMS_APPLICATION_INFO 734
20.5.2 Quest Error Manager跟蹤 736
20.5.3 DBMS_TRACE功能 738
20.6 PL/SQL程序的調試 741
20.6.1 錯誤的調試方法 741
20.6.2 調試技巧和策略 743
20.7 保護存儲過程代碼 747
20.7.1 包裝的約束和限制 747
20.7.2 使用包裝功能 748
20.7.3 通過DBMS_DDL動態包裝 748
20.7.4 包裝過的代碼的使用指南 749
20.8 基於版本的重定義(Oracle數據庫11g R2版本) 750
第21章 PL/SQL的性能優化 753
21.1 輔助優化的工具 754
21.1.1 內存使用分析 755
21.1.2 發現PL/SQL代碼中的瓶頸所在 755
21.1.3 計算消耗時間 760
21.1.4 選擇最快的程序 762
21.1.5 避免無限循環 763
21.1.6 性能相關警告 764
21.2 優化過的編譯器 765
21.2.1 優化器的工作原理 766
21.2.2 循環Fetch操作的運行時優化 769
21.3 數據緩存技術 770
21.3.1 基於包的緩存 771
21.3.2 確定性函數的緩存 776
21.3.3 函數結果緩存(Oracle數據庫11g) 778
21.3.4 緩存總結 790
21.4 多行SQL的批處理 790
21.4.1 通過BULK COLLECT加速查詢 792
21.4.2 通過FORALL加速DML 798
21.5 利用管道化的表函數提升性能 808
21.5.1 用基於管道化函數的加載方式替換基於行的插入 809
21.5.2 用管道函數調優Merge操作 816
21.5.3 用並行管道函數進行異步的數據卸載 818
21.5.4 並行管道函數中的分區子句和流子句對性能的影響 822
21.5.5 管道函數和基於成本的優化器 823
21.5.6 用管道函數優化復雜的數據加載 829
21.5.7 管道函數結束語 836
21.6 專用的優化技術 837
21.6.1 使用NOCOPY參數模式提示符 837
21.6.2 使用正確的數據類型 840
21.7 回顧性能 841
第22章 I/O操作和PL/SQL 843
22.1 顯示信息 843
22.1.1 啟用DBMS_OUTPUT 844
22.1.2 向緩存中寫入行 844
22.1.3 從緩存中讀取內容 845
22.2 文件的讀寫 846
22.2.1 UTL_FILE_DIR參數 847
22.2.2 使用Oracle目錄 848
22.2.3 打開文件 850
22.2.4 文件已經打開了嗎? 852
22.2.5 關閉文件 852
22.2.6 讀取文件 853
22.2.7 向文件中寫 855
22.2.8 拷貝文件 858
22.2.9 刪除文件 859
22.2.10 文件改名和文件移動 859
22.2.11 提取文件屬性 860
22.3 發送郵件 861
22.3.1 Oracle的前提條件 862
22.3.2 配置網絡安全 863
22.3.3 發送一個短的(32 767或者更少)的純文本消息 863
22.3.4 在郵件地址中加上“友好”的名字 865
22.3.5 發送任意長度的純文本消息 866
22.3.6 發送帶有小附件(



相關資源:

免責聲明:本網站內容收集於互聯網,本站不承擔任何由於內容的合法性及健康性所引起的爭議和法律責任。如果侵犯了你的權益,請通知我們,我們會及時刪除相關內容,謝謝合作! 聯系信箱:[email protected]

Copyright © 電驢下載基地 All Rights Reserved