內容簡介
Oracle資料庫系統是資料庫領域最優秀的資料庫之一,本書以Oracle最新版本Oracle Database 12c Release 1(12.1.0.2.0)為藍本,全面、翔實地介紹套用Oracle Database 12c資料庫管理系統進行資料庫管理的各種操作以及資料庫程式開發所需的各種知識和技能。全書共分為16章,深入闡述了OracleDatabase12c系統的基本特點、安裝和配置技術、OracleDatabase12c的體系結構、資料庫操作、數據表操作、SQL語言查詢、PL/SQL編程、索引、視圖、序列和同義詞、存儲過程和觸發器、事務和鎖、表空間、控制檔案和日誌檔案、OracleDatabase12c的安全管理、備份恢復、閃回操作等內容。
本教材內容豐富、結構合理、思路清晰、語言簡練、示例翔實。全書以一個實際的學籍管理資料庫為案例介紹OracleDatabase12c的管理和開發技術,適合“理論實踐一體化”的教學方法,將知識講解和技能訓練有機結合,融“教、學、做”於一體。本書主要面向資料庫初學者,適合作為高等院校的資料庫教材,以及各種資料庫培訓班的培訓教材,還可作為OracleDatabase12c套用開發人員的參考資料。
圖書目錄
第一篇 資料庫安裝篇
第1章 Oracle資料庫概述 1
1.1 資料庫基本概念 1
1.2 資料庫關係模型 3
1.2.1 數據模型 3
1.2.2 關係模型 4
1.3 Oracle資料庫的發展 7
1.4 Oracle Database 12c簡介 8
1.4.1 資料庫與雲計算 8
1.4.2 Oracle Database 12c的新特性 8
1.5 小結 10
1.6 習題 10
第2章 Oracle Database 12c的安裝和配置 11
2.1 安裝前的準備工作 11
2.1.1 安裝環境 11
2.1.2 資料庫安裝軟體的下載 12
2.2 安裝過程 13
2.2.1 具體安裝步驟 13
2.2.2 常用Oracle服務 19
2.3 卸載Oracle Database 12c 20
2.4 Oracle基本工具 21
2.4.1 SQL Plus 21
2.4.2 Enterprise Manager 22
2.4.3 SQL Developer 24
2.4.4 PL/SQL Developer 25
2.5 小結 27
2.6 習題 27
第3章OracleDatabase的體系結構 28
3.1存儲結構 28
3.1.1物理存儲結構 29
3.1.2邏輯存儲結構 31
3.2資料庫實例 36
3.3記憶體結構 36
3.3.1系統全局區(SGA) 38
3.3.2程式全局區(PGA) 39
3.4進程結構 39
3.4.1DBWR資料庫寫進程 40
3.4.2LGWR進程 40
3.4.3CKPT檢查點進程 41
3.4.4SMON系統監控進程 41
3.4.5PMON進程監控進程 42
3.4.6ARCH歸檔進程 42
3.4.7RECO恢復進程 42
3.4.8LCKn鎖進程 42
3.4.9Dnnn調度進程 42
3.4.10其他進程 43
3.5數據字典 43
3.6小結 43
3.7習題 44
第二篇資料庫基礎篇
第4章資料庫操作 46
4.1創建資料庫 46
4.1.1使用DBCA創建資料庫 47
4.1.2使用命令行創建資料庫 50
4.2刪除資料庫 52
4.2.1使用DBCA刪除資料庫 52
4.2.2使用命令行刪除資料庫 55
4.3資料庫的啟動和關閉 55
4.3.1概述 55
4.3.2啟動資料庫 57
4.3.3關閉資料庫 58
4.3.4資料庫狀態的改變 59
4.4小結 59
4.5習題 60
第5章數據表操作 61
5.1表概述 61
5.1.1表的構成 61
5.1.2表的數據類型 63
5.1.3表的約束類型 64
5.2創建表 65
5.2.1使用命令行創建表 65
5.2.2創建表的相關子句 66
5.2.3使用SQLDeveloper工具創建表 68
5.3修改表 69
5.3.1修改表的結構 69
5.3.2重命名表 71
5.3.3刪除表 71
5.3.4使用SQLDeveloper工具修改、刪除表 71
5.4設定數據表的完整性 72
5.4.1數據表的完整性約束概述 73
5.4.2主鍵約束 75
5.4.3唯一約束 75
5.4.4非空約束 76
5.4.5檢查約束 76
5.4.6外鍵約束 76
5.4.7刪除約束 77
5.4.8使用SQLDeveloper工具維護約束 77
5.5表中數據的操作 78
5.5.1插入數據 79
5.5.2更新數據 80
5.5.3刪除數據 80
5.5.4使用SQLDeveloper工具維護數據 80
5.6小結 81
5.7習題 82
第6章SQL語言查詢 84
6.1SQL語言概述 84
6.2簡單查詢 85
6.2.1SELECT語句的基本語法格式 85
6.2.2選擇表中的若干列 86
6.2.3選擇表中的若干行 88
6.2.4對查詢的結果排序 92
6.2.5對數據進行統計 93
6.2.6對查詢結果分組 94
6.3連線查詢 97
6.3.1交叉連線 97
6.3.2內連線 98
6.3.3外連線 100
6.4子查詢 102
6.4.1使用IN謂詞的子查詢 102
6.4.2使用比較運算符的子查詢 103
6.4.3使用ANY或ALL的子查詢 104
6.4.4使用EXISTS的子查詢 105
6.5集合操作 106
6.5.1使用UNION操作符 107
6.5.2使用INTERSECT操作符 108
6.5.3使用MINUS操作符 108
6.6使用SQLPlus編輯命令、
格式化輸出 109
6.6.1使用SQLPlus編輯命令 109
6.6.2保存、檢索並運行檔案 111
6.6.3格式化輸出列 114
6.6.4設定頁面大小和行大小 115
6.6.5清除列格式 117
6.7小結 118
6.8習題 118
第7章PL/SQL語言及編程 120
7.1PL/SQL簡介 120
7.1.1語言結構 120
7.1.2PL/SQL示例程式 121
7.2PL/SQL的基本語法 122
7.2.1變數和常量 122
7.2.2賦值語句 123
7.2.3表達式和運算符 124
7.2.4條件判斷語句 125
7.2.5循環語句 130
7.3常用函式 134
7.3.1數值型函式 134
7.3.2字元型函式 136
7.3.3日期型函式 139
7.3.4統計函式 141
7.3.5轉換函式 143
7.4游標 144
7.4.1基本原理 144
7.4.2顯式游標 145
7.4.3隱式游標 147
7.4.4游標的屬性 147
7.4.5游標變數 150
7.4.6游標FOR循環 151
7.4.7游標的更新 152
7.5異常處理 154
7.6小結 156
7.7習題 156
第8章索引、視圖、序列和同義詞 158
8.1索引 158
8.1.1索引概述 158
8.1.2索引的分類 161
8.1.3創建索引 164
8.1.4修改索引 166
8.1.5刪除索引 167
8.1.6使用SQLDeveloper工具管理索引 167
8.2視圖 169
8.2.1視圖概述 169
8.2.2創建視圖 169
8.2.3修改視圖 175
8.2.4刪除視圖 175
8.2.5使用SQLDeveloper工具管理視圖 175
8.3序列 176
8.3.1創建序列 177
8.3.2修改序列 179
8.3.3刪除序列 179
8.3.4使用序列 179
8.3.5使用SQLDeveloper工具創建和維護序列 180
8.4同義詞 181
8.5小結 183
8.6習題 183
第9章存儲過程、函式、觸發器和程式包 185
9.1存儲過程 185
9.1.1存儲過程概述 185
9.1.2創建和執行存儲過程 186
9.1.3帶參數的存儲過程 188
9.1.4為過程添加局部變數和子過程 193
9.1.5修改和刪除存儲過程 195
9.1.6使用SQLDeveloper工具管理存儲過程 195
9.2函式 196
9.2.1創建函式 196
9.2.2調用函式 198
9.2.3刪除函式 198
9.2.4使用SQLDeveloper工具管理函式 199
9.3觸發器 199
9.3.1觸發器概述 199
9.3.2DML觸發器 202
9.3.3替代觸發器 207
9.3.4系統事件觸發器 209
9.3.5用戶事件觸發器 209
9.3.6管理觸發器 211
9.3.7使用SQLDeveloper工具管理觸發器 212
9.4包 214
9.4.1包概述 215
9.4.2包的定義 215
9.4.3包的使用 218
9.4.4獲取有關包中函式和過程的信息 220
9.4.5刪除包 220
9.4.6OracleDatabase12c的內置包 220
9.4.7使用SQLDeveloper工具管理包 221
9.5小結 222
9.6習題 223
第10章事務和鎖 225
10.1事務 225
10.1.1事務概述 225
10.1.2事務的特性 226
10.1.3事務的類型 226
10.1.4事務的保存點 228
10.2鎖 229
10.2.1鎖概述 229
10.2.2鎖的分類 229
10.2.3鎖的類型 230
10.2.4加鎖的方法 232
10.2.5死鎖 234
10.3小結 235
10.4習題 235
第三篇資料庫管理篇
第11章表空間操作 237
11.1表空間概述 237
11.2表空間管理 239
11.2.1創建表空間 239
11.2.2查看錶空間 241
11.2.3維護表空間 242
11.2.4創建大檔案表空間 244
11.2.5刪除表空間 245
11.3臨時表空間 245
11.3.1創建臨時表空間 246
11.3.2查看臨時表空間 246
11.3.3臨時表空間組 247
11.4撤銷表空間 249
11.5數據檔案 250
11.5.1移動和重命名數據檔案 250
11.5.2刪除數據檔案 251
11.6小結 251
11.7習題 252
第12章控制檔案和日誌檔案的管理 253
12.1控制檔案管理 253
12.1.1控制檔案概述 253
12.1.2查看控制檔案基本信息 254
12.1.3控制檔案的備份和恢復 256
12.1.4控制檔案的刪除 257
12.2重做日誌管理 257
12.2.1重做日誌概述 257
12.2.2創建重做日誌組及成員 259
12.2.3修改重做日誌檔案的存儲位置和名稱 260
12.2.4刪除重做日誌檔案 261
12.2.5清空重做日誌檔案 262
12.2.6重做日誌檔案的切換 263
12.2.7查看重做日誌檔案 263
12.2.8使用OEM管理重做日誌檔案 264
12.3歸檔日誌管理 265
12.3.1歸檔日誌概述 265
12.3.2管理歸檔模式 266
12.3.3設定歸檔位置 267
12.3.4查看歸檔日誌信息 268
12.4小結 269
12.5習題 269
第13章安全性管理 271
13.1概述 271
13.2用戶管理 271
13.2.1初始用戶 272
13.2.2用戶相關屬性 272
13.2.3創建用戶 273
13.2.4修改用戶 276
13.2.5刪除用戶 277
13.2.6查詢用戶信息 277
13.3許可權管理 278
13.3.1許可權概述 278
13.3.2系統許可權管理 279
13.3.3對象許可權管理 281
13.3.4許可權查詢 282
13.4角色管理 282
13.4.1角色概述 283
13.4.2創建角色 283
13.4.3角色授權 284
13.4.4角色的啟用和禁用 284
13.4.5修改角色 285
13.4.6刪除角色 286
13.4.7查詢角色信息 286
13.5小結 287
13.6習題 287
第14章備份與恢復 289
14.1備份與恢復概述 289
14.2備份與恢復分類 290
14.2.1備份分類 290
14.2.2恢復分類 291
14.3備份與恢複方法 292
14.3.1備份與恢複方法概述 292
14.3.2使用命令行執行資料庫備份 294
14.3.3使用命令行執行資料庫恢復 297
14.3.4恢復管理器(RMAN)的使用 299
14.4小結 301
14.5習題 302
第15章Oracle閃回技術 303
15.1閃回技術概述 303
15.2閃回資料庫 304
15.2.1啟動閃回資料庫 305
15.2.2使用閃回資料庫 306
15.3閃回表 308
15.4閃回查詢 309
15.5閃回版本查詢 310
15.6閃回丟棄 311
15.7小結 313
15.8習題 313
第四篇資料庫設計篇
第16章實驗室管理系統 314
16.1ADO.NET組件 314
16.1.1Connection對象 314
16.1.2Command對象 315
16.1.3DataSetCommand對象 315
16.1.4DataSet對象 315
16.1.5DataReader對象 315
16.2實驗室管理系統設計 316
16.2.1實驗室管理系統架構設計 316
16.2.2實驗室管理系統功能設計 317
16.2.3實驗室管理系統資料庫設計 318
16.2.4系統功能模組實現 321
16.3小結 329
附錄A實驗 330
實驗1初識OracleDatabase12c 330
實驗2資料庫管理 332
實驗3數據表的管理 333
實驗4數據查詢 337
實驗5索引、視圖和序列 338
實驗6PL/SQL編程 340
實驗7存儲過程、函式和觸發器 341
實驗8安全管理 342
附錄BPL/SQL常用系統函式 344
B.1常用數學函式 344
B.2Oracle常用字元串函式 345
B.3Oracle常用日期函式 346
B.4Oracle常用轉換函式 346
附錄CPL/SQL標準異常 348
附錄DOracleDatabase12c
辭彙集錦 349
參考文獻 354