內容介紹
《Oracle自學視頻教程》共分3篇18章,其中,第1篇為入門篇,主要包括資料庫基礎、搭建Oracle資料庫環境、Oracle資料庫基礎、SQL*Plus命令行工具的使用、SQL語言基礎、PL/SQL基礎編程、PL/SQL高級編程、控制檔案和日誌檔案的使用、Oracle數據核心——表空間、Oracle資料庫常用對象等內容;第2篇為提高篇,主要包括分區技術,用戶、角色與許可權控制,資料庫性能最佳化,數據的備份與恢復,數據的導出與導入,閃回技術的套用等內容;第3篇為實戰篇,主要包括Oracle在Java開發中的套用——企業人事管理系統、Oracle在VC++開發中的套用——汽配管理系統兩個實戰項目。另外本書光碟含:
21小時視頻講解/1798個編程實例/18個經典模組分析/17個項目開發案例/580個編程實踐任務/616個能力測試題目(基礎能力測試、數學及邏輯思維能力測試、面試能力測試、編程英語能力測試)/23個IT勵志故事。
目 錄
本書光碟"自主學習系統"內容索引...XIII
第1篇 入 門 篇
第1章 資料庫基礎 2
( 視頻講解:26分鐘)
1.1.1 資料庫的發展史 3
1.1.3 什麼是資料庫管理系統 4
1.2 關係型資料庫基礎 4
1.2.1 關係型資料庫概述 4
1.2.2 關係型資料庫的E-R模型 6
1.2.3 關係型資料庫的設計範式 7
1.3 本章常見錯誤 10
1.3.1 關係型資料庫的概念錯誤 10
1.3.2 關於資料庫範式的問題 10
1.4 本章小結 10
1.5 跟我上機 10
第2章 搭建Oracle資料庫環境 11
( 視頻講解:1小時6分鐘)
2.1 Oracle概述 12
2.1.1 Oracle的發展歷程 12
2.1.2 Oracle 11g新特性 12
2.2 Oracle 11g的安裝與卸載 14
2.2.1 Oracle 11g的安裝 14
2.2.2 Oracle 11g的卸載 20
2.3 Oracle 11g的管理工具 23
2.3.1 SQL*Plus工具 24
2.3.2 Oracle企業管理器 25
2.3.3 資料庫配置助手 26
2.4 Oracle資料庫的啟動與關閉 27
2.4.1 啟動Oracle資料庫 27
2.4.2 關閉Oracle資料庫 29
2.5 綜合套用 30
2.5.1 通過DBCA創建一個資料庫 30
2.5.2 強制關閉Oracle資料庫 32
2.6 本章常見錯誤 32
2.6.1 安裝Oracle資料庫時出現錯誤 32
2.6.2 如果忘記Oracle密碼,如何進行登錄 33
2.7 本章小結 33
2.8 跟我上機 33
第3章 Oracle資料庫基礎 34
( 視頻講解:1小時30分鐘)
3.1 Oracle體系結構概述 35
3.2 Oracle資料庫的邏輯存儲結構 35
3.2.1 數據塊(Data Blocks) 36
3.2.2 數據區(Extent) 37
3.2.3 段(Segment) 37
3.2.4 表空間(TableSpace) 38
3.3 Oracle資料庫的物理存儲結構 39
3.3.2 控制檔案 42
3.3.3 日誌檔案 42
3.3.4 伺服器參數檔案 44
3.3.5 其他輔助檔案 46
3.4 Oracle 11g伺服器的結構 48
3.4.1 實例 48
3.4.2 程式全局區 54
3.4.3 前台進程 55
3.5 Oracle數據字典 55
3.5.1 Oracle數據字典概述 55
3.5.2 常用的Oracle數據字典 56
3.6 綜合套用 57
3.6.2 查詢資料庫所使用的數據檔案 58
3.7 本章常見錯誤 58
3.7.1 Oracle資料庫實例與Oracle用戶的關係 58
3.7.2 如何獲取資料庫的sid 59
3.7.3 獲取哪些用戶在使用資料庫 59
3.8 本章小結 59
3.9 跟我上機 59
第4章 SQL*Plus命令行工具的使用 60
( 視頻講解:1小時22分鐘)
4.1 SQL*Plus命令行工具概述 61
4.2 設定SQL*Plus的運行環境 61
4.2.1 SET命令講解 61
4.3 常用的SQL*Plus命令 67
4.3.1 HELP命令 68
4.3.2 DESCRIBE命令 68
4.3.3 SPOOL命令 70
4.3.4 其他常用命令 71
4.4 格式化查詢結果 73
4.4.1 COLUMN命令 74
4.4.2 TTITLE和BTITLE命令 76
4.5 綜合套用 78
4.5.1 使用SET NEWPAGE命令修改指定數量的空行 78
4.5.2 使用TEXT值代替NULL值列 79
4.6 本章常見錯誤 79
4.6.1 通過SQL*Plus命令查看本機IP位址的問題 79
4.6.2 SQL*Plus下如何修改編輯器 80
4.6.3 如何修改Oracle的默認日期 80
4.7 本章小結 80
4.8 跟我上機 80
第5章 SQL語言基礎 81
( 視頻講解:2小時12分鐘)
5.1 SQL語言概述 82
5.1.1 SQL語言的特點 82
5.1.2 SQL語言的分類 83
5.1.3 SQL語言的編寫規則 83
5.2 用戶模式 84
5.2.1 模式與模式對象 85
5.2.2 示例模式SCOTT 85
5.3 Oracle常用函式 86
5.3.1 字元類函式 86
5.3.2 數字類函式 89
5.3.3 日期和時間類函式 91
5.3.4 轉換類函式 92
5.3.5 聚合類函式 93
5.4 數據的查詢 93
5.4.1 基本查詢 94
5.4.2 篩選查詢 97
5.4.3 分組查詢 101
5.4.4 排序查詢 102
5.4.5 多表關聯查詢 103
5.5 子查詢的使用 107
5.5.1 子查詢概述 108
5.5.2 單行子查詢 108
5.5.3 多行子查詢 109
5.5.4 關聯子查詢 110
5.6 常用資料庫操作 110
5.6.1 添加數據(INSERT語句) 111
5.6.2 修改數據(UPDATE語句) 113
5.6.3 刪除數據(DELETE語句和
TRUNCATE語句) 114
5.7 事務處理 115
5.7.1 事務概述 115
5.7.2 事務的操作 116
5.8 綜合套用 118
5.8.1 統計某一個部門的雇員的最高和最低工資 118
5.8.2 創建employees表的一個副本 118
5.9 本章常見錯誤 119
5.9.1 插入數據時的效率問題 119
5.9.2 Oracle的分析數據對SQL執行計畫的影響 119
5.9.3 Oracle中如何搜尋前N條記錄 120
5.10 本章小結 120
5.11 跟我上機 120
第6章 PL/SQL基礎編程 121
( 視頻講解:1小時8分鐘)
6.1 PL/SQL編程基礎 122
6.1.1 PL/SQL塊結構 122
6.2 數據類型的使用 124
6.2.1 基本數據類型 125
6.2.2 特殊數據類型 126
6.3 流程控制語句 129
6.3.1 選擇語句 129
6.3.2 循環控制語句 133
6.4 PL/SQL游標編程 135
6.4.1 顯式游標 136
6.4.2 游標的常用屬性 138
6.4.3 設定隱式游標 139
6.4.4 使用for語句遍歷游標 139
6.5 PL/SQL的異常處理 141
6.5.1 預定義異常的使用 141
6.5.2 自定義異常 143
6.6 綜合套用 145
6.6.1 判斷用戶是否可以申請退休 145
6.6.2 使用游標讀取員工信息 146
6.7 本章常見錯誤 147
6.7.1 Oracle資料庫中連線字元串的問題 147
6.7.2 如何查看Oracle的錯誤信息 147
6.8 本章小結 147
6.9 跟我上機 147
第7章 PL/SQL高級編程 148
( 視頻講解:1小時38分鐘)
7.1 存儲過程 149
7.1.1 創建存儲過程 149
7.1.2 存儲過程的模式參數 150
7.2 函式 156
7.2.1 函式的創建 156
7.2.2 函式的調用 157
7.2.3 函式的刪除 158
7.3 觸發器 158
7.3.2 行級觸發器 159
7.3.3 語句級觸發器 161
7.3.4 替換觸發器 164
7.3.5 用戶事件觸發器 165
7.4 程式包的使用 167
7.4.1 程式包的規範 167
7.4.2 程式包的主體 168
7.5 綜合套用 170
7.5.1 調用存儲過程計算平方或平方根 170
7.5.2 通過程式包調用存儲過程和函式 171
7.6 本章常見錯誤 171
7.6.1 Oracle存儲過程編譯錯誤的問題 171
7.6.2 "ORA-60512"錯誤的解決 172
7.7 本章小結 172
7.8 跟我上機 172
第8章 控制檔案和日誌檔案的使用 173
( 視頻講解:1小時16分鐘)
8.1 控制檔案的使用 174
8.1.1 控制檔案概述 174
8.1.2 控制檔案的多路復用 175
8.1.3 創建控制檔案 176
8.1.4 備份和恢復控制檔案 180
8.1.5 查詢控制檔案信息 182
8.1.6 控制檔案的刪除 183
8.2 重做日誌檔案的使用 183
8.2.2 添加日誌組及其成員 184
8.2.3 更改重做日誌的位置或名稱 186
8.2.4 查看重做日誌檔案信息 187
8.2.5 重做日誌檔案的刪除 188
8.3 歸檔日誌檔案的使用 189
8.3.1 歸檔日誌檔案概述 189
8.3.2 歸檔日誌檔案常用操作 191
8.3.3 設定歸檔日期檔案的位置 192
8.3.4 查看歸檔日誌檔案信息 194
8.4 綜合套用 195
8.4.1 為資料庫實例添加重做日誌檔案組 195
8.4.2 查看並修改資料庫歸檔模式 196
8.5 本章常見錯誤 197
8.5.1 "Oracle not available"錯誤的解決 197
8.5.2 無法打開日誌組成員的錯誤 197
8.6 本章小結 198
8.7 跟我上機 198
第9章 Oracle數據核心--表空間 199
( 視頻講解:58分鐘)
9.1 表空間基礎 200
9.1.1 查看錶空間對應的數據檔案 200
9.1.2 Oracle 11g的默認表空間 201
9.2 表空間的創建 202
9.2.1 創建表空間的語法 203
9.2.2 通過本地化管理方式創建表空間 204
9.2.3 通過段空間管理方式創建表空間 205
9.2.4 創建非標準塊表空間 206
9.2.5 創建大檔案表空間 206
9.3 表空間常用操作 208
9.3.1 設定默認表空間 208
9.3.2 更改表空間的狀態 208
9.3.3 重命名表空間 209
9.3.4 刪除表空間 209
9.3.5 維護表空間中的數據檔案 210
9.4 撤銷表空間的使用 211
9.4.1 撤銷表空間的作用 212
9.4.2 撤銷表空間的初始化參數 212
9.4.3 撤銷表空間的常用操作 213
9.5 使用臨時表空間 217
9.5.1 臨時表空間的創建 217
9.5.2 查詢臨時表空間的信息 218
9.5.3 臨時表空間組的使用 218
9.6 綜合套用 220
9.6.1 創建並設定默認永久表空間 220
9.6.2 創建並設定默認臨時表空間 221
9.7 本章常見錯誤 221
9.7.1 創建臨時表空間的錯誤 221
9.7.2 設定表空間為唯讀的錯誤 222
9.8 本章小結 222
9.9 跟我上機 222
第10章 Oracle資料庫常用對象 223
( 視頻講解:2小時6分鐘)
10.1 數據表對象 224
10.1.1 數據表概述 224
10.1.2 數據表的創建 224
10.1.3 數據表的特性 226
10.2 數據表的常用操作 231
10.2.1 增加和刪除欄位 231
10.2.2 修改欄位 232
10.2.3 重命名數據表 233
10.2.5 修改數據表的狀態 234
10.2.6 刪除數據表 235
10.3 數據的完整性和約束性 236
10.3.1 非空約束 236
10.3.3 唯一性約束 239
10.3.4 外鍵約束 241
10.3.5 禁用約束 243
10.3.6 激活約束 244
10.3.7 刪除約束 245
10.4 索引對象 246
10.4.1 索引概述 246
10.4.2 創建索引 247
10.4.3 對索引進行修改 251
10.4.4 索引的刪除操作 253
10.4.5 顯示索引信息 253
10.5 視圖對象 256
10.5.1 視圖的創建 256
10.5.2 視圖的管理操作 259
10.6 同義詞對象 261
10.6.1 同義詞對象概述 261
10.6.2 同義詞的創建及套用 261
10.7 序列對象 262
10.7.1 序列的創建 263
10.7.2 序列的管理操作 264
10.8 綜合套用 265
10.8.1 將創建的數據表置於指定的表空間中 265
10.8.2 創建數據表並添加索引 266
10.8.3 通過序列對象為數據表添加數據 266
10.9 本章常見錯誤 267
10.9.1 主鍵約束和唯一性約束的混淆錯誤 267
10.9.2 start with和minvalue的區別 268
10.9.3 如何利用序列為數據表提供
主鍵支持 268
10.10 本章小結 268
10.11 跟我上機 268
第2篇 提 高 篇
第11章 分區技術 270
( 視頻講解:46分鐘)
11.1 分區技術概述 271
11.2 常見的幾種表分區 271
11.2.1 RANGE範圍分區 271
11.2.2 HASH散列分區 273
11.2.4 組合分區 276
11.2.5 Interval分區 277
11.3 表分區的使用 278
11.3.1 表分區的策略 278
11.3.2 添加表分區 278
11.3.3 合併表分區 279
11.3.4 刪除表分區 279
11.3.5 併入表分區 281
11.4 索引分區的使用 282
11.4.1 索引分區概述 282
11.4.2 本地索引分區的使用 282
11.4.3 全局索引分區的使用 284
11.4.4 索引分區的常用操作 285
11.5 綜合套用 286
11.5.1 根據指定欄位創建多個列表分區 286
11.5.2 根據表分區創建本地索引分區 287
11.6 本章常見錯誤 287
11.6.1 表分區方面的誤區 287
11.6.2 大批量數據處理的問題 288
11.6.3 合適的索引分區設計是否有必要 288
11.7 本章小結 288
11.8 跟我上機 288
第12章 用戶、角色與許可權控制 289
( 視頻講解:48分鐘)
12.1 創建與管理用戶 290
12.1.1 用戶與方案 290
12.1.2 身份驗證概述 291
12.1.3 創建用戶 292
12.1.4 修改用戶 294
12.1.5 刪除用戶 295
12.2 用戶許可權管理 295
12.2.1 用戶許可權概述 295
12.2.2 為用戶指定許可權 296
12.2.3 回收系統許可權 297
12.2.4 為用戶授予對象許可權 298
12.2.5 回收對象許可權 298
12.2.6 查詢用戶及其許可權 299
12.3 角色管理 299
12.3.1 角色概述 300
12.3.2 系統預定義角色 300
12.3.3 角色的創建與授權 302
12.3.4 角色的常用操作 303
12.3.5 角色與許可權的查詢 305
12.4 資源配置PROFILE 306
12.4.1 PROFILE概述 306
12.4.2 使用PROFILE管理密碼 306
12.4.3 使用PROFILE管理資源 309
12.4.4 維護PROFILE檔案 310
12.4.5 顯示PROFILE信息 311
12.5 綜合套用 312
12.5.1 創建用戶並為其授予連線和創建表許可權 312
12.5.2 創建角色並為其授予連線和創建表許可權 313
12.6 本章常見錯誤 314
12.6.1 用戶與方案的混淆錯誤 314
12.6.2 區分Oracle的系統許可權與對象許可權 314
12.7 本章小結 314
12.8 跟我上機 314
第13章 資料庫性能最佳化 315
( 視頻講解:52分鐘)
13.1 初始化參數的套用 316
13.1.1 初始化參數的分類 316
13.1.2 常用的系統最佳化參數 316
13.2 系統全局區最佳化 318
13.2.1 記憶體分配的調整 318
13.2.2 調整日誌緩衝區 318
13.2.3 調整共享池 320
13.2.4 調整資料庫緩衝區 323
13.2.5 SGA調優建議 324
13.3 排序區最佳化 324
13.3.1 排序區與其他記憶體區的關係 325
13.3.2 專用模式下排序區的調整 325
13.3.3 共享模式下排序區的調整 327
13.4 最佳化SQL語句 328
13.4.1 不用"*"代替所有列名 328
13.4.2 使用TRUNCATE代替DELETE 328
13.4.3 在確保完整性的情況下多用COMMIT語句 329
13.4.4 儘量減少表的查詢次數 330
13.4.5 用[NOT] EXISTS代替[NOT] IN 330
13.5 最佳化數據表連線 330
13.5.1 驅動表的選擇 331
13.5.2 WHERE子句的連線順序 331
13.6 索引在性能最佳化中的使用 331
13.6.1 使用索引的基本原則 331
13.6.2 索引列和表達式的選擇 332
13.6.3 選擇複合索引主列 332
13.6.4 避免全表掃描 333
13.6.5 監視索引是否被使用 333
13.7 最佳化器的使用 334
13.7.1 最佳化器概述 334
13.7.2 運行EXPLAIN PLAN 335
13.7.3 Oracle 11g中SQL執行計畫的管理 335
13.8 Oracle的性能顧問 336
13.8.1 SQL調優顧問 336
13.8.2 SQL訪問顧問 336
13.9 綜合套用 337
13.9.1 修改large_pool_size的值並查看修改結果 337
13.9.2 查詢高速快取在調用階段的不命中數 337
13.9.3 使用TRUNCATE語句清空指定數據表 337
13.10 本章常見錯誤 338
13.10.1 如何修改Oracle資料庫中SGA的大小 338
13.10.2 什麼情況下不適合創建索引 338
13.10.3 最佳化SQL語句的標準是什麼 339
13.11 本章小結 339
13.12 跟我上機 339
第14章 數據的備份與恢復 340
( 視頻講解:44分鐘)
14.1 備份與恢復概述 341
14.2 RMAN備份恢復工具 342
14.2.1 RMAN組件基礎 342
14.2.2 分配RMAN通道 344
14.2.3 RMAN的常用命令 346
14.3 使用RMAN工具實現數據備份 348
14.3.1 RMAN的備份策略 348
14.3.2 備份資料庫檔案和歸檔日誌 349
14.3.3 增量備份 352
14.4 使用RMAN工具實現數據恢復 353
14.4.1 數據的完全恢復 353
14.4.2 數據的部分恢復 356
14.5 綜合套用 359
14.5.1 使用RMAN工具備份表空間 359
14.5.2 使用RMAN工具還原備份的表空間 360
14.6 本章常見錯誤 361
14.6.1 恢複數據檔案的問題 361
14.6.2 何時可以刪除歸檔日誌 361
14.6.3 全備份時一定要備份所有數據檔案嗎 362
14.6.4 在線上日誌需要備份嗎 362
14.7 本章小結 362
14.8 跟我上機 362
第15章 數據的導出與導入 363
( 視頻講解:40分鐘)
15.1 數據泵技術概述 364
15.2 使用EXPDP導出數據 364
15.2.1 執行EXPDP命令 364
15.2.2 EXPDP命令參數的使用 367
15.3 使用IMPDP導入數據 369
15.3.1 執行IMPDP命令 370
15.3.2 IMPDP命令參數的使用 371
15.4 使用SQL* Loader工具載入外部數據 372
15.4.1 初識SQL* Loader工具 372
15.4.2 載入多種格式的數據 373
15.5 綜合套用 376
15.5.1 導出HR方案中的regions表 376
15.5.2 將regions表導入到SCOTT方案中 376
15.6 本章常見錯誤 377
15.6.1 導入資料庫時出現同名數據表的錯誤 377
15.6.2 導出數據正常,導入數據時卻出現錯誤 377
15.7 本章小結 378
15.8 跟我上機 378
第16章 閃回技術的套用 379
( 視頻講解:30分鐘)
16.1 閃回技術概述 380
16.2 對資料庫進行閃回 380
16.2.1 配置閃回恢復區 381
16.2.2 配置閃回資料庫 381
16.2.3 閃回資料庫的使用 383
16.3 對數據表進行閃回 383
16.3.1 閃回表命令的語法 383
16.3.2 閃回表的使用 384
16.4 閃回丟棄技術的使用 385
16.4.1 閃回丟棄基礎--資源回收筒 385
16.4.2 閃回丟棄技術的套用 386
16.5 其他閃回技術 387
16.5.1 閃回版本查詢 387
16.5.2 閃回事務查詢 388
16.5.3 閃回數據歸檔 388
16.6 綜合套用 389
16.6.1 使用閃回丟棄還原已經drop掉的表 389
16.6.2 使用閃回表命令清除記錄 390
16.7 本章常見錯誤 391
16.7.1 "ORA-08189:無法閃回表"的錯誤 391
16.7.2 沒有啟動資料庫就執行閃回的錯誤 392
16.8 本章小結 392
16.9 跟我上機 392
第3篇 實 戰 篇
第17章 Oracle在Java開發中的套用--企業人事
管理系統 394
( 視頻講解:2小時52分鐘)
17.1 需求分析 395
17.2 系統設計 395
17.2.1 系統目標 395
17.2.2 系統功能結構 395
17.2.3 系統業務流程圖 395
17.2.4 系統預覽 396
17.2.5 系統編碼規範 399
17.3 系統開發及運行環境 400
17.4 資料庫設計 400
17.4.1 實體E-R圖設計 400
17.4.2 資料庫邏輯結構設計 401
17.5 系統資料夾組織結構 403
17.6 公共模組設計 403
17.6.1 編寫Hibernate配置檔案 403
17.6.2 編寫Hibernate持久化類和映射檔案 404
17.6.3 編寫通過Hibernate操作持久化對象的常用方法 405
17.6.4 創建用於特殊效果的部門樹對話框 406
17.6.5 創建通過部門樹選取員工的面板和對話框 408
17.7 Hibernate關聯關係的建立方法 409
17.7.1 建立一對一關聯 409
17.7.2 建立一對多關聯 411
17.8 主窗體設計 412
17.8.1 實現導航欄 413
17.8.2 實現工具列 415
17.9 人事管理模組設計 417
17.9.1 實現上傳員工照片功能 418
17.9.2 實現組件聯動功能 420
17.9.3 通過Java反射驗證數據是否為空 422
17.10 待遇管理模組設計 423
17.10.2 實現為新建的賬套添加項目 425
17.10.3 實現修改項目的金額 426
17.10.4 實現統計報表 427
17.11 系統維護模組設計 428
17.11.1 實現修改名稱功能 430
17.11.2 實現添加部門的功能 431
17.11.3 實現刪除現有部門的功能 432
17.12 開發常見問題與解決 434
17.13 本章小結 434
第18章 Oracle在VC++開發中的套用--汽配管理系統 435
18.1 需求分析 436
18.2 系統設計 436
18.2.1 系統功能結構 436
18.2.2 系統業務流程圖 436
18.2.3 系統預覽 437
18.3 資料庫設計 439
18.3.1 資料庫概要說明 439
18.3.2 資料庫邏輯設計 440
18.4 公共模組設計 441
18.4.1 資料庫操作類RxADO的設計 441
18.4.2 特殊按鈕類CBaseButton類的製作 445
18.4.3 擴展的組合框CBaseComboBox類 448
18.5 主窗體設計 450
18.5.1 主窗體模組概述 450
18.5.2 主窗體實現過程 451
18.6 系統登錄模組設計 455
18.6.1 系統登錄模組概述 455
18.6.3 系統登錄模組實現過程 456
18.7 基礎信息查詢模組設計 458
18.7.1 基礎信息查詢模組概述 458
18.7.2 基礎信息查詢模組實現過程 459
18.8 商品信息模組設計 461
18.8.1 商品信息模組概述 461
18.8.2 商品信息模組數據表分析 461
18.8.3 商品信息模組實現過程 462
18.9 日常業務處理模組設計 467
18.9.1 日常業務處理模組概述 467
18.10 開發常見問題與解決 480
18.10.1 用戶界面與RxGrid類的連線與使用方法 480
18.10.2 列印設定、列印預覽與列印
對話框的調用 481
18.11 本章小結 481