商品描述
本書以Oracle 11g(中文版)為平臺,介紹Oracle基礎和應用,共為3部分。實用教程部分比較系統地介紹了Oracle 11g的主要功能,包括數據庫基礎、Oracle 11g數據庫介紹、數據庫的創建和操作、數據庫的查詢和視圖、索引與數據完整性、PL/SQL、存儲過程和觸發器、系統安全管理,以及表空間、備份和恢復等概念。基礎實訓部分包含了7個實訓案例,配套對應章節實訓。數據庫應用實訓部分先創建應用數據庫,然後介紹PHP、JavaEE、Python 、Visual C#和ASP.NET等流行平臺開發數據庫應用系統,不同平臺操作同樣的數據庫,實現功能基本相同,讀者舉一反三,為學習數據庫及其應開發用帶來極大的方便。 本書提供PPT課件、教學微視頻、6種應用開發工程源文件及其配套數據庫,讀者可在華信教育資源網(www.hxedu.com.cn)上免費下載。
目錄大綱
第 1 部分 實用教程
第 1 章 數據庫基礎 .............................................................................................................................. 1
1.1 數據庫的基本概念 ................................................................................................................... 1
1.1.1 數據庫系統 ........................................................................................................................ 1
1.1.2 數據模型 ........................................................................................................................... 2
1.1.3 關系數據庫語言 ................................................................................................................ 4
1.2 數據庫設計 ............................................................................................................................... 5
1.2.1 概念數據模型 .................................................................................................................... 5
1.2.2 邏輯數據模型 .................................................................................................................... 7
1.2.3 物理數據模型 .................................................................................................................... 8
第 2 章 Oracle 11g 數據庫介紹 ......................................................................................................... 9
2.1 Oracle 11g 數據庫的安裝 ......................................................................................................... 9
2.2 Oracle 11g 數據庫的基本結構 ............................................................................................... 13
2.2.1 內部結構 ......................................................................................................................... 13
2.2.2 外部結構 ......................................................................................................................... 16
2.2.3 數據庫實例 ...................................................................................................................... 16
2.3 Oracle 11g 數據庫工具 ........................................................................................................... 19
第 3 章 數據庫的創建和操作 ............................................................................................................ 22
3.1 以界面方式創建數據庫(采用 DBCA) ............................................................................. 22
3.2 以界面方式操作數據庫(采用 SQL Developer) ............................................................... 27
3.2.1 以界面方式操作表 ........................................................................................................... 27
3.2.2 以界面方式操作表數據 .................................................................................................... 32
3.2.3 執行 SQL 命令 ................................................................................................................. 34
3.3 以命令方式操作數據庫(采用 SQL*Plus) ........................................................................ 36
3.3.1 以命令方式操作表 ........................................................................................................... 36
3.3.2 以命令方式操作表數據 .................................................................................................... 41
第 4 章 數據庫的查詢和視圖 ............................................................................................................ 48
4.1 選擇運算、投影運算和連接運算 ......................................................................................... 48
4.1.1 選擇運算 ......................................................................................................................... 48
Oracle 實用教程(第 6 版)(Oracle 11g 版) VI
4.1.2 投影運算 ......................................................................................................................... 48
4.1.3 連接運算 ......................................................................................................................... 49
4.2 數據庫的查詢 ......................................................................................................................... 50
4.2.1 選擇列 ............................................................................................................................. 50
4.2.2 選擇行 ............................................................................................................................. 53
4.2.3 SQL 語句查詢的對象 ....................................................................................................... 60
4.2.4 連接 ................................................................................................................................ 61
4.2.5 匯總 ................................................................................................................................ 65
4.2.6 排序 ................................................................................................................................ 68
4.2.7 合並 ................................................................................................................................ 69
4.3 視 圖 ................................................................................................................................. 70
4.3.1 視圖的概念 ...................................................................................................................... 70
4.3.2 創建視圖 ......................................................................................................................... 71
4.3.3 查詢視圖 ......................................................................................................................... 73
4.3.4 更新視圖 ......................................................................................................................... 74
4.3.5 修改視圖的定義 .............................................................................................................. 75
4.3.6 刪除視圖 ......................................................................................................................... 76
4.4 含替換變量的查詢 ................................................................................................................. 77
4.4.1 &替換變量 ...................................................................................................................... 77
4.4.2 &&替換變量 .................................................................................................................... 79
4.4.3 DEFINE 命令和 ACCEPT 命令定義的變量 ...................................................................... 79
第 5 章 索引與數據完整性 ................................................................................................................ 82
5.1 索引 ......................................................................................................................................... 82
5.1.1 索引的分類 ...................................................................................................................... 82
5.1.2 使用索引的原則 .............................................................................................................. 83
5.1.3 創建索引 ......................................................................................................................... 84
5.1.4 維護索引 ......................................................................................................................... 86
5.1.5 刪除索引 ......................................................................................................................... 87
5.2 數據完整性 ............................................................................................................................. 88
5.2.1 數據完整性的分類 ........................................................................................................... 88
5.2.2 域完整性的實現 .............................................................................................................. 90
5.2.3 實體完整性的實現 ........................................................................................................... 93
5.2.4 參照完整性的實現 ........................................................................................................... 97
第 6 章 PL/SQL ................................................................................................................................. 100
6.1 PL/SQL 概述 ......................................................................................................................... 100
6.1.1 PL/SQL 的組成 .............................................................................................................. 100
6.1.2 PL/SQL 的特點 .............................................................................................................. 102
6.1.3 PL/SQL 的開發和運行環境 ............................................................................................ 103
6.2 PL/SQL 字符集 ..................................................................................................................... 103
目錄 VII
6.2.1 合法字符 ....................................................................................................................... 103
6.2.2 運算符 ........................................................................................................................... 103
6.2.3 其他常用符號 ................................................................................................................ 105
6.3 PL/SQL 變量、常量和數據類型 ......................................................................................... 106
6.3.1 變量 .............................................................................................................................. 106
6.3.2 常量 .............................................................................................................................. 108
6.3.3 常用數據類型 ................................................................................................................ 108
6.3.4 對象類型 ....................................................................................................................... 109
6.3.5 數據類型轉換 ................................................................................................................ 110
6.4 PL/SQL 基本程序結構和語句 ............................................................................................. 111
6.4.1 PL/SQL 程序塊 .............................................................................................................. 111
6.4.2 條件結構 ....................................................................................................................... 112
6.4.3 循環結構 ....................................................................................................................... 115
6.4.4 選擇和跳轉語句 ............................................................................................................ 118
6.4.5 異常 .............................................................................................................................. 119
6.5 系統內置函數 ....................................................................................................................... 123
6.6 用戶定義函數 ....................................................................................................................... 125
6.6.1 創建函數 ....................................................................................................................... 126
6.6.2 調用函數 ....................................................................................................................... 128
6.6.3 刪除函數 ....................................................................................................................... 128
6.7 遊標 ....................................................................................................................................... 129
6.7.1 顯式遊標 ....................................................................................................................... 129
6.7.2 隱式遊標 ....................................................................................................................... 131
6.7.3 遊標的 FOR 循環 ........................................................................................................... 132
6.7.4 遊標變量 ....................................................................................................................... 133
6.8 包............................................................................................................................................ 135
6.8.1 包的創建 ....................................................................................................................... 135
6.8.2 包的初始化 .................................................................................................................... 139
6.8.3 重載 .............................................................................................................................. 139
6.8.4 Oracle 11g 數據庫的內置包 ............................................................................................ 140
6.9 集 合 ............................................................................................................................... 141
6.9.1 聯合數組 ....................................................................................................................... 141
6.9.2 嵌套表 ........................................................................................................................... 142
6.9.3 可變數組 ....................................................................................................................... 143
6.9.4 集合的屬性和方法 ......................................................................................................... 144
第 7 章 存儲過程和觸發器 .............................................................................................................. 149
7.1 存儲過程 ............................................................................................................................... 149
7.1.1 存儲過程的創建 ............................................................................................................ 149
7.1.2 存儲過程的調用 ............................................................................................................ 151
Oracle 實用教程(第 6 版)(Oracle 11g 版) VIII
7.1.3 存儲過程的修改 ............................................................................................................ 152
7.1.4 存儲過程的刪除 ............................................................................................................ 153
7.2 觸發器 ................................................................................................................................... 153
7.2.1 以命令方式創建觸發器 .................................................................................................. 154
7.2.2 以界面方式創建觸發器 .................................................................................................. 158
7.2.3 啟用和禁用觸發器 ......................................................................................................... 159
7.2.4 觸發器的刪除 ................................................................................................................ 159
第 8 章 系統安全管理 ...................................................................................................................... 161
8.1 用戶 ....................................................................................................................................... 161
8.1.1 創建用戶 ....................................................................................................................... 161
8.1.2 管理用戶 ....................................................................................................................... 166
8.2 權限管理 ............................................................................................................................... 167
8.2.1 權限概述 ....................................................................................................................... 167
8.2.2 系統權限管理 ................................................................................................................ 168
8.2.3 對象權限管理 ................................................................................................................ 172
8.2.4 安全特性 ....................................................................................................................... 173
8.3 角色管理 ............................................................................................................................... 175
8.3.1 角色概述 ....................................................................................................................... 175
8.3.2 創建用戶角色 ................................................................................................................ 176
8.3.3 管理用戶角色 ................................................................................................................ 177
8.4 概要文件和數據字典視圖 ................................................................................................... 178
8.4.1 創建概要文件 ................................................................................................................ 178
8.4.2 修改概要文件 ................................................................................................................ 180
8.4.3 數據字典視圖 ................................................................................................................ 180
8.5 審計 ....................................................................................................................................... 182
8.5.1 登錄審計 ....................................................................................................................... 182
8.5.2 操作審計 ....................................................................................................................... 183
8.5.3 對象審計 ....................................................................................................................... 184
8.5.4 權限審計 ....................................................................................................................... 185
第 9 章 表空間、備份和恢復 .......................................................................................................... 187
9.1 表空間 ................................................................................................................................... 187
9.1.1 創建表空間 .................................................................................................................... 187
9.1.2 管理表空間 .................................................................................................................... 189
9.1.3 刪除表空間 .................................................................................................................... 191
9.2 備份和恢復 ........................................................................................................................... 191
9.2.1 備份概述 ....................................................................................................................... 191
9.2.2 恢復概述 ....................................................................................................................... 194
目錄 IX
9.3 導入和導出 ........................................................................................................................... 195
9.3.1 導出 .............................................................................................................................. 195
9.3.2 導入 .............................................................................................................................. 197
9.4 脫機備份 ............................................................................................................................... 200
9.5 聯機備份 ............................................................................................................................... 200
9.5.1 以 ARCHIVELOG 方式運行數據庫 ............................................................................... 201
9.5.2 執行數據庫聯機備份 ..................................................................................................... 201
9.6 數據泵 ................................................................................................................................... 202
9.6.1 數據泵概述 .................................................................................................................... 202
9.6.2 EXPDP 導出 .................................................................................................................. 202
9.6.3 IMPDP 導入................................................................................................................... 204
第 10 章 事務、鎖、閃回和 Undo 表空間 ................................................................................... 205
10.1 事務 ..................................................................................................................................... 205
10.1.1 事務的概念 .................................................................................................................. 205
10.1.2 事務處理 ..................................................................................................................... 206
10.1.3 自治事務 ..................................................................................................................... 209
10.2 鎖 ......................................................................................................................................... 211
10.2.1 鎖機制和死鎖 .............................................................................................................. 211
10.2.2 鎖的類型 ..................................................................................................................... 212
10.2.3 表鎖和事務鎖 .............................................................................................................. 213
10.3 閃回 ..................................................................................................................................... 213
10.3.1 閃回的基本概念 ........................................................................................................... 214
10.3.2 查詢閃回 ..................................................................................................................... 214
10.3.3 表閃回 ......................................................................................................................... 215
10.3.4 刪除閃回 ..................................................................................................................... 217
10.3.5 數據庫閃回 .................................................................................................................. 219
10.3.6 歸檔閃回 ..................................................................................................................... 222
10.4 Undo 表空間 ........................................................................................................................ 223
10.4.1 Undo 表空間自動管理 .................................................................................................. 223
10.4.2 Undo 表空間的優點 ..................................................................................................... 224
10.4.3 Undo 表空間管理參數 .................................................................................................. 224
10.4.4 創建和管理 Undo 表空間 ............................................................................................. 224
第 11 章 其他概念 ............................................................................................................................. 227
11.1 同義詞 ................................................................................................................................. 227
11.1.1 創建同義詞 .................................................................................................................. 227
11.1.2 使用同義詞 .................................................................................................................. 228
11.1.3 刪除同義詞 .................................................................................................................. 228
11.2 數據庫鏈接 ......................................................................................................................... 229
11.2.1 創建數據庫鏈接 ........................................................................................................... 229
Oracle 實用教程(第 6 版)(Oracle 11g 版) X
11.2.2 使用數據庫鏈接 ........................................................................................................... 231
11.2.3 刪除數據庫鏈接 ........................................................................................................... 232
11.3 快照 ..................................................................................................................................... 232
11.3.1 創建快照 ...................................................................................................................... 232
11.3.2 修改快照 ...................................................................................................................... 236
11.3.3 刪除快照 ...................................................................................................................... 236
11.4 序列 ..................................................................................................................................... 237
11.4.1 創建序列 ...................................................................................................................... 237
11.4.2 修改序列 ...................................................................................................................... 239
11.4.3 刪除序列 ...................................................................................................................... 239
第 2 部分 基礎實訓
實訓 1 創建數據庫和表 ................................................................................................................... 240
實訓 2 表數據的插入、修改和刪除 .............................................................................................. 244
實訓 3 數據庫的查詢和視圖 ........................................................................................................... 248
實訓 4 索引和完整性 ....................................................................................................................... 255
實訓 5 PL/SQL 編程 ........................................................................................................................ 258
實訓 6 存儲過程和觸發器的使用 .................................................................................................. 260
實訓 7 用戶、角色與安全性 ........................................................................................................... 263
第 3 部分 Oracle 數據庫應用實訓
實訓 0 Oracle 數據庫綜合實訓 ...................................................................................................... 264
P0.1 創建應用實訓數據庫及對象 ............................................................................................. 264
P0.2 應用系統及其數據庫 ......................................................................................................... 267
P0.2.1 數據庫應用系統 .......................................................................................................... 267
P0.2.2 數據庫訪問方式 .......................................................................................................... 269
P0.2.3 Web Service ................................................................................................................. 270
實訓 1 PHP/Oracle 學生成績管理系統 ....................................................................................... 273
P1.1 PHP 開發平臺搭建 ............................................................................................................. 273
P1.1.1 創建 PHP 環境 ............................................................................................................. 273
P1.1.2 安裝與配置 Eclipse ...................................................................................................... 273
P1.2 PHP 開發入門 ..................................................................................................................... 274
P1.2.1 創建 PHP 項目 ............................................................................................................. 274
P1.2.2 運行 PHP 項目 ............................................................................................................. 275
P1.2.3 連接 Oracle 11g ............................................................................................................ 276
P1.3 系統主頁設計 ..................................................................................................................... 278
P1.3.1 主界面 ......................................................................................................................... 278
目錄 XI
P1.3.2 功能導航 ..................................................................................................................... 279
P1.4 學生管理 ............................................................................................................................. 281
P1.4.1 界面設計 ..................................................................................................................... 281
P1.4.2 功能實現 ..................................................................................................................... 284
P1.5 成績管理 ............................................................................................................................. 287
P1.5.1 界面設計 ..................................................................................................................... 287
P1.5.2 功能實現 ..................................................................................................................... 289
實訓 2 JavaEE/Oracle 學生成績管理系統 .................................................................................. 291
P2.1 JavaEE 開發平臺搭建 ........................................................................................................ 291
P2.1.1 安裝軟件 ..................................................................................................................... 291
P2.1.2 環境整合 ..................................................................................................................... 291
P2.2 創建 Struts 2 項目 ............................................................................................................... 292
P2.2.1 創建 JavaEE 7 項目 ...................................................................................................... 292
P2.2.2 加載 Struts 2 包 ............................................................................................................ 293
P2.2.3 連接 Oracle 11g ............................................................................................................ 294
P2.3 系統主頁設計 ..................................................................................................................... 296
P2.3.1 主界面 ......................................................................................................................... 296
P2.3.2 功能導航 ..................................................................................................................... 297
P2.4 學生管理 ............................................................................................................................. 300
P2.4.1 界面設計 ..................................................................................................................... 300
P2.4.2 功能實現 ..................................................................................................................... 302
P2.5 成績管理 ............................................................................................................................. 309
P2.5.1 界面設計 ..................................................................................................................... 309
P2.5.2 功能實現 ..................................................................................................................... 311
實訓 3 Python/Oracle 學生成績管理系統 ................................................................................... 317
P3.1 Python 環境安裝 ................................................................................................................. 317
P3.1.1 安裝 Python 環境 ......................................................................................................... 317
P3.1.2 安裝 Oracle 驅動 .......................................................................................................... 319
P3.2 開發前的準備工作 ............................................................................................................. 321
P3.2.1 創建 Python 源文件 ...................................................................................................... 321
P3.2.2 系統界面設計 .............................................................................................................. 322
P3.2.3 構造 Oracle 的連接字符串 ........................................................................................... 323
P3.3 Python 程序開發 ................................................................................................................. 324
P3.3.1 界面及功能實現 .......................................................................................................... 324
P3.3.2 運行效果 ..................................................................................................................... 327
實訓 4 Android/Oracle 學生成績管理系統 .................................................................................. 328
P4.1 Android Studio 開發環境的搭建 ....................................................................................... 328
P4.1.1 基本原理 ..................................................................................................................... 328
Oracle 實用教程(第 6 版)(Oracle 11g 版) XII
P4.1.2 開發工具安裝 .............................................................................................................. 329
P4.2 Web 應用開發和部署 ......................................................................................................... 330
P4.2.1 創建動態 Web 項目 ...................................................................................................... 330
P4.2.2 編寫 Servlet 程序 ......................................................................................................... 330
P4.2.3 打包與部署 Web 項目 .................................................................................................. 334
P4.3 移動端 Android 程序開發 .................................................................................................. 334
P4.3.1 創建 Android 工程 ....................................................................................................... 335
P4.3.2 設計界面 ..................................................................................................................... 336
P4.3.3 編寫移動端代碼 .......................................................................................................... 337
P4.3.4 運行效果 ..................................................................................................................... 341
實訓 5 Visual C#/Oracle 學生成績管理系統 .............................................................................. 342
P5.1 ADO.NET 架構原理 ........................................................................................................... 342
P5.2 創建 Visual C#項目 ............................................................................................................ 343
P5.2.1 Visual C#項目的建立 ................................................................................................... 343
P5.2.2 連接 Oracle 11g ............................................................................................................ 344
P5.3 系統主界面設計 ................................................................................................................. 346
P5.3.1 總體布局 ..................................................................................................................... 346
P5.3.2 詳細設計 ..................................................................................................................... 346
P5.4 學生管理 ............................................................................................................................. 348
P5.4.1 程序主體結構 .............................................................................................................. 348
P5.4.2 功能實現 ..................................................................................................................... 349
P5.5 成績管理 ............................................................................................................................. 353
P5.5.1 課程名加載 .................................................................................................................. 353
P5.5.2 功能實現 ..................................................................................................................... 355
實訓 6 ASP.NET/Oracle 學生成績管理系統 ............................................................................... 359
P6.1 ADO.NET 架構原理 ........................................................................................................... 359
P6.2 創建 ASP.NET 項目 ........................................................................................................... 359
P6.2.1 ASP.NET 項目的建立 ................................................................................................... 359
P6.2.2 連接 Oracle 11g ............................................................................................................ 359
P6.3 系統主頁設計 ..................................................................................................................... 360
P6.3.1 主界面 ......................................................................................................................... 360
P6.3.2 功能導航 ..................................................................................................................... 361
P6.4 學生管理 ............................................................................................................................. 363
P6.4.1 界面設計 ..................................................................................................................... 363
P6.4.2 功能實現 ..................................................................................................................... 364
P6.5 成績管理 ............................................................................................................................. 364
P6.5.1 界面設計 ..................................................................................................................... 365
P6.5.2 功能實現 ..................................................................................................................... 365
附錄 A XSCJ 數據庫的樣本數據 ................................................................................................... 367