數據庫原理及應用, 2/e (MySQL版)
趙軍民 蘇靖楓 李蓓
商品描述
本書以通俗易懂的語言深入淺出地介紹了數據庫系統的基本原理、技術和方法,緊密結合當前信息化時代對數據庫人才的培養需求,以典型案例為驅動,將理論知識系統融入實踐教學,幫助讀者有效掌握數據庫設計與開發的核心知識與技能。
全面系統地闡述了數據庫原理與應用,主要內容包括數據庫系統概述、關系數據庫、關系數據庫標準語言SQL、關系數據庫規範化理論、數據庫系統設計、數據庫的安全性控制與完整性控制、並發控制、數據庫備份與恢復和MySQL高級應用等。本書突出理論與實踐深度融合,通過貫穿各章的實踐案例和配套教學資源,強化“教、學、做”一體化教學模式,旨在加深讀者對數據庫系統基本原理、技術和方法的理解。
本書適合作為普通高等院校計算機、電子、信息管理等相關專業的教學用書,同時也適用於軟件開發工程師、信息系統運維人員以及廣大數據庫技術愛好者的參考書籍。
作者簡介
趙軍民,博士,教授,河南城建學院計算機學院院長,曾任數字媒體教研室主任、副院長、教務處副處長等職。自2004年任教以來,他秉持嚴謹的教學態度,註重理論與實踐結合,積極引入學科前沿技術,推動教學改革。參與多項省級教改項目。主持的“數據庫原理及應用”課程先後獲評省級在線開放課程、省級課程思政樣板課程及省級一流課程。主編的《數據庫原理及應用》教材獲省級“十四五”規劃教材立項,並於2023年獲得省級新形態教材立項,另外參編多部省級規劃教材及專業教材,多次榮獲“教學質量考評優秀”“優秀教師”“教學名師”等稱號。發表學術論文20余篇,其中3篇被SCI收錄、6篇被EI收錄、2篇為中文核心論文。參與省部級以上科研項目8項,主持國家語委“十二五”和“十三五”科研規劃項目,擁有1項發明專利。
目錄大綱
第 1章 數據庫系統概述 1
1.1 數據庫系統的基本概念 1
1.1.1 數據和信息 1
1.1.2 數據庫 2
1.1.3 數據庫管理系統 2
1.1.4 數據庫系統簡介 3
1.2 數據管理技術 4
1.2.1 術語和基本概念 4
1.2.2 人工管理階段 5
1.2.3 文件系統管理階段 5
1.2.4 數據庫系統管理階段 8
1.3 數據模型 11
1.3.1 兩類數據模型 11
1.3.2 不同世界的劃分及相關概念 12
1.3.3 數據模型的組成要素 14
1.3.4 常用的邏輯模型 14
1.4 數據庫系統的結構 20
1.4.1 三級模式結構 20
1.4.2 二級映像和數據獨立性 22
1.5 數據庫領域的新技術 23
1.5.1 數據倉庫和數據挖掘技術 23
1.5.2 大數據技術 26
1.5.3 區塊鏈技術 29
1.6 國產數據庫系統 31
1.6.1 國產數據庫的發展歷程與技術突破 31
1.6.2主流國產數據庫解析 32
本章小結 34
習題 35
第 2章 關系數據庫 37
2.1 關系模型 37
2.1.1 關系數據結構 37
2.1.2 關系模型的形式化定義 39
2.1.3 關系的性質 41
2.1.4 關系模式 42
2.2 關系的鍵 42
2.2.1 候選鍵 43
2.2.2 主鍵 43
2.2.3 全鍵 43
2.2.4 外鍵 44
2.3 關系的完整性 44
2.3.1 實體完整性 44
2.3.2 參照完整性 46
2.3.3 用戶自定義完整性 47
2.4 關系代數 47
2.4.1 關系代數的運算符 47
2.4.2 傳統的集合運算 47
2.4.3 專門的關系運算 48
本章小結 51
習題 52
第3章 關系數據庫標準語言SQL 57
3.1 SQL概述 57
3.1.1 SQL的發展 57
3.1.2 SQL的特點 57
3.1.3 SQL的組成 58
3.2 數據庫的創建與管理 58
3.2.1 數據庫的存儲結構 58
3.2.2 創建用戶數據庫 60
3.2.3 修改用戶數據庫 62
3.2.4 刪除用戶數據庫 63
3.2.5 查看數據庫信息 64
3.3 數據表及其操作 65
3.3.1 數據類型 66
3.3.2 創建數據表 69
3.3.3 修改表結構 73
3.3.4 查看數據表 76
3.3.5 刪除數據表 76
3.3.6 更新數據表 77
3.4 數據查詢 78
3.4.1 投影查詢 79
3.4.2 選擇查詢 81
3.4.3 排序查詢 86
3.4.4 使用聚合函數 87
3.4.5 分組查詢 88
3.4.6 連接查詢 89
3.4.7 子查詢 94
3.4.8 集合查詢 96
3.5 視圖 97
3.5.1 創建視圖 98
3.5.2 修改視圖 101
3.5.3 查看視圖 103
3.5.4 刪除視圖 106
3.5.5 更新視圖 107
3.6 索引 109
3.6.1索引的概念 109
3.6.2索引的類型 110
3.6.3創建索引 110
3.6.4查看索引 113
3.6.5刪除索引 114
本章小結 115
習題 115
第4章 關系數據庫規範化理論 118
4.1 關系規範化的引入 118
4.1.1 規範化問題的提出 118
4.1.2 問題解決的方法 119
4.1.3 關系模式規範化的概念 121
4.2 函數依賴 121
4.2.1 函數依賴的定義 122
4.2.2 函數依賴的分類與符號表示 122
4.2.3 鍵的函數依賴表示 124
4.3 函數依賴的公理系統 124
4.3.1 函數依賴集的完備性 125
4.3.2 函數依賴的推理規則 125
4.3.3 屬性集閉包 127
4.3.4 最小函數依賴集Fmin 128
4.4 關系模式的規範化 131
4.4.1 第 一範式 131
4.4.2 第二範式 132
4.4.3 第三範式 133
4.4.4 BC範式 134
4.5 多值依賴與4NF 135
4.5.1 問題的引入 136
4.5.2 多值依賴的基本概念 136
4.5.3 第四範式 137
4.6 關系模式分解 138
4.6.1 無損分解 138
4.6.2 保持函數依賴 142
4.7 關系模式規範化步驟 144
本章小結 145
習題 146
第5章 數據庫系統設計 151
5.1 數據庫系統設計概述 151
5.1.1 數據庫系統設計的內容 151
5.1.2 數據庫系統設計的特點 152
5.1.3 數據庫系統設計的方法 152
5.1.4 數據庫系統設計的基本過程和步驟 154
5.1.5 數據庫系統設計過程中所涉及的模式 156
5.2 需求分析 157
5.2.1 需求的類型 157
5.2.2 需求分析的步驟 158
5.2.3 獲取需求的常用方法 159
5.2.4 需求分析創建模型的方法 160
5.2.5 數據流圖 161
5.2.6 數據字典 167
5.3 概念結構設計 169
5.3.1 概念結構設計的特點 169
5.3.2 概念結構設計使用的方法 169
5.3.3 概念結構設計的步驟 170
5.3.4 局部E-R圖設計 171
5.3.5 總體E-R圖設計 176
5.4 邏輯結構設計 183
5.4.1 概念模型轉換為邏輯模型的步驟 184
5.4.2 概念模型向關系模型轉換的原則 184
5.4.3 邏輯模型優化及外模式設計 187
5.5 物理結構設計 188
5.5.1 物理結構設計的步驟 189
5.5.2 確定數據存取方法 189
5.5.3 確定數據的物理存儲結構 191
5.5.4 評價物理結構 191
5.6 數據庫實施 192
5.6.1 創建數據庫結構 192
5.6.2 數據入庫 192
5.6.3 數據庫試運行 193
5.7 數據庫運行和維護 193
本章小結 194
習題 195
第6章 數據庫安全性管理 198
6.1 數據庫安全性概述 198
6.1.1 數據庫的安全性的含義 198
6.1.2 數據庫的安全性控制的方法 198
6.2 MySQL 權限系統 200
6.2.1 權限系統的管理 200
6.2.2 MySQL權限管理相關表 201
6.3 MySQL的用戶管理 201
6.3.1 添加用戶 201
6.3.2查看用戶 205
6.3.3 重命名用戶 206
6.3.4 修改用戶口令 207
6.3.5 刪除用戶 208
6.4 MySQL 權限授予和回收 209
6.4.1 MySQL 常見權限 209
6.4.2 權限授予 210
6.4.3 權限查看 213
6.4.4 權限回收 213
6.4.5 權限轉移 214
6.5 MySQL角色管理 215
6.5.1 MySQL 角色管理概述 215
6.5.2 MySQL 角色創建及授權 215
6.5.3 MySQL 角色分配及激活 216
6.5.4 MySQL 角色查看 216
6.5.5 MySQL 角色撤銷 216
本章小結 217
習題 217
第7章 並發控制 219
7.1 事務 219
7.1.1 事務的概念 219
7.1.2 事務的特性 220
7.2 並發控制概述 221
7.2.1 並發控制的含義 221
7.2.2 並發操作帶來的問題 221
7.3 封鎖與封鎖協議 222
7.3.1 封鎖類型 222
7.3.2 封鎖協議 222
7.4 活鎖與死鎖 224
7.4.1 活鎖 224
7.4.2 死鎖 224
7.5 並發調度的可串行性與兩段鎖協議 225
7.5.1 並發調度的可串行性 225
7.5.2 兩段鎖協議 227
7.6 封鎖粒度與多粒度封鎖 228
7.7 MySQL的並發控制機制 228
7.7.1 MySQL的事務 228
7.7.2 MySQL的封鎖方式 228
本章小結 229
習題 229
第8章 數據庫備份與恢復 232
8.1 數據庫故障及恢復策略 232
8.1.1 事務故障及恢復 232
8.1.2 系統故障及恢復 233
8.1.3 介質故障及恢復 234
8.2 數據庫恢復的原理及方法 234
8.2.1 數據備份 234
8.2.2 日誌文件記錄 235
8.2.3 數據庫復制與高可用性機制 236
8.3 數據庫備份操作 237
8.3.1 備份類型 237
8.3.2 備份文件 238
8.4 數據庫恢復操作 243
8.4.1 還原模式 243
8.4.2 恢復的順序 244
8.4.3 實現恢復 244
本章小結 246
習題 247
第9章 MySQL高級編程與應用 249
9.1 MySQL存儲過程與存儲函數 249
9.1.1存儲過程與存儲函數概述 249
9.1.2存儲過程的優點 250
9.1.3存儲過程與存儲函數的比較 251
9.2 MySQL編程基礎及內置函數 251
9.2.1 註釋、數據類型與常量 252
9.2.2 變量 254
9.2.3 運算符 256
9.2.4 流程控制語句 259
9.2.5 常用內置函數 262
9.3 MySQL存儲過程操作 266
9.3.1創建存儲過程 266
9.3.2調用存儲過程 267
9.3.3查看、修改、刪除存儲過程 268
9.3.4存儲過程中的參數管理 270
9.4 MySQL觸發器及事件 271
9.4.1觸發器概念和工作原理 272
9.4.2創建觸發器 273
9.4.3查看、刪除觸發器 274
本章小結 276
習題 276

