Oracle 10g數(shù)據(jù)庫管理、應(yīng)用與開發(fā)標準教程
定 價:39.8 元
叢書名:清華電腦學(xué)堂
- 作者:馬曉玉、孫巖、孫江瑋等
- 出版時間:2007/11/1
- ISBN:9787302161844
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:TP311.138
- 頁碼:
- 紙張:膠版紙
- 版次:1
- 開本:16
Oracle數(shù)據(jù)庫作為世界范圍內(nèi)性能最優(yōu)異的數(shù)據(jù)庫系統(tǒng)之一,其在數(shù)據(jù)庫市場的占有率始終處于數(shù)據(jù)庫領(lǐng)域的領(lǐng)先地位。本書以O(shè)racle 10g for Windows XP為平臺,由淺入深地介紹了Oracle 10g系統(tǒng)的使用方法和基本管理。主要內(nèi)容包括:Oracle關(guān)系數(shù)據(jù)庫,Oracle數(shù)據(jù)庫體系結(jié)構(gòu),SQL基本查詢,修改SQL數(shù)據(jù)與SQL*Plus命令,PL/SQL編程基礎(chǔ),用戶、模式和表,高級查詢,過程、函數(shù)和程序包,表類型,索引,視圖、序列和同義詞,觸發(fā)器,事務(wù)與并發(fā)控制,安全,管理存儲結(jié)構(gòu)和基本的備份與恢復(fù)等知識。
本書全面介紹使用Oracle數(shù)據(jù)庫管理應(yīng)用與開發(fā)知識,適合作為普通高校計算機專業(yè)Oracle教材,也可以作為Oracle數(shù)據(jù)庫開發(fā)和應(yīng)用人員的參考資料。
本書封面貼有清華大學(xué)出版社防偽標簽,無標簽者不得銷售。
Oracle數(shù)據(jù)庫是世界范圍內(nèi)性能最優(yōu)異的數(shù)據(jù)庫系統(tǒng)之一,它在數(shù)據(jù)庫市場的占有率遠遠超過其對手,始終處于數(shù)據(jù)庫領(lǐng)域的領(lǐng)先地位。2003年,Oracle公司又推出了代表數(shù)據(jù)庫領(lǐng)域最新技術(shù)的網(wǎng)格數(shù)據(jù)庫系統(tǒng)——Oracle 10g,其中的g代表網(wǎng)格。這標志著Oracle數(shù)據(jù)庫完成了從互聯(lián)網(wǎng)“i”到網(wǎng)格“g”的演進。
本書以O(shè)racle 10g for Windows XP為平臺,由淺入深地介紹了Oracle 10g系統(tǒng)的使用方法和基本管理技術(shù)。主要包括:Oracle關(guān)系數(shù)據(jù)庫、Oracle數(shù)據(jù)庫體系結(jié)構(gòu)、SQL語言基礎(chǔ)、PL/SQL程序設(shè)計、模式對象管理、存儲管理和基本的備份與恢復(fù)等知識。
本書內(nèi)容
第1章 Oracle關(guān)系數(shù)據(jù)庫。介紹關(guān)系數(shù)據(jù)庫的系統(tǒng)設(shè)計,數(shù)據(jù)庫系統(tǒng)的應(yīng)用系統(tǒng)結(jié)構(gòu),Oracle 10g數(shù)據(jù)庫安裝注意事項,使用DBCA創(chuàng)建數(shù)據(jù)庫,以及Oracle數(shù)據(jù)庫服務(wù)的啟動和可用的數(shù)據(jù)庫用戶等知識。
第2章 Oracle數(shù)據(jù)庫體系結(jié)構(gòu)。介紹Oracle 10g強大的體系結(jié)構(gòu),包括數(shù)據(jù)庫的物理存儲結(jié)構(gòu)、邏輯存儲結(jié)構(gòu)、內(nèi)存結(jié)構(gòu)和實例的進程結(jié)構(gòu),以及數(shù)據(jù)字典。
第3章 SQL基本查詢。介紹使用SQL SELECT語句對數(shù)據(jù)庫進行各種查詢,包括SELECT語句及其各種子句的使用,以及SQL*Plus中函數(shù)的使用。
第4章 修改SQL數(shù)據(jù)與SQL*Plus命令。介紹對存儲的數(shù)據(jù)進行修改和SQL*Plus命令的應(yīng)用知識,包括添加數(shù)據(jù)、修改數(shù)據(jù)、刪除數(shù)據(jù),以及SQL*Plus命令的使用。
第5章 用戶、模式和表。介紹用戶與模式的概念和模式對象——表的創(chuàng)建,主要包括模式、模式對象、用戶的基本創(chuàng)建、基本表的創(chuàng)建、基本表結(jié)構(gòu)的修改、基于表的約束等。
第6章 高級查詢。介紹多表查詢和子查詢,主要包括使用逗號連接的多表查詢、JOIN連接的多表查詢、集合操作和子查詢的使用。
第7章 PL/SQL編程基礎(chǔ)。介紹PL/SQL程序的編程知識,包括PL/SQL程序結(jié)構(gòu)、變量和常量的使用、特殊類型變量、復(fù)合變量、條件判斷語句、循環(huán)語句、游標和異常處理。
第8章 過程、函數(shù)和程序包。介紹PL/SQL的存儲過程和函數(shù),以及程序包,包括存儲過程和函數(shù)的創(chuàng)建與調(diào)用,程序包主體和規(guī)范,以及過程、函數(shù)和程序包的依 賴性。
第9章 表類型。介紹Oracle支持的表類型,包括外部表的使用、索引組織表、臨時表、對象和對象表、分區(qū)表和簇表的創(chuàng)建與使用。
第10章 索引。介紹Oracle的另一個重要模式對象——索引,主要包括索引的作用、類型和工作原理,各種索引的創(chuàng)建,以及對索引的管理。
第11章 視圖、序列和同義詞。介紹Oracle其他模式對象——視圖、序列和同義詞,包括視圖的創(chuàng)建、視圖的使用、可更新視圖,以及序列和同義詞的創(chuàng)建與使用。
第12章 觸發(fā)器。介紹Oracle中觸發(fā)器的使用,包括觸發(fā)器的組成、Oracle支持的觸發(fā)器類型,以及各種觸發(fā)器的修改。
第13章 事務(wù)與并發(fā)控制。介紹Oracle中事務(wù)機制和多事務(wù)訪問控制,包括事務(wù)的概念、對事務(wù)ACID特性的支持、事務(wù)控制語句,以及通過各種鎖對多個事務(wù)并發(fā)訪問的控制機制。
第14章 安全。介紹Oracle的用戶、權(quán)限和角色管理,包括用戶配置文件的創(chuàng)建和應(yīng)用、對用戶賬號的管理、系統(tǒng)權(quán)限、對象權(quán)限的授予與撤銷,以及角色的概念和授予、撤銷。
第15章 管理存儲結(jié)構(gòu)。介紹表空間的創(chuàng)建,以及對段、盤區(qū)、數(shù)據(jù)塊的管理,主要包括創(chuàng)建本地化管理表空間、調(diào)整表空間屬性、調(diào)整與表空間相關(guān)的數(shù)據(jù)文件、臨時表空間、大文件表空間、非標準表空間,以及自動撤銷表空間管理。
第16章 備份與恢復(fù)。介紹為避免數(shù)據(jù)庫出現(xiàn)故障而丟失數(shù)據(jù),而進行的備份與恢復(fù),包括數(shù)據(jù)庫的物理備份與恢復(fù)、邏輯備份與恢復(fù)和RMAN管理的備份與恢復(fù)。
本書特色
本書是一本完整介紹Oracle 10g數(shù)據(jù)庫開發(fā)與應(yīng)用知識的教程,在編寫過程中,我們精心設(shè)計了豐富的示例,幫助讀者順利學(xué)習(xí)本書內(nèi)容。
? 理論結(jié)合實踐:全書提供了豐富的分析示例,通過示例分析、設(shè)計過程,講解Oracle的應(yīng)用知識。
? 網(wǎng)站互動:我們在網(wǎng)站上提供了本書示例和擴展內(nèi)容的資料鏈接,便于學(xué)生繼續(xù)學(xué)習(xí)相關(guān)知識;授課教師也可以下載本書教學(xué)課件和其他教學(xué)資源。
? 思考與練習(xí):選擇題測試讀者對本章所介紹內(nèi)容的掌握程度;簡答題理論結(jié)合實際,引導(dǎo)學(xué)生深入掌握Oracle理論知識。
讀者對象
本書全面介紹使用Oracle數(shù)據(jù)庫應(yīng)用與開發(fā)知識,適合作為普通高校計算機專業(yè)Oracle教材,也可以作為Oracle數(shù)據(jù)庫開發(fā)和應(yīng)用人員的參考資料。
本書作者長期從事應(yīng)用Oracle數(shù)據(jù)庫開發(fā)實踐和教學(xué)培訓(xùn)工作。參與本書編寫人員除了封面署名人員之外,還有吳俊海、張瑞萍、董志鵬、祝紅濤、郝相林、劉萬軍、楊寧寧、郭曉俊、康顯麗、辛愛軍、牛小平、賈栓穩(wěn)、王立新、蘇靜、趙元慶、王蕾、亢鳳林、韋潛、郝安林等人。
由于時間倉促,書中疏漏之處在所難免,敬請讀者批評指正。讀者可以通過清華大學(xué)出版社網(wǎng)站www.tup.tsinghua.edu.cn與我們聯(lián)系。
編 者
2007年8月
前言 III
第1章 Oracle關(guān)系數(shù)據(jù)庫1
1.1 關(guān)系數(shù)據(jù)模型1
1.1.1 數(shù)據(jù)結(jié)構(gòu)1
1.1.2 關(guān)系操作3
1.1.3 關(guān)系的完整性約束3
1.2 關(guān)系與關(guān)系模式4
1.3 數(shù)據(jù)庫的設(shè)計4
1.3.1 實體-關(guān)系模型5
1.3.2 E-R圖的繪制6
1.3.3 將E-R模型轉(zhuǎn)化為
關(guān)系模式7
1.4 關(guān)系數(shù)據(jù)庫規(guī)范化理論7
1.4.1 函數(shù)依賴8
1.4.2 范式理論9
1.5 Oracle數(shù)據(jù)庫的應(yīng)用系統(tǒng)結(jié)構(gòu)12
1.5.1 Oracle分布式數(shù)據(jù)庫
系統(tǒng)結(jié)構(gòu)12
1.5.2 Oracle客戶/服務(wù)器
系統(tǒng)結(jié)構(gòu)13
1.5.3 Oracle瀏覽器/服務(wù)器
系統(tǒng)結(jié)構(gòu)14
1.6 Oracle 10g安裝14
1.6.1 安裝Oracle 10g系統(tǒng)需求14
1.6.2 在Windows環(huán)境下的
安裝過程15
1.6.3 查看Oracle系統(tǒng)20
1.7 創(chuàng)建數(shù)據(jù)庫20
1.8 數(shù)據(jù)庫的啟動與關(guān)閉25
1.9 Oracle默認用戶26
第2章 Oracle數(shù)據(jù)庫體系結(jié)構(gòu)27
2.1 物理存儲結(jié)構(gòu)27
2.1.1 數(shù)據(jù)文件27
2.1.2 日志文件29
2.1.3 控制文件31
2.1.4 參數(shù)文件31
2.2 邏輯存儲結(jié)構(gòu)32
2.2.1 數(shù)據(jù)塊32
2.2.2 盤區(qū)33
2.2.3 段33
2.2.4 表空間34
2.3 內(nèi)存結(jié)構(gòu)34
2.3.1 系統(tǒng)全局區(qū)35
2.3.2 程序全局區(qū)37
2.3.3 排序區(qū)37
2.3.4 大池37
2.3.5 Java池37
2.4 實例的進程結(jié)構(gòu)37
2.4.1 DBWR39
2.4.2 LGWR40
2.4.3 ARCH40
2.4.4 CKPT41
2.4.5 SMON42
2.4.6 PMON42
2.4.7 RECO42
2.4.8 Dnnn42
2.5 數(shù)據(jù)字典44
2.6 思考與練習(xí)45
第3章 SQL基本查詢47
3.1 SQL語句概述47
3.2 SQL*Plus48
3.3 本書所用的示例模式49
3.3.1 VENDITION模式49
3.3.2 SCHOOL模式51
3.4 SQL SELECT語句51
3.4.1 SELECT子句和FROM
子句52
3.4.2 WHERE子句54
3.4.3 ORDER BY子句58
3.4.4 使用統(tǒng)計函數(shù)60
3.4.5 GROUP BY子句62
3.4.6 HAVING子句64
3.5 在SQL*Plus中使用函數(shù)65
3.5.1 字符串函數(shù)65
3.5.2 數(shù)字函數(shù)67
3.5.3 日期時間函數(shù)68
3.5.4 轉(zhuǎn)換函數(shù)69
3.6 實驗指導(dǎo)70
3.7 思考與練習(xí)71
第4章 修改SQL數(shù)據(jù)與SQL*Plus
命令73
4.1 添加數(shù)據(jù)73
4.1.1 簡單的INSERT語句74
4.1.2 省略列表清單75
4.1.3 INSERT語句與SELECT
語句76
4.2 更新數(shù)據(jù)77
4.3 刪除數(shù)據(jù)79
4.3.1 DELETE語句79
4.3.2 TRUNCATE語句80
4.4 SQL*Plus命令81
4.4.1 設(shè)置環(huán)境變量命令81
4.4.2 格式化查詢結(jié)果命令84
4.4.3 文件操作命令87
4.4.4 交互命令90
4.4.5 幫助命令92
4.4.6 其他的SQL*Plus命令92
4.5 實驗指導(dǎo)93
4.6 思考與練習(xí)94
第5章 用戶、模式和表96
5.1 用戶和模式96
5.1.1 模式96
5.1.2 模式對象與非模式對象97
5.1.3 用戶97
5.2 表99
5.2.1 數(shù)據(jù)類型99
5.2.2 創(chuàng)建表103
5.2.3 表特性106
5.2.4 默認值和NULL值111
5.3 修改表112
5.3.1 增加和刪除字段112
5.3.2 調(diào)整表特性113
5.3.3 手動給表分配存儲空間114
5.4 刪除表定義115
5.5 數(shù)據(jù)完整性116
5.5.1 定義PRIMARY KEY
約束117
5.5.2 定義NOT NULL約束118
5.5.3 定義UNIQUE約束119
5.5.4 定義FOREIGN KEY
約束120
5.5.5 定義CHECK約束123
5.5.6 約束的狀態(tài)124
5.6 查看表信息125
5.6.1 查看表的基本信息125
5.6.2 分析表的存儲空間125
5.7 實驗指導(dǎo)128
5.8 思考與練習(xí)131
第6章 高級查詢133
6.1 簡單連接133
6.1.1 基本連接133
6.1.2 表別名136
6.1.3 多個表之間的連接136
6.2 使用JOIN連接查詢137
6.2.1 內(nèi)連接138
6.2.2 外連接139
6.2.3 交叉連接141
6.3 集合操作141
6.3.1 UNION142
6.3.2 INTERSECT143
6.3.3 MINUS 143
6.4 子查詢144
6.4.1 使用返回多行的子查詢144
6.4.2 使用單值子查詢147
6.4.3 使用嵌套子查詢148
6.5 實驗指導(dǎo)149
6.6 思考與練習(xí)151
第7章 PL/SQL編程基礎(chǔ)154
7.1 PL/SQL程序結(jié)構(gòu)154
7.2 變量與常量156
7.2.1 PL/SQL標識符156
7.2.2 標量變量157
7.2.3 為變量和常量賦值158
7.2.4 作用域158
7.3 PL/SQL塊中的SQL語句159
7.4 使用%TYPE和%ROWTYPE
類型的變量160
7.4.1 %TYPE變量161
7.4.2 %ROWTYPE變量161
7.5 復(fù)合變量162
7.5.1 記錄類型163
7.5.2 記錄表類型165
7.6 條件判斷語句168
7.6.1 IF語句169
7.6.2 CASE語句171
7.7 循環(huán)語句172
7.7.1 無條件循環(huán)173
7.7.2 WHILE循環(huán)174
7.7.3 FOR循環(huán)175
7.8 游標176
7.8.1 隱式游標176
7.8.2 顯式游標178
7.8.3 游標FOR循環(huán)181
7.8.4 游標變量181
7.8.5 使用游標更新數(shù)據(jù)庫184
7.9 異常處理185
7.9.1 預(yù)定義的Oracle異常185
7.9.2 非預(yù)定義的異常188
7.9.3 用戶自定義的異常處理189
7.9.4 異常傳播190
7.9.5 在PL/SQL中使用SQLCODE
和SQLERRM193
7.10 實驗指導(dǎo)194
7.11 思考與練習(xí)197
第8章 過程、函數(shù)和程序包199
8.1 存儲過程199
8.1.1 創(chuàng)建存儲過程199
8.1.2 調(diào)用存儲過程200
8.1.3 修改存儲過程201
8.1.4 參數(shù)201
8.1.5 局部變量和子過程205
8.2 函數(shù)206
8.2.1 創(chuàng)建函數(shù)206
8.2.2 調(diào)用函數(shù)207
8.3 程序包208
8.3.1 規(guī)范209
8.3.2 主體210
8.3.3 私有成員212
8.3.4 實例化214
8.3.5 重載215
8.3.6 管理程序包和執(zhí)行權(quán)限217
8.4 依賴性218
8.5 實驗指導(dǎo)219
8.6 思考與練習(xí)222
第9章 表類型225
9.1 外部表225
9.1.1 建立外部表226
9.1.2 處理外部表錯誤228
9.1.3 修改外部表230
9.1.4 外部表的局限性231
9.2 索引組織表231
9.2.1 什么是索引組織表231
9.2.2 創(chuàng)建索引組織表232
9.2.3 維護索引組織表235
9.3 臨時表235
9.4 對象和對象表237
9.4.1 創(chuàng)建對象類型237
9.4.2 構(gòu)造函數(shù)238
9.4.3 引用對象類型239
9.4.4 方法240
9.4.5 繼承244
9.4.6 重寫246
9.4.7 對象表247
9.5 分區(qū)表250
9.5.1 創(chuàng)建分區(qū)表250
9.5.2 分區(qū)表的操作253
9.5.3 分區(qū)表的維護254
9.6 簇表255
9.6.1 創(chuàng)建簇和簇表255
9.6.2 管理簇256
9.7 散列聚簇表257
9.8 實驗指導(dǎo)258
9.9 思考與練習(xí)263
第10章 索引266
10.1 了解索引266
10.1.1 B樹索引267
10.1.2 位圖索引267
10.1.3 反向鍵索引269
10.1.4 基于函數(shù)的索引269
10.1.5 全局索引和局部索引270
10.2 創(chuàng)建索引271
10.2.1 創(chuàng)建B樹索引272
10.2.2 創(chuàng)建位圖索引274
10.2.3 創(chuàng)建反向鍵索引274
10.2.4 創(chuàng)建基于函數(shù)的索引274
10.2.5 創(chuàng)建全局和局部索引275
10.3 索引與約束277
10.4 管理索引278
10.4.1 合并索引和重建索引278
10.4.2 監(jiān)視索引279
10.4.3 刪除索引281
10.5 何時使用索引281
10.6 實驗指導(dǎo)282
10.7 思考與練習(xí)283
第11章 視圖、序列和同義詞285
11.1 視圖285
11.1.1 創(chuàng)建視圖285
11.1.2 檢索視圖定義286
11.1.3 連接視圖287
11.1.4 視圖的相關(guān)性287
11.1.5 帶錯誤創(chuàng)建視圖288
11.1.6 刪除視圖289
11.2 可更新的視圖289
11.3 管理序列291
11.3.1 創(chuàng)建序列291
11.3.2 修改序列293
11.3.3 查詢序列293
11.4 管理同義詞294
11.5 實驗指導(dǎo)295
11.6 思考與練習(xí)297
第12章 觸發(fā)器298
12.1 觸發(fā)器的組成298
12.2 Oracle觸發(fā)器的類型299
12.2.1 DML觸發(fā)器300
12.2.2 替代觸發(fā)器305
12.2.3 系統(tǒng)事件觸發(fā)器307
12.2.4 用戶事件觸發(fā)器307
12.3 ALTER TRIGGER語句308
12.4 與觸發(fā)器相關(guān)的數(shù)據(jù)字典309
12.5 實驗指導(dǎo)310
12.6 思考與練習(xí)313
第13章 事務(wù)與并發(fā)控制315
13.1 了解事務(wù)315
13.2 事務(wù)的ACID特性316
13.2.1 原子性316
13.2.2 一致性316
13.2.3 隔離性317
13.2.4 持久性318
13.3 事務(wù)控制語句318
13.3.1 設(shè)置事務(wù)屬性319
13.3.2 結(jié)束事務(wù)322
13.3.3 存儲點323
13.3.4 設(shè)置約束延期性325
13.4 并發(fā)控制327
13.4.1 鎖327
13.4.2 鎖模式327
13.5 鎖粒度329
13.5.1 TX鎖330
13.5.2 TM鎖330
13.5.3 數(shù)據(jù)庫級鎖331
13.6 查詢鎖331
13.7 死鎖334
13.8 實驗指導(dǎo)335
13.9 思考與練習(xí)336
第14章 安全338
14.1 用戶賬號338
14.1.1 用戶配置文件339
14.1.2 修改用戶賬號342
14.1.3 刪除用戶賬號344
14.1.4 監(jiān)視用戶345
14.2 權(quán)限管理345
14.2.1 系統(tǒng)權(quán)限346
14.2.2 對象權(quán)限349
14.3 角色管理352
14.3.1 系統(tǒng)預(yù)定義角色352
14.3.2 自定義角色353
14.3.3 啟用和禁用角色355
14.3.4 修改用戶時設(shè)置角色357
14.3.5 刪除角色357
14.4 實驗指導(dǎo)358
14.5 思考與練習(xí)359
第15章 管理存儲結(jié)構(gòu)360
15.1 表空間360
15.1.1 創(chuàng)建表空間360
15.1.2 表空間屬性364
15.1.3 調(diào)整表空間的
數(shù)據(jù)文件366
15.1.4 臨時表空間371
15.1.5 大文件表空間373
15.1.6 非標準塊表空間374
15.1.7 刪除表空間375
15.2 撤銷表空間375
15.2.1 什么是自動撤銷管理375
15.2.2 撤銷表空間管理參數(shù)376
15.2.3 管理撤銷表空間377
15.2.4 監(jiān)視撤銷表空間379
15.3 段379
15.4 盤區(qū)381
15.5 數(shù)據(jù)塊382
15.6 實驗指導(dǎo)383
15.7 思考與練習(xí)384
第16章 備份與恢復(fù)385
16.1 數(shù)據(jù)庫備份概述385
16.2 數(shù)據(jù)庫備份模式386
16.3 備份數(shù)據(jù)庫387
16.3.1 物理備份387
16.3.2 邏輯備份389
16.4 數(shù)據(jù)庫手動恢復(fù)395
16.4.1 實例恢復(fù)395
16.4.2 介質(zhì)恢復(fù)396
16.5 恢復(fù)管理器(RMAN)401
16.5.1 設(shè)置RMAN401
16.5.2 連接到目標數(shù)據(jù)庫402
16.5.3 RMAN操作目標
數(shù)據(jù)庫404
16.5.4 RMAN通道404
16.5.5 RMAN備份數(shù)據(jù)庫408
16.5.6 RMAN恢復(fù)數(shù)據(jù)庫413
16.5.7 RMAN管理恢復(fù)目錄416
16.6 實驗指導(dǎo)421
16.7 思考與練習(xí)422