精通Oracle核心技術與項目實戰

精通Oracle核心技術與項目實戰

精通Oracle核心技術與項目實戰全面、系統、深入地講解了Oracle 資料庫的各項相關技術。在講解過程中,通過大量取自實際操作的實例,將Oracle 知識全面、系統、深入地展現給讀者

基本介紹

  • 書名:精通Oracle核心技術與項目實戰
  • 作者:劉麗霞
  • ISBN:978-7-121-21144-7
  • 頁數:480
  • 定價:69.00
  • 出版社:電子工業出版社
  • 出版時間:2013年09月
  • 裝幀:平裝
  • 開本:16
內容提要,書本目錄,第1篇 Oracle基礎篇,第2篇 Oracle查詢篇,第3篇 PL/SQL編程篇,第4篇 Oracle維護篇,作者簡介,書本前言,本書特色,本書內容及體系結構,

內容提要

本書全面、系統、深入地講解了Oracle 資料庫的各項相關技術。在講解過程中,通過大量取自實際操作的實例,將Oracle 知識全面、系統、深入地展現給讀者。另外,作者專門為本書錄製了大量的配套教學視頻,讓讀者更好地分析實例,在學習的過程中遇到問題時,可參考。
本書共分4 篇。第1 篇(第1~6 章)介紹Oracle 安裝和配置、Oracle 常用工具、SQL Plus 和SQLDeveloper、Oralce 資料庫、Oracel 數據類型與表的管理、表的約束;第2 篇(第7~11 章)介紹數據查詢、高級查詢、常用函式、索引、視圖等技術;第3 篇(第12~18 章)介紹Oracle 編程基礎、游標、存儲過程、函式、觸發器、序列、事務和鎖等資料庫技術;第4 篇(第19~22 章)介紹表空間管理、資料庫安全管理、備份與恢復、控制檔案和日誌檔案等技術。
精通Oracle核心技術與項目實戰
本書內容涉及面廣,從基本操作到高級技術和核心原理,幾乎涉及Oracle 11g R2 資料庫的各個概念和特性。全書結構安排合理,實例豐富且淺顯易懂,尤其適合廣大程式設計師自學,也適合各種使用Oracle資料庫進行開發的工程技術人員使用。

書本目錄

第1篇 Oracle基礎篇

第1章 Oracle的安裝1
1.1 Oracle資料庫簡介 1
1.1.1 資料庫術語 1
1.1.2 主流資料庫簡介 2
1.1.3 Oracle資料庫的特點2
1.2 安裝Oracle資料庫 3
1.2.1 Oracle資料庫的版本變遷及安裝環境3
1.2.2 下載Oracle安裝檔案 4
1.2.3 安裝過程 6
1.2.4 安裝中需要注意的問題 11
1.3 小結 11
第2章 Oracle常用工具 12
2.1 Oracle企業管理器 12
2.1.1 Oracle企業管理器概述12
2.1.2 使用Oracle企業管理器 13
2.2 網路配置助手(Net Configuration Assistant) 14
2.2.1 Net ConfigurationAssistant概述 14
2.2.2 配置監聽程式 14
2.2.3 配置本地網路伺服器名 16
2.3 網路管理器(Oracle Net Manager) 19
2.3.1 Oracle Net Manager概述 19
2.3.2 監聽器配置(LISTENER)20
2.3.3 本地服務名配置 21
2.4 小結 23
第3章 SQL Plus和SQL Developer 24
3.1 使用SQL Plus24
3.1.1 登錄SQL Plus 24
3.1.2 利用SQL Plus執行資料庫操作25
3.1.3 利用SQL Plus解決資料庫管理員密碼丟失問題25
3.2 使用SQL Developer 26
3.2.1 登錄SQL Developer 26
3.2.2 SQL Developer操作簡介 27
3.3 小結 27
第4章 Oracle資料庫28
4.1 創建Oracle資料庫 28
4.2 刪除Oracle資料庫 34
4.2.1 刪除資料庫 34
4.2.2 修改註冊表 36
4.3 安裝示例資料庫 37
4.4 小結 40
第5章 Oracle數據類型與表的管理41
5.1 Oracle常用的數據類型 41
5.2 創建Oracle數據表 42
5.2.1 設計數據表 42
5.2.2 利用OEM創建數據表 43
5.2.3 利用工具創建數據表 48
5.2.4 利用命令創建數據表 49
5.3 修改數據表結構 50
5.3.1 利用OEM修改數據表結構 51
5.3.2 利用工具修改數據表結構 53
5.3.3 利用命令查看、修改數據表結構 53
5.4 刪除數據表 55
5.4.1 利用OEM刪除數據表 55
5.4.2 利用工具刪除數據表 56
5.4.3 利用drop命令刪除數據表 56
5.5 對數據表中數據的操作 57
5.5.1 添加數據 57
5.5.2 查看數據 58
5.5.3 修改數據 60
5.5.4 刪除數據 61
5.6 特殊的數據表dual 61
5.7 小結 62
第6章 表的約束63
6.1 約束簡介 63
6.2 主鍵約束 63
6.2.1 主鍵簡介 64
6.2.2 利用命令添加主鍵約束 64
6.2.3 主鍵使用場景 66
6.2.4 修改主鍵約束 67
6.2.5 刪除主鍵約束 70
6.2.6 主鍵與索引 71
6.3 外鍵約束 73
6.3.1 外鍵簡介 73
6.3.2 添加外鍵約束 74
6.3.3 驗證外鍵約束 76
6.3.4 修改外鍵約束 78
6.3.5 使用SQL Developer添加、刪除外鍵約束 80
6.3.6 外鍵使用場景 80
6.4 唯一性約束 81
6.4.1 唯一性約束簡介 81
6.4.2 添加唯一性約束 82
6.4.3 驗證唯一性約束 83
6.4.4 修改唯一性約束 83
6.4.5 使用SQL Developer添加、刪除唯一性約束 85
6.4.6 唯一性約束使用場景 86
6.5 檢查約束 86
6.5.1 檢查約束簡介 86
6.5.2 添加檢查約束 87
6.5.3 驗證檢查約束 88
6.5.4 修改檢查約束 89
6.5.5 使用SQL Developer添加、刪除檢查約束 91
6.5.6 檢查約束使用場景 91
6.6 非空約束 91
6.6.1 為列添加非空約束 91
6.6.2 撤銷非空約束 93
6.7 默認約束 94
6.7.1 為列添加默認(default)約束94
6.7.2 刪除默認(default)約束96
6.8 小結 97

第2篇 Oracle查詢篇

第7章 數據查詢98
7.1 基本查詢 98
7.1.1 select語句查詢執行步驟98
7.1.2 為列設定別名 99
7.1.3 利用distinct獲得唯一性記錄 100
7.1.4 返回查詢的部分結果 101
7.2 簡單條件查詢 101
7.2.1 where子句102
7.2.2 在查詢中使用比較表達式 103
7.2.3 使用簡單邏輯表達式 104
7.2.4 指定數據範圍 105
7.2.5 有關null值判斷107
7.2.6 like進行模糊查詢 107
7.2.7 order by子句 109
7.2.8 group by子句 111
7.2.9 having子句112
7.3 小結 114
第8章 高級查詢115
8.1 連線簡介 115
8.1.1 連線的定義 115
8.1.2 連線的類型 115
8.1.3 簡單的多表查詢 116
8.2 表的連線查詢 118
8.2.1 自然連線 118
8.2.2 內連線 120
8.2.3 外連線 122
8.3 單表中的聯合語句 125
8.3.1 union查詢 125
8.3.2 union all查詢 126
8.3.3 intersect查詢127
8.3.4 minus查詢128
8.4 子查詢 128
8.4.1 理解子查詢 128
8.4.2 子查詢的使用 129
8.4.3 子查詢的使用方式及限制 130
8.5 查詢語句最佳化 135
8.5.1 在查詢中儘量不使用“*” 136
8.5.2 多表查詢中儘量使用表別名 136
8.5.3 條件查詢多使用where136
8.5.4 指定查詢範圍多使用in136
8.5.5 子查詢中多使用exists語句判斷條件136
8.6 小結 137
第9章 常用函式138
9.1 聚合函式 138
9.1.1 計數函式count() 138
9.1.2 求和函式sum() 140
9.1.3 均值函式avg() 141
9.1.4 最大值max()和最小值min()142
9.2 數學函式 143
9.2.1 Oracle中的數值型143
9.2.2 絕對值、取余、判斷數值正負 144
9.2.3 近似值函式、截取、取整函式 145
9.2.4 平方根、乘方運算函式 149
9.2.5 格式化數值——to_char()函式150
9.3 字元串函式 153
9.3.1 字元型簡介 154
9.3.2 刪除空格 154
9.3.3 求字元串長度函式 155
9.3.4 字元轉換函式 156
9.3.5 連線字元串 159
9.3.6 檢索字元串、取子串函式 161
9.4 日期函式 166
9.4.1 獲取日期和時間的函式 166
9.4.2 日期和時間差的函式 170
9.5 轉換函式 172
9.5.1 類型轉換——cast()函式 173
9.5.2 將數值或日期轉換為字元串——to_char()函式 173
9.5.3 字元轉數值——to_number()函式 175
9.5.4 字元轉日期——to_date()函式176
9.6 null函式177
9.7 小結 177
第10章 索引 178
10.1 索引簡介 178
10.2 索引的創建178
10.2.1 何時創建索引 178
10.2.2 使用工具創建索引 179
10.2.3 使用OEM創建索引 180
10.2.4 使用語句創建索引 182
10.2.5 創建索引的注意事項 184
10.3 索引的管理184
10.3.1 修改索引 184
10.3.2 刪除索引 189
10.4 小結 192
第11章 視圖 193
11.1 Oracle視圖 193
11.1.1 視圖的概念 193
11.1.2 視圖的作用 193
11.1.3 視圖的分類 194
11.2 關係視圖的創建和使用 194
11.2.1 使用語句創建視圖 194
11.2.2 使用SQL Developer創建視圖202
11.2.3 使用OEM創建視圖 204
11.2.4 查看及操作訪問視圖 206
11.2.5 使用SQL Developer工具訪問視圖212
11.3 內嵌視圖的創建和使用 215
11.4 視圖的修改216
11.4.1 使用語句修改視圖 216
11.4.2 使用SQL Developer工具修改視圖217
11.4.3 使用OEM修改視圖 218
11.5 視圖的刪除220
11.5.1 使用語句刪除視圖 220
11.5.2 使用SQL Developer 工具刪除視圖 221
11.5.3 使用OEM刪除視圖 221
11.6 小結 222

第3篇 PL/SQL編程篇

第12章 Oracle編程基礎 223
12.1 PL/SQL簡介223
12.1.1 PL/SQL基本結構 223
12.1.2 PL/SQL注釋 225
12.1.3 PL/SQL基本規則 225
12.1.4 PL/SQL數據類型 226
12.1.5 PL/SQL運算符 227
12.1.6 PL/SQL表達式 229
12.1.7 PL/SQL中變數、常量的定義與使用 230
12.2 PL/SQL中定義類型 233
12.2.1 記錄類型 233
12.2.2 集合類型 235
12.3 Oracle中的條件控制語句 238
12.3.1 流程控制——if else判斷 238
12.3.2 流程控制——case when分支 241
12.4 Oracle中的循環語句 245
12.4.1 無條件循環 245
12.4.2 while循環247
12.4.3 for循環248
12.5 小結 250
第13章 游標 251
13.1 什麼是游標251
13.1.1 游標概念 251
13.1.2 游標種類 252
13.2 顯式游標 252
13.2.1 創建顯式游標步驟 252
13.2.2 游標中的loop語句256
13.2.3 使用bulk collect和for語句的游標 258
13.2.4 使用for loop語句 260
13.2.5 為游標傳遞參數 262
13.2.6 顯式游標的屬性 263
13.3 隱式游標 266
13.3.1 隱式游標的特點 266
13.3.2 隱式游標的屬性 267
13.3.3 使用SQL隱式游標 268
13.3.4 使用cursor for隱式游標268
13.4 動態(REF)游標 269
13.4.1 強類型動態游標 270
13.4.2 弱類型動態游標 272
13.5 小結 273
第14章 存儲過程 274
14.1 存儲過程簡介 274
14.1.1 認識存儲過程 274
14.1.2 存儲過程的作用 274
14.2 創建和執行存儲過程275
14.2.1 創建存儲過程 275
14.2.2 有參數的存儲過程 279
14.2.3 in參數 280
14.2.4 out參數 284
14.2.5 in out參數 286
14.3 SQL Developer工具創建存儲過程287
14.3.1 創建存儲過程 287
14.3.2 調試存儲過程 288
14.4 管理存儲過程 290
14.4.1 修改存儲過程 290
14.4.2 重新編譯存儲過程 291
14.4.3 刪除存儲過程 292
14.5 小結 293
第15章 函式和程式包 294
15.1 自定義函式294
15.1.1 創建自定義函式 294
15.1.2 帶參數的函式 297
15.1.3 行轉列函式 301
15.1.4 使用SQL Developer創建函式303
15.1.5 管理函式 305
15.2 程式包306
15.2.1 程式包說明 306
15.2.2 程式包主體 308
15.2.3 調用程式包中的函式/存儲過程309
15.2.4 刪除程式包 309
15.3 小結 309
第16章 觸發器 310
16.1 觸發器簡介310
16.1.1 認識觸發器 310
16.1.2 觸發器類型 310
16.1.3 觸發器的作用 311
16.2 DML觸發器311
16.3 語句級觸發器 313
16.3.1 創建語句級觸發器 314
16.3.2 觸發器的作用對象與類型 316
16.3.3 多個激活動作 317
16.3.4 觸發器謂詞 318
16.4 行觸發器 322
16.4.1 創建和使用行觸發器 323
16.4.2 行觸發器的變數引用 326
16.4.3 變數引用與referencing 330
16.4.4 觸發器的執行順序 331
16.4.5 觸發器的條件限制 331
16.5 instead of觸發器 333
16.5.1 instead of觸發器簡介 333
16.5.2 創建和使用instead of觸發器 334
16.6 DDL觸發器338
16.7 系統事件與用戶事件觸發器 339
16.7.1 系統事件觸發器 339
16.7.2 用戶事件觸發器 341
16.8 使用SQL Developer工具操作觸發器 344
16.9 管理觸發器346
16.9.1 查看觸發器 346
16.9.2 設定觸發器是否可用 347
16.10 小結 349
第17章 序列 350
17.1 自動生成序號 350
17.2 創建和使用序列350
17.2.1 創建序列 350
17.2.2 使用序列 352
17.3 序列屬性 357
17.3.1 創建序列的注意事項 358
17.3.2 指定序列初始值 358
17.3.3 序列的最大值和最小值 359
17.3.4 序列的增長步長 360
17.3.5 序列循環取值 363
17.3.6 序列快取大小 364
17.4 小結 367
第18章 事務和鎖 368
18.1 什麼是事務368
18.1.1 事務概述 368
18.1.2 事務的ACID特性 369
18.1.3 事務類型 369
18.1.4 事務的狀態 370
18.1.5 提交事務 371
18.1.6 事務的保存點 373
18.2 鎖376
18.2.1 並發訪問的常見問題 376
18.2.2 鎖概述 377
18.2.3 鎖分類 377
18.2.4 鎖等待和死鎖 377
18.2.5 預防死鎖 382
18.3 小結 382

第4篇 Oracle維護篇

第19章 表空間管理 383
19.1 Oracle 11g的基礎結構 383
19.1.1 模式 383
19.1.2 存儲結構 384
19.1.3 表空間相關概念 384
19.2 表空間管理385
19.2.1 查看錶空間 385
19.2.2 創建表空間 389
19.2.3 重命名表空間 392
19.2.4 設定表空間的狀態 393
19.3 合理利用表空間394
19.3.1 處理空間不足的情況 394
19.3.2 正確的數據類型 398
19.3.3 回收利用表空間 398
19.4 小結 400
第20章 資料庫安全管理 401
20.1 Oracle資料庫安全性概述 401
20.2 用戶 401
20.2.1 用戶簡介 401
20.2.2 創建用戶 402
20.2.3 用戶管理 406
20.3 許可權 408
20.3.1 許可權簡介 408
20.3.2 授予系統許可權 411
20.3.3 授予對象許可權 414
20.3.4 許可權的傳遞 418
20.3.5 收回對象的許可權 420
20.3.6 用戶和許可權 423
20.4 角色 423
20.4.1 角色簡介 424
20.4.2 創建角色 424
20.4.3 為角色授權 426
20.4.4 將一個角色授予另一個角色 428
20.4.5 為用戶授予角色 429
20.4.6 禁用和啟用角色 430
20.4.7 撤銷角色許可權 432
20.4.8 刪除角色 432
20.5 概要檔案 433
20.5.1 創建概要檔案 433
20.5.2 概要檔案管理 436
20.6 小結 437
第21章 備份與恢復 438
21.1 備份與恢復簡介438
21.1.1 備份 438
21.1.2 恢復 438
21.2 邏輯備份與恢復438
21.2.1 使用expdp和impdp工具進行邏輯備份恢復 438
21.2.2 使用OEM進行邏輯備份恢復 441
21.3 脫機備份 449
21.3.1 脫機備份 449
21.3.2 脫機恢復 450
21.4 在線上備份恢復 450
21.4.1 使用RAMN 450
21.4.2 備份恢復 453
21.5 小結 455
第22章 控制檔案和日誌檔案 456
22.1 控制檔案 456
22.1.1 控制檔案概述 456
22.1.2 查詢控制檔案 456
22.1.3 創建控制檔案 457
22.2 日誌檔案 459
22.2.1 日誌檔案概述 459
22.2.2 創建日誌組和日誌檔案 460
22.2.3 查詢日誌檔案組和日誌檔案 461
22.3 小結 462

作者簡介

劉麗霞
畢業於西安電子科技大學,獲博士學位,現就職於武警工程大學。長期從事計算機信息工程專業的教學與科研工作,對SQL Server、Oracle等資料庫有深入研究。主持並完成13項科研項目,在國內外期刊上發表大量的相關論文和著作。

書本前言

Oracle資料庫是美國的甲骨文公司開發的一款重量級資料庫系統。從發布至今,經歷了一個從不穩定到穩定,從功能簡單到強大的過程,已經發展到11g R2。它以高級結構化查詢語言(SQL)為基礎,成為目前最流行、套用最廣泛的客戶端/伺服器(Client/Server)體系結構的資料庫。Oracle資料庫不僅性能優越,還可以良好地支持大數據存儲格式,如圖形、音頻、視頻、動畫等媒體格式。
筆者結合自己多年的Oracle資料庫開發經驗和心得體會,花費了一年多的時間寫作本書。希望各位讀者能在本書的引領下進入Oracle資料庫開發大門,對並Oracle資料庫有更深入的理解。本書結合大量實例和多媒體教學視頻,對Oracle知識點相關的原理進行了深入淺出的講解。更主要的是,本書結合實際套用環境,提供了一系列解決問題的思路和方法,包括詳細的操作步驟,具有很強的實戰性和可操作性。學習完本書後,讀者應該可以具備獨立進行項目開發的能力。

本書特色

1.內容全面、系統、深入
本書介紹了Oracle資料庫開發的基礎知識、開發工具、數據查詢、Oracle資料庫維護等內容。
2.講解由淺入深,循序漸進
本書從Oracle資料庫的基礎開始講解,逐步深入到Oracle資料庫的高級開發技術,內容梯度從易到難,講解由淺入深,循序漸進,適合各層次的讀者閱讀。
3.貫穿大量的開發實例和技巧,迅速提升開發水平
本書在講解知識點時貫穿了大量短小精悍的典型實例,並給出了大量的開發技巧,以便讓讀者分步實踐練習各個實例,更好地理解各種概念和開發技術。
4.配大量多媒體語音教學視頻,學習效果好
作者專門錄製了大量的配套多媒體語音教學視頻,以便讓讀者直觀地學習本書內容,提高學習效率。這些視頻與本書原始碼一起收錄於本書配套光碟中。

本書內容及體系結構

第1篇 Oracle基礎篇(第1~6章)
本篇主要內容包括:Oracle的安裝、Oracle常用工具、SQL Plus和SQL Developer、Oralce資料庫、Oracel數據類型與表的管理、表的約束等。通過本篇的學習,讀者可以掌握Oralce資料庫開發環境、Oralce資料庫開發工具以及數據表的創建和管理。
第2篇 Oracle查詢篇(第7~11章)
本篇主要內容包括:數據查詢、高級查詢、常用函式、索引、視圖等內容。通過本篇的學習,讀者可以學到Oralce資料庫最基本的數據表的查詢,並掌握最佳化查詢的各種方式。
第3篇 PL/SQL編程篇(第12~18章)
本篇主要內容包括:Oracle編程基礎、游標、存儲過程、函式、觸發器、序列、事務和鎖等技術。通過本篇的學習,讀者可以掌握Oracle資料庫中各種常見的資料庫高級編程技術。
第4篇 Oracle維護篇(第19~22章)
本篇主要內容包括:表空間管理、資料庫安全管理、備份與恢復、控制檔案和日誌檔案等。通過本篇的學習,讀者可以掌握有關Oracle資料庫表空間管理以及資料庫的備份和恢復等有關資料庫維護的核心技術及套用。
本書讀者對象
Oracle資料庫初學者;
想全面學習Oracle資料庫開發技術的人員;
Oracle資料庫專業開發人員;
利用Oracle資料庫開發的工程技術人員;
使用各種語言的軟體程式設計師;
社會培訓班學員;
致謝
本書主要由劉麗霞(武警工程學院)編寫。由於時間匆忙,編寫過程中難免有疏漏和不妥之處,盡請批評、指正。
編 者

相關詞條

熱門詞條

聯絡我們