Oracle數據庫應用與開發案例教程

-
【作 者】王紅
【I S B N 】978-7-5170-0337-3
【責任編輯】
【適用讀者群】本科
【出版時間】2012-11-26
【開 本】16
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】368
【千字數】565
【印 張】23
【定 價】¥40
【叢 書】21世紀高等院校規劃教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書針對Oracle 11g編寫,主要介紹了Oracle數據庫應用和開發的知識,包括Oracle數據庫體系結構、表空間和數據文件管理、控制文件管理和重做日志管理、表管理、SQL語言、索引管理和視圖管理、PL/SQL編程、用戶權限與安全管理、數據庫備份與恢復、SQL語句優化、Oracle企業管理器OEM和軟件開發綜合實訓等。
本書注重應用能力的培養,采取通俗易懂的編寫風格,強調理論與實際相結合。全書所有例題都貫穿資產管理系統ZCGL來講解,便于讀者以ZCGL系統為線索,由淺入深、由抽象到具體、系統而全面地掌握Oracle的核心知識。
為了加深讀者對Oracle系統的理解,提高讀者的操作水平,又以學生選課系統MYXKXT為基礎,編寫了每章的實驗指導。通過上機實驗加深對基本理論和基本概念的理解,并能夠編寫具體JSP+Oracle應用程序,大幅提高學生綜合理論水平和應用Oracle進行Web數據庫研發的能力。
本書適合作為高等院校相關專業、高職高專計算機類專業和各種培訓班的教材使用,也可供廣大科技人員和感興趣的讀者參考。
Oracle是Oracle公司的核心產品,是一種關系型數據庫管理系統,具有安全性、完整性、可靠性和一致性等優點,是數據庫領域最優秀的數據庫之一,掌握Oracle數據庫技術是眾多程序開發人員的基本要求。Oracle 11g是Oracle公司于2007年7月12日正式推出的最新數據庫軟件,在Oracle 10g的基礎上對企業級網格計算進行了擴展,具有良好的體系結構,強大的數據處理能力、豐富實用的功能和許多創新特性。
目前市場上關于Oracle的書籍種類繁多,有的大而全,偏重理論介紹,使讀者不知從何下手對Oracle進行操作;有些書籍對操作介紹較多,但理論介紹又不夠全面不夠深入,使讀者不能完全理解Oracle的原理。因此,如何既能掌握Oracle數據庫的精華知識又能快速入手對Oracle數據庫進行操作,是本書要解決的主要問題。本書采取簡單通俗易懂的編寫風格,以統一案例以及實驗指導的形式來介紹數據庫的實際應用,旨在幫助讀者掌握一定的應用技巧。
本書針對Oracle 11g編寫,具有以完整案例為主線,面向應用,兼顧理論,概念準確,語言簡練和示例豐富等特點。
特色一:主次分明、重點突出。教材編寫時以Oracle開發中基本原理、常用技術、重要技術為主線,不面面俱到,果斷地刪繁就簡,做到主次分明、重點突出。
特色二:強調實用性。本書以“實用”為目的組織內容,適當弱化基本原理部分,簡略或者省略介紹Oracle中抽象難懂且實用性不強的知識點,加強技術應用。同時,選擇企業的一些應用系統實例作為主線,對課材內容進行合理的設計和組織,增加實用性技術的講授比例。
特色三:講解明晰,易于理解掌握。全書所有例題都圍繞一個案例——資產管理系統ZCGL來講解,便于讀者以ZCGL系統為線索,由淺入深、由抽象到具體、系統地掌握Oracle的核心知識。
特色四:精心設計實驗案例,提供大量上機實習和指導。為了加深讀者對Oracle系統的理解,提高讀者的操作水平,本書還以學生選課系統MYXKXT為基礎,編寫了實驗指導,詳見每章實驗部分。學生在實驗時帶有很強的目的性,有的放矢,激發學生自我學習能力。
特色五:精心設計項目開發實例,本書第十三章“軟件開發綜合實訓”中基于JSP技術對選課系統進行了軟件開發。這是一個很好的應用實例,是理論教學的引申和完善。通過開發實例全方位鍛煉和培養學生對知識的理解與應用能力。
本書共分為13章,主要內容如下:
第一章:Oracle數據庫簡介,主要介紹在Windows平臺上安裝Oracle 11g以及創建數據庫的基本步驟,介紹兩個常用的Oracle管理工具SQL*Plus和Oracle Enterprise Manager的使用方法,Oracle實例的啟動與關閉的方法,以及本書使用的教學案例和實驗案例。
第二章:Oracle數據庫體系結構,本章詳細介紹數據庫的內存結構、進程結構、邏輯結構及物理結構;并簡單介紹Oracle中的數據字典。
第三章:表空間和數據文件管理,本章主要介紹Oracle的基本表空間、臨時表空間、大文件表空間、非標準數據庫表空間和撤銷表空間等表空間的創建和管理。
第四章:控制文件管理和重做日志管理,本章主要介紹如何管理控制文件和重做日志文件。
第五章:表管理,本章對方案、表的管理以及表的完整性約束、序列和同義詞等知識進行了詳細介紹。
第六章:SQL語言,本章首先對SQL語言進行簡單介紹,然后介紹查詢、插入、修改和刪除等SQL語句的用法,并對數據庫事務提交、回退及各種常用函數的用法進行介紹。
第七章:索引管理和視圖管理,本章主要介紹索引和視圖的創建和維護方法。
第八章:PL/SQL編程,本章主要介紹PL/SQL的基本語法、數據結構、控制結構,以及如何使用游標、異常處理和觸發器。
第九章:用戶權限與安全管理,本章主要講述在Oracle中如何進行用戶管理和概要文件管理并使用概要文件管理口令和資源,以及如何進行權限和角色的創建以及管理。
第十章:數據庫備份與恢復,本章將介紹如何使用EXP/IMP進行邏輯備份,以及如何使用RMAN工具進行數據庫的備份與恢復。
第十一章:SQL語句優化,本章主要講述SQL語句優化目的、執行順序、優化原則以及如何有效進行表的連接和使用索引。
第十二章:Oracle企業管理器OEM,本章主要介紹如何在Oracle企業管理器OEM(Oracle Enterprise Manager)中進行數據庫的各種管理。
第十三章:軟件開發綜合實訓:選課系統的設計與實現,本章對選課系統進行需求分析和功能分析,對系統總體結構進行分析,并對JSP中選課系統的系統實現進行了詳細介紹。
本書全部例題和程序都已上機調試通過,適合作為高等院校相關專業、高職高專計算機類專業和各種培訓班的教材使用,也可供廣大科技人員和感興趣的讀者參考。
本書由王紅教授任主編,袁衛華、徐功文、孫彥燊、黃忠義任副主編。馬興福、符光梅、臧麗、孔祥生、周倩、徐鵬、李向偉、金月恒、梁棟、劉法明、張曉、王世超、王成等參與了編寫初稿與校稿工作,本書所有實驗章節由王紅、袁衛華編寫,全書的整理和審稿工作由王紅教授負責。本書在編寫過程中得到了許多支持和幫助,在此表示衷心感謝。最后,感謝中國水利水電出版社對本書出版的支持與幫助。
由于作者水平有限,書中難免會有不足之處,懇請廣大讀者批評指正,作者將不勝感激。在閱讀本書時,如果發現任何問題,請發E-mail至wanghong106@163.com,歡迎提出寶貴意見,在此一并表示感謝。
王 紅
2012年8月
前言
第一章 Oracle數據庫簡介 1
1.1 Oracle 11g簡介 1
1.2 Oracle數據庫軟件的安裝 2
1.3 檢驗安裝是否成功 13
1.4 卸載Oracle數據庫 16
1.5 Oracle管理工具 17
1.5.1 SQL*Plus 18
1.5.2 Oracle Enterprise Manager 20
1.6 Oracle實例的啟動與關閉 21
1.6.1 啟動Oracle實例 21
1.6.2 關閉Oracle實例 23
1.7 案例介紹 24
1.7.1 教學案例:資產管理系統ZCGL 24
1.7.2 實驗案例:學生公共課選課系統
MYXKXT 25
習題一 27
實驗一 創建數據庫MYXKXT 28
第二章 Oracle數據庫體系結構 35
2.1 內存結構 35
2.1.1 SGA 35
2.1.2 PGA 37
2.2 進程結構 40
2.2.1 用戶進程 40
2.2.2 服務進程 40
2.2.3 后臺進程 41
2.3 物理結構 43
2.3.1 數據文件 43
2.3.2 重做日志文件 44
2.3.3 控制文件 45
2.3.4 其他文件 45
2.4 邏輯結構 46
2.4.1 表空間 46
2.4.2 段 46
2.4.3 區 47
2.4.4 數據塊 47
2.5 數據字典 47
2.5.1 數據字典概念 47
2.5.2 常用數據字典 48
2.5.3 常用動態性能視圖 49
習題二 50
實驗二 認識和熟悉Oracle數據庫體系結構 51
第三章 表空間和數據文件管理 54
3.1 表空間和數據文件概述 54
3.1.1 表空間的作用 54
3.1.2 默認表空間 55
3.1.3 表空間的狀態屬性 55
3.1.4 數據文件 56
3.2 創建表空間 56
3.2.1 創建表空間的一般命令 57
3.2.2 創建(永久)表空間 58
3.2.3 創建臨時表空間 59
3.2.4 創建撤銷表空間 60
3.2.5 創建非標準塊表空間 60
3.2.6 創建大文件表空間 61
3.3 維護表空間和數據文件 61
3.3.1 重命名表空間和數據文件 61
3.3.2 改變表空間和數據文件狀態 62
3.3.3 設置默認表空間 64
3.3.4 擴展表空間 65
3.3.5 刪除表空間和數據文件 66
3.4 查看表空間和數據文件信息 67
習題三 69
實驗三 表空間和數據文件管理 70
第四章 控制文件管理和重做日志管理 75
4.1 控制文件管理 75
4.1.1 創建控制文件 76
4.1.2 多路復用控制文件 78
4.1.3 刪除控制文件 80
4.1.4 備份控制文件 81
4.1.5 查看控制文件信息 82
4.2 重做日志文件管理 83
4.2.1 創建重做日志文件 83
4.2.2 刪除重做日志文件組 85
4.2.3 修改重做日志文件的位置或名稱 86
4.2.4 查看重做日志文件信息 87
習題四 88
實驗四 控制文件和重做日志管理 88
第五章 表管理 92
5.1 表和方案 92
5.1.1 常用數據類型 92
5.1.2 用戶與方案 94
5.2 創建表 94
5.2.1 創建標準表 95
5.2.2 創建臨時表 96
5.2.3 基于已有的表創建新表 97
5.3 維護表 99
5.3.1 字段操作 99
5.3.2 重命名表 101
5.3.3 刪除表 101
5.3.4 移動表 102
5.3.5 查看表信息 102
5.4 維護約束條件 103
5.4.1 約束條件的定義 103
5.4.2 約束的狀態 105
5.4.3 添加和刪除約束 106
5.4.4 查看約束信息 107
5.5 序列和同義詞 108
5.5.1 創建和使用序列 108
5.5.2 同義詞 111
習題五 112
實驗五 表管理——為myxkxt創建表 114
實驗六 表管理——向表中插入記錄信息及其驗證完整性約束 118
第六章 SQL語言 124
6.1 SQL語言簡介 124
6.2 數據查詢 125
6.2.1 基本查詢 125
6.2.2 分組查詢 130
6.2.3 連接查詢 132
6.2.4 合并查詢 134
6.2.5 子查詢 135
6.3 其他DML操作 137
6.3.1 插入數據 137
6.3.2 更新數據 138
6.3.3 刪除數據 139
6.4 常用函數 139
6.4.1 數字函數 140
6.4.2 字符函數 140
6.4.3 日期時間函數 141
6.4.4 轉換函數 142
6.5 事務管理 142
6.5.1 事務的基本概念 142
6.5.2 提交事務 143
6.5.3 回退事務 143
習題六 144
實驗七 SQL語言——單表查詢 146
實驗八 SQL語言——多表查詢 151
第七章 索引管理和視圖管理 154
7.1 創建索引 154
7.1.1 索引概述及創建方法 154
7.1.2 創建B樹索引 155
7.1.3 創建位圖索引 156
7.1.4 創建反向索引 157
7.1.5 創建函數索引 157
7.2 維護索引 158
7.2.1 重命名索引 158
7.2.2 重建索引 158
7.2.3 合并索引 159
7.2.4 刪除索引 159
7.2.5 查看索引信息 160
7.3 創建視圖 160
7.3.1 視圖概述 160
7.3.2 創建視圖 161
7.4 維護視圖 162
7.4.1 修改視圖 162
7.4.2 刪除視圖 163
7.4.3 查看視圖信息 163
習題七 164
實驗九 表管理——使用索引和視圖 164
第八章 PL/SQL編程 170
8.1 PL/SQL結構 170
8.1.1 PL/SQL語言 170
8.1.2 PL/SQL塊結構 170
8.1.3 變量與常量 172
8.1.4 數據類型 172
8.2 控制結構 177
8.2.1 順序控制語句 177
8.2.2 條件語句 177
8.2.3 循環語句 181
8.3 游標 184
8.3.1 顯式游標 184
8.3.2 隱式游標 187
8.4 異常處理 188
8.4.1 預定義異常 188
8.4.2 非預定義異常 189
8.4.3 自定義異常 190
8.4.4 異常函數 191
8.5 PL/SQL子程序 192
8.5.1 存儲過程 192
8.5.2 函數 194
8.6 程序包 196
8.6.1 包規范 196
8.6.2 包體 197
8.6.3 調用程序包 197
8.7 觸發器 198
8.7.1 觸發器簡介 198
8.7.2 DML觸發器 199
8.7.3 INSTEAD OF觸發器 200
8.7.4 管理觸發器 202
習題八 203
實驗十 PL/SQL編程 204
實驗十一 觸發器的使用 210
第九章 用戶權限與安全管理 214
9.1 用戶管理 214
9.1.1 用戶概述 214
9.1.2 創建用戶 216
9.1.3 修改用戶 218
9.1.4 刪除用戶 218
9.1.5 查看用戶信息 219
9.2 概要文件管理 222
9.2.1 創建概要文件 222
9.2.2 修改概要文件 224
9.2.3 分配概要文件 224
9.2.4 刪除概要文件 224
9.2.5 查看概要文件信息 225
9.3 使用概要文件管理口令和資源 226
9.3.1 管理口令 226
9.3.2 管理資源 228
9.4 權限管理 229
9.4.1 權限簡介 229
9.4.2 權限分類 229
9.4.3 系統權限管理 230
9.4.4 對象權限管理 235
9.5 角色管理 239
9.5.1 角色概念 239
9.5.2 預定義角色 241
9.5.3 自定義角色 241
9.5.4 管理角色 243
9.5.5 顯示角色信息 243
9.5.6 使用角色 244習題九 245
實驗十二 用戶、概要文件、權限和角色管理 246
第十章 數據庫備份與恢復 252
10.1 Oracle的備份與恢復機制 252
10.1.1 備份的內容 252
10.1.2 備份的類型 253
10.1.3 存檔模式與非存檔模式 254
10.1.4 恢復與修復 255
10.2 使用EXP/IMP進行邏輯備份 256
10.2.1 EXP導出數據 256
10.2.2 IMP導入數據 262
10.3 恢復管理器RMAN 264
10.3.1 RMAN簡介 264
10.3.2 RMAN常用命令 265
10.3.3 RMAN備份應用舉例 271
10.3.4 RMAN恢復 281
習題十 288
第十一章 SQL語句優化 289
11.1 SQL語句優化概述 289
11.1.1 進行SQL語句優化的原因 289
11.1.2 SQL語句執行的一般順序 290
11.2 SQL優化的一般原則 290
11.2.1 SELECT語句中避免使用“*” 290
11.2.2 編寫SQL時使用相同的編碼風格 292
11.2.3 使用WHERE子句代替HAVING子句 293
11.2.4 使用TRUNCATE代替DELETE 294
11.2.5 在確保完整的情況下多COMMIT 294
11.2.6 使用EXISTS替代IN 295
11.2.7 用EXISTS替代DISTINCT 296
11.2.8 使用表連接而不是多個查詢 297
11.2.9 使用“<=”替代“<” 298
11.2.10 盡量使用表的別名(ALIAS)并在列前標注來源于哪個表 299
11.3 表的連接方法 300
11.3.1 FROM子句中將數據量最小的表作為驅動表 300
11.3.2 WHERE子句的連接順序 301
11.4 有效使用索引 302
習題十一 303
第十二章 Oracle企業管理器OEM 304
12.1 OEM簡介 304
12.1.1 OEM數據庫控制啟動 304
12.1.2 OEM數據庫控制設置 305
12.2 OEM數據庫存儲管理 307
12.2.1 管理控制文件 307
12.2.2 管理重做日志文件 308
12.2.3 管理表空間 311
12.2.4 管理數據文件 314
12.3 OEM其他管理 317
12.3.1 查看數據庫性能 317
12.3.2 管理數據庫對象 318
12.3.3 用戶和權限管理 321
12.3.4 初始化參數管理 323
12.3.5 數據庫維護 324
第十三章 軟件開發綜合實訓:選課系統的
設計與實現 326
13.1 系統分析 326
13.1.1 需求分析 326
13.1.2 系統設計 326
13.2 環境搭建 327
13.2.1 創建數據庫 327
13.2.2 環境搭建 327
13.3 系統實現 328
13.3.1 數據庫連接類 328
13.3.2 登錄模塊 332
13.3.3 跳轉模塊 335
13.3.4 管理員模塊 336
13.3.5 教師模塊 340
13.3.6 學生模塊 343
附錄 346
參考文獻 357