數據庫基礎與應用(微課版 第3版)
王珊 李盛恩
相關主題
商品描述
本書是中國人民大學王珊教授和山東建築大學李盛恩教授聯合編著並修訂的。本書側重於數據庫系統的應用,重點介紹了開發關系數據庫系統常備的基本知識和基本方法,包括數據庫系統的基本概念、基本技術及數據庫應用開發技術,數據倉庫和聯機分析處理等數據庫的新技術及新應用等。全書內容豐富,系統性強,知識體系新穎,理論與實踐相結合,具有先進性和實用性。
本書可作為高等院校理工科電腦專業數據庫課程的教材,也可供相關工程技術人員參考使用。
作者簡介
王珊教授, 女, 博士生导师
1962年考入北京大学物理系本科,1968年毕业。1981年获中国人民大学信息系计算机应用与技术工学硕士学位。1984至1986年应姚诗斌教授邀请赴美国马里兰大学合作研究,开发关系数据库管理系统XDB。
自1981年毕业后留校工作以来,一直从事计算机数据库和知识库系统方向的教学、科研和系统开发工作。培养和正在培养博士、硕士研究生100余名。主持承担了国家科技攻关项目、863高科技项目、国家自然科学基金重大和重点项目、北京市科技计划重点项目等30多项;在国内外杂志、学术会议上发表论文200余篇。出版数据库方向著作20余本,如:《数据库系统系统概论》(获国家级优秀教材奖),《数据仓库技术和联机分析处理》等。
20多年来 她主持研制和开发了从高性能并行数据库到嵌入式移动数据库等多个具有自主版权的数据库管理系统。她的科研和教学成果曾获得国家科技进步二等奖、电子部科技进步特等奖、北京市科技进步二等奖(2次)、教育部科技进步二等奖、国家级优秀教材奖(2次)等多项奖励。
曾获得国家人事部授于的有突出贡献的中青年专家、全国优秀教师、全国五一劳动奖章等荣誉称号。
目錄大綱
第 1章 概述 1
1.1 數據庫系統的基本概念 1
1.1.1 數據 1
1.1.2 數據庫 1
1.1.3 數據庫管理系統 3
1.1.4 數據庫系統 5
1.2 數據模型 6
1.2.1 數據模型的三要素 6
1.2.2 3種數據模型 7
1.3 數據庫系統的三級模式結構 8
1.4 數據庫系統的特點 9
1.5 數據庫系統的分類 11
1.6 數據庫管理系統的演變 12
小結 12
習題 13
第 2章 關系模型 14
2.1 關系模型概述 14
2.1.1 關系模型的數據結構 14
2.1.2 關系模型的數據操作 17
2.1.3 關系模型的完整性 18
2.2 關系代數 19
2.2.1 集合運算 20
2.2.2 關系運算 22
2.3 示例數據庫 24
小結 27
習題 27
第3章 關系數據庫標準語言SQL 30
3.1 SQL概述 30
3.1.1 SQL的產生和發展 30
3.1.2 SQL的組成 30
3.1.3 SQL的特點 31
3.2 數據類型和表的定義 32
3.2.1 數據類型 32
3.2.2 表的定義 34
3.3 數據查詢 38
3.3.1 單表查詢 39
3.3.2 多表查詢 50
3.3.3 集合運算 53
3.3.4 子查詢 55
3.4 數據更新 71
3.5 視圖 73
3.6 索引 79
3.7 存取控制 81
3.8 空值的處理 85
小結 87
習題 87
第4章 查詢處理及優化 89
4.1 查詢處理的步驟 89
4.2 實現關系運算的算法 89
4.2.1 外部排序 90
4.2.2 集合運算算法 91
4.2.3 選擇運算算法 93
4.2.4 連接運算算法 94
4.3 查詢優化 95
4.3.1 查詢優化概述 95
4.3.2 查詢優化實例 96
4.3.3 查詢優化的一般策略 98
4.3.4 關系代數等價變換規則 98
4.3.5 關系代數表達式的優化算法 100
4.3.6 查詢優化的一般步驟 100
小結 101
習題 102
第5章 事務及事務管理 103
5.1 事務 103
5.1.1 事務的特性 103
5.1.2 定義事務的SQL語句 104
5.2 日誌、備份和恢復技術 106
5.2.1 故障種類 106
5.2.2 應對措施 107
5.2.3 恢復過程 109
5.3 並發控制技術 110
5.3.1 並發引發的異常 111
5.3.2 封鎖技術 112
5.3.3 隔離級別 115
小結 116
習題 117
第6章 客戶機/服務器環境 119
6.1 客戶機/服務器的一般概念 119
6.2 兩層與多層客戶機/服務器架構 120
小結 123
習題 123
第7章 SQL程序設計 124
7.1 嵌入式SQL 124
7.1.1 嵌入式SQL的一般形式 124
7.1.2 嵌入式SQL語句與宿主語言之間的通信 125
7.1.3 查詢結果為一條記錄的SELECT語句 125
7.1.4 游標 126
7.1.5 動態SQL簡介 129
7.1.6 實例 131
7.2 存儲過程和SQL/PSM 133
7.3 觸發器 137
7.3.1 基本概念 137
7.3.2 SQL:1999標準的觸發器 139
7.3.3 SQL Server 2000的觸發器 139
7.4 JDBC簡介 142
7.4.1 JDBC原理概述 142
7.4.2 JDBC的工作流程 143
7.4.3 實例 147
小結 150
習題 151
第8章 實體-聯系模型 152
8.1 基本的實體-聯系模型 152
8.1.1 基本概念 153
8.1.2 常見問題及解決方法 157
8.2 擴充的實體-聯系模型 160
8.2.1 IsA聯系 160
8.2.2 Part-Of聯系 161
8.3 從實體-聯系模型到關系模型的轉換 162
8.3.1 實體型轉換為關系 162
8.3.2 聯系型轉換為關系 163
8.3.3 IsA聯系轉換為關系 164
小結 165
習題 166
第9章 關系規範化理論 167
9.1 數據依賴對關系模式的影響 167
9.2 函數依賴 168
9.2.1 函數依賴的基本概念 168
9.2.2 碼 169
9.3 範式 169
9.3.1 第 1範式(1NF) 170
9.3.2 第 2範式(2NF) 171
9.3.3 第3範式(3NF) 172
9.3.4 BC範式(BCNF) 172
9.4 多值依賴與第4範式(4NF) 173
9.4.1 多值依賴 174
9.4.2 第4範式(4NF) 175
9.5 關系模式的規範化 175
9.6 數據依賴的公理系統 176
9.7 模式分解 179
9.7.1 模式分解的3個定義 179
9.7.2 分解的無損連接性和保持函數依賴性 181
9.7.3 模式分解的算法 182
小結 185
習題 185
第 10章 對象關系數據庫 187
10.1 關系模型的限制 187
10.2 面向對象模型 189
10.2.1 面向對象的基本概念 189
10.2.2 面向對象模型 191
10.3 對象關系模型 195
10.3.1 類型系統 195
10.3.2 對象關系 198
10.3.3 子表和超表 199
10.3.4 查詢和更新 200
小結 202
習題 202
第 11章 XML數據庫 203
11.1 XML簡介 203
11.1.1 XML的特點 203
11.1.2 XML的應用 204
11.1.3 XML的相關標準 204
11.1.4 XML數據庫 205
11.2 XML文檔 206
11.3 DTD-XML模式定義語言 208
11.4 XML Schema-XML模式定義語言 209
11.5 XPath查詢語言 211
11.5.1 數據模型 212
11.5.2 路徑表達式 213
11.5.3 XPath函數 215
11.6 XQuery查詢語言 216
11.6.1 FLWOR表達式 216
11.6.2 連接 217
11.6.3 嵌套查詢 219
11.6.4 排序 219
11.7 SQL/XML標準 220
11.7.1 發布XML文檔 220
11.7.2 存儲和查詢XML文檔 227
小結 232
習題 232
第 12章 數據倉庫和聯機分析處理 234
12.1 從數據庫到數據倉庫 234
12.2 數據倉庫的基本概念 236
12.2.1 什麽是數據倉庫 236
12.2.2 主題與面向主題 236
12.2.3 數據倉庫的數據是集成的 238
12.2.4 數據倉庫的數據是不可更新的 239
12.2.5 數據倉庫的數據是隨時間不斷變化的 239
12.3 數據倉庫的數據組織 239
12.4 數據倉庫系統的體系結構 240
12.4.1 數據倉庫的後台工具 241
12.4.2 數據倉庫服務器和聯機分析處理服務器 242
12.4.3 前臺工具 242
12.5 企業的體系化數據環境 243
12.5.1 數據環境的層次 243
12.5.2 數據集市 243
12.6 創建數據倉庫 244
12.7 聯機分析處理和多維數據模型 244
12.7.1 多維數據模型的基本概念 245
12.7.2 多維分析的基本操作 247
12.8 聯機分析處理服務器的實現 249
12.8.1 MOLAP結構 249
12.8.2 ROLAP結構 251
小結 251
習題 252
第 13章 新型數據庫系統 253
13.1 SQL和NoSQL數據庫系統的區別 253
13.2 列簇數據庫系統HBase 255
13.2.1 數據模型 255
13.2.2 基本使用方法 257
13.2.3 存儲模型 257
13.2.4 集群 260
13.3 列簇數據庫系統Cassandra 262
13.3.1 數據模型 262
13.3.2 存儲模型 262
13.3.3 集群 262
13.3.4 基本使用方法 264
13.4 鍵-值對數據庫系統Redis 265
13.4.1 數據模型 265
13.4.2 基本使用方法 265
13.4.3 事務及持久化 269
13.4.4 集群 271
13.5 文檔數據庫系統MongoDB 271
13.5.1 數據模型 271
13.5.2 集群 273
13.5.3 基本使用方法 275
13.6 圖數據庫系統Neo4j 276
13.6.1 數據模型 276
13.6.2 基本使用方法 277
小結 279
習題 279
參考文獻 280