《Oracle 11g資料庫編程入門與實戰》是2010年6月人民郵電出版社出版的圖書,作者是寧麗娟、劉文菊。
基本介紹
- 中文名:Oracle 11g資料庫編程入門與實戰
- 作者:寧麗娟、劉文菊
- 出版社:人民郵電出版社
- 出版時間:2010年6月
- 頁數:463 頁
- 定價:49.8 元
- 開本:16 開
- 裝幀:平裝
- ISBN:9787115223463
內容簡介,圖書目錄,
內容簡介
本書是Oracle 11g的入門教材,是初學者快速掌握Oracle資料庫的途徑,尤其適合Oracle資料庫套用開發人員閱讀,來獲得應具備的資料庫方面的知識和技能。本書從如何安裝Oracle資料庫入手,到如何掌握和Oracle互動的SQL語言和PL/SQL編程,逐步延伸到資料庫的體系結構,並以此為基礎,介紹資料庫的SQL語句最佳化和備份恢復等內容。
本書內容共11章,分為5個部分。第 1部分是Oracle基礎,包括Oracle 11g的安裝、SQL語言、資料庫對象的管理、PL/SQL編程等;第 2部分是Oracle體系結構;第3部分是Oracle資料庫的用戶及安全管理;第4部分是資料庫中的SQL語句最佳化;第5部分是從程式設計師的角度來看資料庫的備份和恢復。
圖書目錄
第 1章 Oracle 11g的安裝 1
1.1 安裝要求 2
1.2 下載Oracle資料庫 2
1.3 安裝Oracle資料庫 3
1.4 Oracle的啟動和關閉 7
1.5 下載Oracle幫助文檔 8
本章小結 8
第 2章 SQL基礎 9
2.1 資料庫管理系統(DBMS)概述 10
2.1.1 資料庫的產生 10
2.1.2 關係型資料庫 10
2.1.3 常見的關係型資料庫 12
2.2 SQL概述 13
2.2.1 SQL語言的定義 13
2.2.2 SQL語言的特點 14
2.2.3 SQL語言的分類 14
2.2.4 SQL語言的編寫規範 15
2.3 Oracle資料庫概述 16
2.3.1 Oracle資料庫的發展史 16
2.3.2 Oracle資料庫對象 17
2.3.3 Oracle資料庫中的用戶 18
2.3.4 Oracle資料庫中樣例表 19
2.4 Oracle的主要開發工具SQL*Plus 21
2.4.1 SQL*Plus簡介 21
2.4.2 SQL*Plus的啟動和退出 21
2.4.3 SQL*Plus編輯命令 24
2.4.4 SQL*Plus檔案命令 27
2.4.5 SQL*Plus格式化輸出結果命令 29
2.4.6 SQL*Plus環境設定和顯示命令 33
2.4.7 SQL*Plus中的互動命令 36
2.4.8 定製SQL*Plus環境參數 40
2.5 Oracle其他開發工具介紹 41
2.5.1 Oracle SQL Developer 41
2.5.2 TOAD for Oracle Application Developers 45
2.5.3 PL/SQL Developer 45
2.5.4 幾種開發工具的對比 46
本章小節 47
練習題 47
第3章 SQL查詢 51
3.1 基本查詢 50
3.1.1 簡單查詢語句 50
3.1.2 查詢所有的列 50
3.1.3 查詢指定列 50
3.1.4 去掉重複值 51
3.1.5 查詢語句中使用算術表達式 53
3.1.6 查詢語句中使用列的別名 53
3.1.7 查詢語句中使用連線表達式 54
3.1.8 處理空值(NULL) 54
3.1.9 查詢日期列 56
3.2 限制查詢結果 58
3.2.1 在WEHER子句中使用簡單比較操作符 58
3.2.2 在WHERE子句中使用BETWEEN…AND… 60
3.2.3 在WHERE子句中使用IN(list) 60
3.2.4 在WHERE子句中使用LIKE 61
3.2.5 在WHERE子句中使用IS NULL 62
3.2.6 在WHERE子句中使用AND 62
3.2.7 在WHERE子句中使用OR 63
3.2.8 在WHERE子句中使用NOT 63
3.2.9 運算符的優先權規則 64
3.3 查詢結果排序 64
3.3.1 升序排序 64
3.3.2 降序排序 65
3.3.3 使用非選擇列表排序 66
3.3.4 使用表達式排序 67
3.3.5 使用列別名排序 67
3.3.6 使用列位置排序 68
3.3.7 使用多列排序 69
3.4 分組查詢 69
3.4.1 分組函式的使用 70
3.4.2 GROUP BY短語及其子句 71
3.5 連線查詢 77
3.5.1 等值連線 78
3.5.2 非等值連線 80
3.5.3 自連線 80
3.5.4 內連線和外連線 81
3.6 子查詢 85
3.6.1 單行子查詢 86
3.6.2 多行子查詢 87
3.6.3 多列子查詢 88
3.6.4 其他子查詢 89
3.6.5 使用子查詢需要注意的問題 90
3.7 集合操作 90
本章小結 92
練習題 93
第4章 SQL單行函式 97
4.1 單行函式的定義 98
4.2 字元函式 98
4.2.1 大小寫轉換函式UPPER、LOWER、INITCAP 98
4.2.2 字元串連線函式CONCAT 100
4.2.3 獲取子串函式SUBSTR 100
4.2.4 獲取字元串長度函式LENGTH 101
4.2.5 獲取子串在字元串中的位置函式INSTR 102
4.2.6 補位函式LPAD、RPAD 102
4.2.7 截去子串函式TRIM、LTRIM、RTRIM 103
4.2.8 替換函式REPLACE 104
4.2.9 ASCII碼和字元的對應函式ASCII、CHR 104
4.3 數字函式 105
4.3.1 ROUND、TRUNC 105
4.3.2 CEIL、FLOOR 106
4.3.3 ABS、MOD、SIGN、POWER、SQRT 106
4.4 日期函式 107
4.4.1 SYSDATE 107
4.4.2 ADD_MONTHS 108
4.4.3 NEXT_DAY 108
4.4.4 LAST_DAY 109
4.4.5 MONTH_BETWEEN 110
4.4.6 ROUND,TRUNC 110
4.4.7 SESSIONTIMEZONE 111
4.4.8 EXTRACT 112
4.5 轉換函式 112
4.5.1 日期到字元轉換函式TO_CHAR 112
4.5.2 字元到日期轉換函式TO_DATE 113
4.5.3 數字到字元轉換函式TO_CHAR 114
4.5.4 字元到數字轉換函式TO_NUMBER 115
4.6 NULL函式 116
4.6.1 COALESCE 116
4.6.2 NVL,NVL2 116
4.6.3 NULLIF 117
4.6.4 LNNVL 118
4.7 比較函式 119
4.8 環境和標識函式 120
4.8.1 SYSCONTEXT 120
4.8.2 USER 121
4.9 其他函式 122
4.9.1 DECODE 122
4.9.2 VSIZE 123
4.9.3 DUMP 124
本章小結 124
練習題 125
第5章 數據操縱與事務控制 129
5.1 數據操縱簡介 130
5.2 插入數據 130
5.2.1 用於插入數據的INSERT語句 130
5.2.2 使用VALUES子句插入單行數據 130
5.2.3 通過子查詢插入多條數據 132
5.2.4 多表INSERT語句 133
5.3 更新數據 134
5.3.1 一般UPDATE語句 134
5.3.2 使用子查詢更新數據 136
5.4 刪除數據 136
5.4.1 一般DELETE語句 136
5.4.2 使用子查詢刪除數據 137
5.4.3 刪除主表數據的問題 137
5.5 MERGE操作 137
5.5.1 使用MERGE語句修改表數據 137
5.5.2 省略INSERT或UPDATE子句 139
5.5.3 帶條件的INSERT或UPDATE子句 141
5.5.4 無條件INSERT子句 141
5.5.5 DELETE子句 142
5.6 事務控制 142
5.6.1 事務概念 142
5.6.2 提交事務 144
5.6.3 回退事務和保存點 145
5.6.4 唯讀事務 147
5.6.5 順序事務 147
本章小結 148
練習題 148
第6章 資料庫對象的創建和管理 149
6.1 資料庫的主要對象 150
6.1.1 資料庫的主要對象 150
6.1.2 常用數據類型 150
6.1.3 數據定義語言(DDL)命名規則 151
6.1.4 數據字典 152
6.2 表 154
6.2.1 表的簡介 154
6.2.2 創建表 154
6.2.3 修改表 156
6.2.4 截斷表 158
6.2.5 刪除表 159
6.2.6 給表增加注釋 159
6.2.7 在數據字典中查看錶信息 159
6.3 約束條件 161
6.3.1 約束條件簡介 161
6.3.2 非空(Not Null) 163
6.3.3 唯一(Unique) 164
6.3.4 主鍵(Primary Key) 166
6.3.5 外鍵(Foreign Key) 168
6.3.6 檢查(Check) 171
6.3.7 禁用和啟用約束條件 172
6.3.8 修改約束條件名稱 174
6.3.9 刪除約束條件 174
6.4 視圖 175
6.4.1 視圖簡介 175
6.4.2 創建視圖 176
6.4.3 修改視圖 178
6.4.4 刪除視圖 179
6.4.5 在數據字典中查看視圖信息 179
6.5 索引 180
6.5.1 索引簡介 180
6.5.2 創建索引 181
6.5.3 重建索引 182
6.5.4 刪除索引 182
6.5.5 在數據字典中查看索引信息 182
6.6 序列 183
6.6.1 序列簡介 183
6.6.2 創建序列 183
6.6.3 修改序列 184
6.6.4 刪除序列 185
6.6.5 在數據字典中查看序列信息 185
6.7 同義詞 186
6.7.1 同義詞簡介 186
6.7.2 創建同義詞 186
6.7.3 刪除同義詞 187
6.7.4 在數據字典中查看同義詞信息 188
本章小結 188
練習題 190
第7章 PL/SQL開發 193
7.1 了解PL/SQL 194
7.1.1 PL/SQL語言 194
7.1.2 PL/SQL程式塊的基本結構 195
7.1.3 在開發工具中編寫簡單的PL/SQL程式 198
7.1.4 PL/SQL編碼規範 199
7.1.5 PL/SQL中的注釋 200
7.2 PL/SQL的變數 201
7.2.1 簡單變數 201
7.2.2 複合變數 203
7.3 PL/SQL的基本語法 206
7.3.1 賦值語句 206
7.3.2 表達式 207
7.3.3 在PL/SQL中使用SQL語句 209
7.3.4 條件判斷語句 214
7.3.5 循環語句 217
7.3.6 PL/SQL程式塊的作用域 220
7.4 處理游標 221
7.4.1 游標變數 221
7.4.2 隱式游標 222
7.4.3 顯式游標 222
7.4.4 參數游標 225
7.4.5 游標變數 227
7.4.6 游標的FOR循環 228
7.4.7 更新或刪除游標行 229
7.5 異常處理 231
7.5.1 異常概述 231
7.5.2 基本語法 232
7.5.3 預定義異常 232
7.5.4 非預定義異常 234
7.5.5 用戶自定義異常 235
7.5.6 SQLCODE和SQLERRM 236
7.6 PL/SQL程式單元 237
7.6.1 程式單元分類及基本規則 237
7.6.2 過程 238
7.6.3 函式 244
7.6.4 包 249
7.6.5 觸發器 255
7.6.6 PL/SQL程式單元總結 268
本章小結 269
練習題 270
第8章 Oracle體系結構和管理基礎 273
8.1 Oracle體系結構基本概念 274
8.2 Oracle記憶體結構 275
8.2.1 概述 275
8.2.2 共享池(Shared Pool) 276
8.2.3 數據高速快取區(Data Buffer Area) 277
8.2.4 重做日誌快取區(Redo Log Buffer) 279
8.2.5 大快取池(Large Pool) 280
8.2.6 Java池(Java Pool) 280
8.2.7 程式全局區(PGA) 280
8.3 Oracle後台進程 280
8.3.1 檢查點(Checkpoint)和SCN(System Change Number) 281
8.3.2 DBWR 282
8.3.3 LGWR 282
8.3.4 CKPT 283
8.3.5 SMON 284
8.3.6 PMON 284
8.3.7 ARCH 284
8.4 Oracle存儲結構 285
8.4.1 數據檔案和表空間 285
8.4.2 重做日誌檔案 289
8.4.3 控制檔案 290
8.4.4 其他檔案 291
8.5 Oracle邏輯結構和物理結構的關係 293
8.6 數據字典 294
8.6.1 數據字典定義 294
8.6.2 數據字典命名規則 295
8.6.3 常用的數據字典 296
8.6.4 常用的動態性能視圖 301
8.7 SQL語句執行過程 305
8.7.1 連線到資料庫伺服器 305
8.7.2 連線和會話 306
8.7.3 執行查詢操作 307
8.7.4 執行DML操作 309
8.7.5 事務提交 310
8.7.6 事務撤銷 310
8.8 Oracle初始化參數 311
8.8.1 初始化參數檔案 311
8.8.2 顯示參數 314
8.8.3 常用的初始化參數 315
8.8.4 修改初始化參數 317
8.9 資料庫的啟動和停止 317
8.9.1 啟動資料庫 318
8.9.2 將資料庫啟動到指定狀態 320
8.9.3 停止資料庫 321
8.9.4 使用診斷檔案監視實例 322
本章小結 324
練習題 325
第9章 資料庫用戶及安全管理 329
9.1 資料庫安全概述 330
9.2 用戶管理 331
9.2.1 Oracle資料庫的初始用戶 331
9.2.2 方案(Schema) 331
9.2.3 和用戶相關的屬性 332
9.2.4 創建用戶 333
9.2.5 修改用戶 335
9.2.6 刪除用戶 336
9.2.7 獲取和用戶有關的信息 336
9.3 許可權管理 336
9.3.1 許可權概述 336
9.3.2 系統許可權管理 337
9.3.3 對象許可權管理 339
9.3.4 獲取和許可權有關的信息 341
9.4 角色管理 342
9.4.1 角色概述 342
9.4.2 系統預定義角色 343
9.4.3 創建自定義角色 344
9.4.4 角色授權 344
9.4.5 修改角色 348
9.4.6 刪除角色 348
9.4.7 查詢角色信息 349
9.5 資源配置 349
9.5.1 資源配置概述 349
9.5.2 創建資源配置 350
9.5.3 修改資源配置 351
9.5.4 刪除資源配置 352
9.5.5 查詢資源配置 352
本章小結 352
本章練習題 353
第 10章 SQL語句最佳化 355
10.1 SQL最佳化原則 356
10.1.1 為什麼要最佳化SQL語句 356
10.1.2 一般SQL最佳化原則 356
10.1.3 在表連線中的最佳化原則 360
10.1.4 合理使用索引 360
10.1.5 動態性能視圖 362
10.2 Oracle最佳化器和執行計畫 363
10.2.1 Oracle最佳化器 363
10.2.2 查看Oracle執行計畫 364
10.2.3 執行計畫釋義 369
10.2.4 SQL執行計畫管理 380
10.2.5 SQL計畫基線 381
10.2.6 測試執行計畫管理 383
10.3 Oracle性能顧問 385
10.3.1 ADDM 386
10.3.2 AWR 387
10.3.3 SQL調優顧問 388
10.3.4 SQL訪問顧問 388
本章小結 389
練習題 390
第 11章 簡單備份與恢復 391
11.1 Oracle備份與恢復綜述 392
11.1.1 為什麼要備份和恢復 392
11.1.2 備份和恢復基礎 392
11.1.3 備份與恢復的基本原則 394
11.1.4 備份與恢復涉及主要數據結構 394
11.2 備份基礎 396
11.2.1 失敗種類 396
11.2.2 需要備份的信息 404
11.2.3 備份的種類 405
11.3 恢復基礎 406
11.3.1 恢復的工作原理 406
11.3.2 恢復的種類 407
11.4 備份和恢復 408
11.4.1 備份和恢複方法 408
11.4.2 制定恢復策略 411
11.4.3 制定備份策略 412
11.4.4 備份和恢復的配製 414
11.5 RMAN 426
11.5.1 RMAN功能組件 427
11.5.2 RMAN恢復 429
11.5.3 連線到RMAN環境 431
11.5.4 RMAN備份集 435
11.5.5 RMAN映像副本 442
11.5.6 RMAN備份 443
11.5.7 RMAN恢復 449
11.6 EXPDP和IMPDP 453
11.7 EXP和IMP 458
本章小結 461
練習題 462