第1章 數據庫概論 1
1.1 數據管理技術的發(fā)展階段與數據庫技術概念 1
1.1.1 數據管理技術的三個發(fā)展階段 1
1.1.2 數據庫管理階段產生的三大新技術 4
1.1.3 數據庫系統(tǒng)的主要特點 4
1.1.4 數據庫技術中的幾個主要名稱 5
1.2 數據庫技術的新發(fā)展 7
1.2.1 數據庫技術研究的主要領域 7
1.2.2 數據庫技術的新發(fā)展 8
小結 13
習題 14
第2章 數據庫系統(tǒng)結構 16
2.1 數據模型 16
2.1.1 數據描述 16
2.1.2 數據模型的定義和組成結構數據模型的三要素 17
2.1.3 實體-聯系模型簡述 19
2.1.4 結構數據模型 22
2.2 數據庫系統(tǒng)結構 26
2.2.1 數據庫系統(tǒng)的三級模式結構 27
2.2.2 數據庫的二級映像功能與數據獨立性 28
2.2.3 數據庫管理系統(tǒng)的工作過程 29
小結 30
習題 30
第3章 關系運算 33
3.1 關系數據模型 33
3.1.1 關系數據模型的定義 33
3.1.2 關鍵碼和表之間的聯系 35
3.1.3 關系模式 36
3.1.4 關系模型的完整性規(guī)則 37
3.2 關系運算 39
3.2.1 關系查詢語言和關系運算 39
3.2.2 關系代數運算符的分類 40
3.2.3 傳統(tǒng)的集合運算 41
3.2.4 專門的關系運算 43
3.2.5 關系代數表達式應用舉例 48
3.2.6 擴充的關系代數操作 50
3.3 關系代數表達式的查詢優(yōu)化 52
小結 58
習題 58
第4章 標準查詢語言SQL 61
4.1 SQL概述及其數據定義 61
4.1.1 SQL的基本概念及其特點 61
4.1.2 SQL的數據定義 63
4.1.3 SQL對索引的創(chuàng)建與刪除 66
4.2 SQL的數據查詢 67
4.2.1 SELECT命令的格式及其含義 68
4.2.2 單表查詢 68
4.2.3 多表間聯接和合并查詢 76
4.2.4 嵌套查詢 78
4.2.5 保存查詢結果及分步查詢 82
4.3 SQL的數據更新與視圖 83
4.3.1 插入數據 83
4.3.2 修改數據 85
4.3.3 刪除數據 86
4.3.4 視圖創(chuàng)建、刪除與更新 87
4.3.5 SQL數據控制 89
小結 89
習題 89
第5章 關系數據庫的規(guī)范化設計 93
5.1 關系模式的設計問題 93
5.1.1 概述 93
5.1.2 關系模式存在的問題 93
5.2 規(guī)范化理論 96
5.2.1 函數依賴 96
5.2.2 碼 98
5.2.3 范式 99
5.3 Armstrong公理系統(tǒng) 105
5.3.1 Armstrong公理系統(tǒng)推理規(guī)則 105
5.3.2 屬性集的閉包 106
5.3.3 小函數依賴集 106
5.3.4 規(guī)范化模式設計的三個原則 107
小結 110
習題 111
第6章 E-R模型的設計方法 114
6.1 E-R模型的基本元素 114
6.2 屬性的基本分類 116
6.2.1 屬性類別分類 116
6.2.2 屬性取值特點分類 116
6.3 聯系的設計方法 118
6.4 E-R模型的擴充 121
6.5 E-R模型實例介紹 123
小結 126
習題 127
第7章 關系數據庫的設計方法 129
7.1 數據庫設計概述 129
7.1.1 數據庫設計的內容 129
7.1.2 數據庫設計的特點 130
7.1.3 數據庫設計的方法簡述 130
7.1.4 數據庫設計的步驟 131
7.1.5 數據庫應用系統(tǒng)生命周期 134
7.2 數據庫系統(tǒng)的需求分析 135
7.2.1 需求分析的任務 135
7.2.2 需求分析的方法 135
7.2.3 數據字典 136
7.2.4 數據流圖 137
7.3 概念結構設計 138
7.3.1 概念結構設計的特點 138
7.3.2 概念結構設計的方法與步驟 139
7.3.3 數據抽象與局部視圖設計 140
7.3.4 全局E-R模型設計 142
7.4 數據庫系統(tǒng)的邏輯設計 146
7.4.1 邏輯結構設計的任務和步驟 146
7.4.2 E-R圖向關系模型的轉換 147
7.4.3 數據模型的優(yōu)化 148
7.5 數據庫的物理設計 148
7.5.1 確定物理結構 149
7.5.2 確定數據庫的存儲結構 150
7.5.3 評價物理結構 150
7.6 數據庫的實現 150
7.6.1 建立實際數據庫結構 150
7.6.2 數據的載入和應用程序的調試 150
7.6.3 編制與調試應用程序 151
7.6.4 數據庫的試運行 151
7.7 數據系統(tǒng)的運行和維護 152
小結 153
習題 153
第8章 數據庫管理 156
8.1 數據庫中事務的概念 156
8.2 數據庫的恢復 157
8.2.1 事務的故障 157
8.2.2 數據庫恢復的基本原理及實現技術 158
8.2.3 故障恢復策略 160
8.3 數據庫的并發(fā)控制 160
8.3.1 并發(fā)控制概述 161
8.3.2 封鎖及其解決問題的辦法 162
8.4 數據庫的完整性 167
8.4.1 數據庫完整性約束條件的分類 167
8.4.2 數據庫完整性控制 168
8.5 數據庫的安全性 169
小結 171
習題 171
第9章 SQL Server 2012數據庫管理系統(tǒng)介紹 174
9.1 SQL Server 2012概述 174
9.1.1 什么是SQL Server 2012 174
9.1.2 SQL Server 2012的版本 175
9.1.3 SQL Server 2012的主要組件與實用程序 176
9.2 數據庫的創(chuàng)建及其管理 182
9.2.1 系統(tǒng)數據庫 182
9.2.2 使用SQL Server Management Studio創(chuàng)建數據庫 183
9.2.3 使用SQL Server Management Studio查看數據庫信息 185
9.2.4 使用SQL Server Management Studio修改數據庫 186
9.2.5 使用SQL Server Management Studio刪除數據庫 189
9.2.6 使用SQL Server Management Studio分離數據庫 190
9.2.7 使用SQL Server Management Studio附加數據庫 190
9.3 數據表的創(chuàng)建及其管理 192
9.3.1 SQL Server數據類型 192
9.3.2 使用SQL Server Management Studio創(chuàng)建數據表 193
9.3.3 使用SQL Server Management Studio查看數據表 194
9.3.4 使用SQL Server Management Studio修改數據表 195
9.3.5 使用SQL Server Management Studio刪除數據表 199
9.4 數據的添加、修改、刪除和查詢 199
9.4.1 使用SQL Server Management Studio添加數據 199
9.4.2 使用SQL Server Management Studio修改數據 199
9.4.3 使用SQL Server Management Studio刪除數據 200
9.4.4 使用SQL Server Management Studio查詢數據 200
9.5 數據完整性 202
9.5.1 SQL Server 2012完整性概述 202
9.5.2 主鍵約束 203
9.5.3 規(guī)則 204
9.5.4 默認 207
9.5.5 數據庫關系圖 209
9.6 視圖 212
9.6.1 視圖設計窗口 212
9.6.2 使用SQL Server Management Studio創(chuàng)建視圖 213
9.6.3 使用SQL Server Management Studio查看及修改視圖 215
9.6.4 使用SQL Server Management Studio刪除視圖 216
9.7 數據庫備份與還原 216
9.7.1 使用命令語句備份和還原數據庫 216
9.7.2 使用SQL Server Management Studio備份數據庫 218
9.7.3 使用SQL Server Management Studio還原數據庫 221
9.7.4 使用SQL Server Management Studio導入/導出數據表 223
小結 229
習題 229
第10章 SQL Server編程 232
10.1 嵌入式SQL 232
10.1.1 嵌入式SQL介紹 232
10.1.2 C#平臺下的嵌入式SQL 233
10.1.3 Java平臺下的嵌入式SQL 236
10.2 過程化SQL 239
10.2.1 常量 239
10.2.2 變量 240
10.2.3 SQL流程控制 241
10.3 程序中的批處理、腳本、注釋 246
10.3.1 批處理 246
10.3.2 腳本 248
10.3.3 注釋 248
10.4 存儲過程 249
10.4.1 存儲過程概述 249
10.4.2 存儲過程的類型 250
10.4.3 創(chuàng)建、執(zhí)行、修改、刪除簡單存儲過程 250
10.4.4 創(chuàng)建和執(zhí)行含參數的存儲過程 256
10.4.5 存儲過程的重新編譯 256
10.4.6 系統(tǒng)存儲過程與擴展存儲過程 257
10.5 觸發(fā)器 257
10.5.1 觸發(fā)器的概念與作用 257
10.5.2 觸發(fā)器的種類 258
10.5.3 觸發(fā)器的創(chuàng)建 258
10.5.4 觸發(fā)器的修改 260
10.5.5 觸發(fā)器的刪除 260
小結 261
習題 261
第11章 數據庫應用系統(tǒng)開發(fā)實訓 264
11.1 系統(tǒng)需求分析 264
11.2 系統(tǒng)功能結構圖 265
11.3 系統(tǒng)數據流圖 265
11.4 系統(tǒng)E-R圖設計 266
11.5 系統(tǒng)數據庫設計 266
11.6 系統(tǒng)實現 267
11.6.1 公共類的設計與實現 267
11.6.2 登錄模塊的設計與實現 270
11.6.3 管理員主窗體設計與實現 272
11.6.4 用戶主窗體設計與實現 285
小結 290
習題 290
附錄A 上機實驗 291
實驗1 SQL Server 2012數據庫的建立與維護 291
實驗2 利用SQL創(chuàng)建數據庫表及其索引 292
實驗3 利用SQL語句對數據庫表的單表查詢 294
實驗4 利用SQL語句對數據庫表的多表查詢 295
實驗5 利用SQL語句對數據庫表的數據更新及視圖操作 296
實驗6 利用Visio軟件制作E-R模型 297
實驗7 SQL Server 2012數據庫表及其關系圖的建立、規(guī)則和默認的設置 297
實驗8 SQL Server 2012數據庫表的查詢和視圖建立 299
實驗9 SQL Server 2012數據庫的備份和還原 300
實驗10 存儲過程與觸發(fā)器的實現 301
附錄B SQL Server 2012常用的系統(tǒng)函數及使用 303
參考文獻 312