數據庫原理與應用(MySQL版 附微課視頻)
趙明淵
相關主題
商品描述
本書瞄準高等學校數據庫原理與應用課程的教學與實驗需要,將數據庫原理、方法和應用技術相結合,以MySQL 8.0為應用平臺,系統地介紹數據庫原理與應用。全書分為兩篇。第一篇為數據庫原理與應用基礎,內容包含數據庫基礎,關系數據庫理論基礎,關系數據庫設計理論,數據庫設計,MySQL數據庫管理系統,數據定義,數據操縱,數據查詢,視圖和索引,MySQL程序設計基礎,存儲過程、遊標和觸發器,事務管理,安全管理,備份和恢復。第二篇為數據庫實驗,各個實驗與第一篇各章的內容相對應,可以系統地幫助讀者鞏固所學的理論知識。
本書可作為高校數據庫相關課程的教材,也可供高職高專院校及相關培訓機構教學使用,還可作為參加全國計算機等級考試人員及數據庫應用系統設計開發人員的參考書。
作者簡介
趙明淵:
男,電子科技大學計算機應用技術專業博士,中國農業銀行四川省分行計算機高級工程師,國務院頒發證書的享受政府特殊津貼的專家,西南財經大學兼職教授。從1995年起至今,先後在電子科技大學、四川大學、西南財經大學等校擔任SQL Server數據庫、Oracle數據庫、MySQL數據庫、Access數據庫、數據庫原理與應用、大數據等課程的教學工作。獲四川省科技進步獎三等獎2項:1987年《遠程通訊勞動人事統計信息系統》,本人系項目組長和第一主研人員;2002年《四川省農業銀行經營管理信息系統》,本人系項目組長和第一主研人員。主編6本著作:《SQL Server數據庫教程》2014年,《Oracle數據庫教程》2015年,《Java EE教程》2015年,《SQL Server數據庫教程(第2版)》2017年,《Android應用開發教程》2018年,《數據庫原理與應用教程——SQL Server 2014》2018年。在近期發表的學術論文中,SCI檢索4篇,EI檢索13篇。
目錄大綱
【章名目錄】
第 一篇 數據庫原理與應用基礎
第 1章 數據庫基礎
第 2章 關系數據庫理論基礎
第3章 關系數據庫設計理論
第4章 數據庫設計
第5章 MySQL數據庫管理系統
第6章 數據定義
第7章 數據操縱
第8章 數據查詢
第9章 視圖和索引
第 10章 MySQL程序設計基礎
第 11章 存儲過程、遊標和觸發器
第 12章 事務管理
第 13章 安全管理
第 14章 備份和恢復
第二篇 數據庫實驗(14個實驗)
【詳細目錄】
第 一篇 數據庫原理與應用基礎
第 1章 數據庫基礎
1.1 數據庫系統的基本概念 2
1.1.1 數據和信息 2
1.1.2 數據庫系統的組成 3
1.1.3 數據管理技術的發展 4
1.2 數據模型 5
1.2.1 數據模型的概念和類型 5
1.2.2 概念模型的概念和表示方法 6
1.2.3 邏輯模型概述 8
1.3 數據庫系統結構 9
1.3.1 數據庫系統的三級模式結構 9
1.3.2 數據庫的二級映像功能和數據獨立性 10
1.4 大數據簡介 11
本章小結 13
習題1 14
第 2章 關系數據庫理論基礎
2.1 關系模型 15
2.1.1 關系數據結構 15
2.1.2 關系操作 18
2.1.3 關系的完整性 18
2.2 關系代數 20
2.2.1 傳統的集合運算 20
2.2.2 專門的關系運算 22
2.3 SQL簡介 24
2.3.1 SQL分類 24
2.3.2 SQL的特點 25
2.3.3 SQL的發展歷程 25
本章小結 26
習題2 26
第3章 關系數據庫設計理論
3.1 關系數據庫設計理論概述 28
3.2 函數依賴和碼 30
3.2.1 函數依賴 30
3.2.2 碼 31
3.3 關系模式規範化 31
3.3.1 1NF 32
3.3.2 2NF 32
3.3.3 3NF 33
3.3.4 BCNF 35
3.3.5 多值依賴與4NF 36
3.3.6 關系模式規範化總結 37
本章小結 38
習題3 38
第4章 數據庫設計
4.1 數據庫設計概述 40
4.2 需求分析 41
4.3 概念結構設計 43
4.3.1 概念模型的特點及概念結構設計的方法與步驟 43
4.3.2 局部E-R圖設計 43
4.3.3 全局E-R圖設計 45
4.4 邏輯結構設計 46
4.4.1 邏輯結構設計的步驟 46
4.4.2 E-R圖向關系模型的轉換 46
4.5 物理結構設計 49
4.6 數據庫實施 50
4.7 數據庫運行和維護 50
本章小結 51
習題4 52
第5章 MySQL數據庫管理系統
5.1 MySQL的特點和MySQL 8.0的新特性 54
5.1.1 MySQL的特點 54
5.1.2 MySQL 8.0的新特性 55
5.2 MySQL 8.0的安裝和配置 56
5.2.1 MySQL 8.0的安裝 56
5.2.2 MySQL 8.0的配置 56
5.3 MySQL服務器的啟動、關閉和登錄 57
5.3.1 MySQL服務器的啟動和關閉 57
5.3.2 登錄MySQL服務器 58
本章小結 59
習題5 59
第6章 數據定義
6.1 數據定義語言概述 60
6.2 創建MySQL數據庫 60
6.2.1 MySQL數據庫的基本概念 61
6.2.2 創建數據庫 61
6.2.3 選擇數據庫 62
6.2.4 修改數據庫 62
6.2.5 刪除數據庫 63
6.3 數據類型 63
6.3.1 數值類型 63
6.3.2 字符串類型 64
6.3.3 日期和時間類型 65
6.3.4 二進制數據類型 65
6.3.5 JSON數據類型 65
6.4 創建MySQL表 66
6.4.1 表的基本概念 66
6.4.2 創建表 67
6.4.3 查看表 69
6.4.4 修改表 70
6.4.5 刪除表 72
6.5 數據完整性約束 72
6.5.1 數據完整性的基本概念 73
6.5.2 PRIMARY KEY約束 75
6.5.3 UNIQUE約束 76
6.5.4 FOREIGN KEY約束 78
6.5.5 CHECK約束 80
6.5.6 NOT NULL約束 81
本章小結 82
習題6 82
第7章 數據操縱
7.1 數據操縱語言概述 85
7.2 插入數據 85
7.2.1 INSERT語句的語法格式和插入數據的方法 85
7.2.2 插入多條記錄 87
7.2.3 REPLACE語句 88
7.2.4 插入查詢結果語句 88
7.3 修改數據 89
7.3.1 修改指定記錄 89
7.3.2 修改全部記錄 89
7.4 刪除數據 90
7.4.1 刪除指定記錄 90
7.4.2 刪除全部記錄 91
本章小結 92
習題7 92
第8章 數據查詢
8.1 數據查詢語言概述 94
8.2 簡單查詢 95
8.2.1 投影查詢 95
8.2.2 選擇查詢 97
8.2.3 分組查詢和統計計算 99
8.2.4 排序查詢和限制查詢結果的數量 102
8.3 連接查詢 104
8.3.1 內連接 104
8.3.2 外連接 107
8.4 子查詢 108
8.4.1 IN子查詢 109
8.4.2 比較子查詢 110
8.4.3 EXISTS子查詢 111
8.5 聯合查詢 111
8.6 使用正則表達式進行查詢 112
8.7 窗口函數 113
8.8 通用表表達式 116
本章小結 117
習題8 117
第9章 視圖和索引
9.1 視圖概述 120
9.2 視圖操作 121
9.2.1 創建視圖 121
9.2.2 查詢視圖 122
9.2.3 更新視圖 122
9.2.4 修改視圖 125
9.2.5 刪除視圖 125
9.3 索引概述 126
9.4 索引操作 127
9.4.1 創建索引 128
9.4.2 查看索引 129
9.4.3 刪除索引 130
本章小結 130
習題9 131
第 10章 MySQL程序設計基礎
10.1 MySQL編程概述 133
10.1.1 MySQL編程規範 133
10.1.2 DELIMITER命令和BEGIN END語句塊 134
10.2 常量、變量、運算符和表達式 135
10.2.1 常量 135
10.2.2 變量 136
10.2.3 運算符和表達式 137
10.3 自定義函數 138
10.3.1 創建和調用自定義函數 138
10.3.2 刪除自定義函數 139
10.4 流程控制語句 140
10.4.1 條件判斷語句 140
10.4.2 循環語句 143
10.5 系統函數 148
10.5.1 數學函數 148
10.5.2 字符串函數 148
10.5.3 日期和時間函數 149
本章小結 149
習題10 149
第 11章 存儲過程、遊標和觸發器
11.1 存儲過程 152
11.1.1 存儲過程概述 152
11.1.2 創建存儲過程和調用存儲過程 153
11.1.3 刪除存儲過程 156
11.2 遊標 157
11.2.1 遊標概述 157
11.2.2 聲明遊標 157
11.2.3 打開遊標 157
11.2.4 讀取數據 158
11.2.5 關閉遊標 158
11.3 觸發器 160
11.3.1 觸發器概述 160
11.3.2 創建觸發器 160
11.3.3 刪除觸發器 163
本章小結 164
習題11 164
第 12章 事務管理
12.1 事務 166
12.1.1 事務的概念 166
12.1.2 事務特性 166
12.2 事務控制語句 167
12.3 事務的並發處理 171
12.4 管理鎖 172
12.4.1 鎖機制 173
12.4.2 鎖的級別 173
12.4.3 死鎖 174
本章小結 175
習題12 176
第 13章 安全管理
13.1 權限系統 178
13.1.1 MySQL權限系統的工作過程 178
13.1.2 MySQL權限表 179
13.2 用戶管理 179
13.2.1 創建用戶 180
13.2.2 刪除用戶 181
13.2.3 修改用戶賬號 181
13.2.4 修改用戶口令 181
13.3 權限管理 182
13.3.1 授予權限 182
13.3.2 權限的撤銷 186
13.4 角色管理 186
13.4.1 創建角色 186
13.4.2 授予角色權限和回收權限 187
13.4.3 將角色授予用戶 187
13.4.4 刪除角色 187
本章小結 188
習題13 189
第 14章 備份和恢復
14.1 備份和恢復的基本概念 190
14.2 備份數據 191
14.2.1 導出表數據 191
14.2.2 使用mysqldump命令備份數據 192
14.3 恢復數據 194
14.3.1 導入表數據 195
14.3.2 使用mysql命令恢復數據 196
本章小結 197
習題14 197
第二篇 數據庫實驗
實驗1 E-R圖設計 200
實驗2 關系代數的應用 203
實驗3 規範化的理解與應用 206
實驗4 概念結構設計和邏輯結構設計 208
實驗5 MySQL數據庫的安裝、啟動和關閉 212
實驗6 數據定義 214
實驗6.1 創建數據庫 214
實驗6.2 創建表 215
實驗6.3 數據完整性約束 217
實驗7 數據操縱 221
實驗8 數據查詢 223
實驗8.1 簡單查詢、窗口函數和通用表表達式 223
實驗8.2 連接查詢和子查詢 226
實驗9 視圖和索引 229
實驗9.1 視圖 229
實驗9.2 索引 230
實驗10 Web MySQL程序設計基礎 232
實驗11 存儲過程、遊標和觸發器 235
實驗11.1 存儲過程和遊標 235
實驗11.2 觸發器 237
實驗12 事務管理 240
實驗13 安全管理 242
實驗14 備份和恢復 244
附錄A 習題參考答案 246
附錄B 案例數據庫——教學數據庫teachsys表結構和樣本數據 265
附錄C 實驗數據庫——商店數據庫shoppm表結構和樣本數據 268
參考文獻 270