MySQL數據庫實用教程
趙明淵 唐明偉
相關主題
商品描述
本書瞄準當前高校MySQL數據庫教學與實驗的需求,在MySQL 8.0的基礎上編寫而成。全書分為兩篇。第一篇為MySQL數據庫基礎,內容包含:數據庫基礎、MySQL語言、數據定義、數據操縱、數據查詢、視圖和索引、MySQL編程技術、MySQL安全管理、備份和恢復、事務管理、PHP和MySQL教學管理系統開發。第二篇為MySQL實驗,所編排的各個實驗與第一篇中的各章(除第10、11章外)內容相對應,可以有效地幫助讀者鞏固所學的理論知識。
本書可作為本科院校相關專業的教材,也可供高職高專院校及相關培訓機構教學使用,還可作為參加全國電腦等級考試人員以及數據庫應用系統設計開發人員的參考用書。
作者簡介
趙明淵:
男,電子科技大學計算機應用技術專業博士,中國農業銀行四川省分行計算機高級工程師,國務院頒發證書的享受政府特殊津貼的專家,西南財經大學兼職教授。從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篇。
唐明偉:
男,西華大學計算機與軟件工程學院,教授,副院長,博士。四川省第十二批學術和技術帶頭人後備人選,四川省計算機類教學指導委員會委員,教育部評審專家,四川省專家評審委員會專家,大數據與安全四川省教育廳重點實驗室主任,四川省計算機學會常務理事。四川等十餘個省市科技部門科研項目和政府獎評審專家。至今,在國內外重要期刊和國際會議上發表論文60餘篇,其中被SCI/EI檢索50餘篇。到目前為止,主持和主研包含***項目、教育部、四川省科技廳基金在內的各類基金20餘項,國家發明專利10餘項多項。
目錄大綱
第 一篇 MySQL數據庫基礎
第 1章 數據庫基礎
第 2章 MySQL語言
第3章 數據定義
第4章 數據操縱
第5章 數據查詢
第6章 視圖和索引
第7章 MySQL編程技術
第8章 MySQL安全管理
第9章 備份和恢復
第 10章 事務管理
第 11章 PHP和MySQL教學管理系統開發
第二篇 MySQL實驗
實驗1 數據庫基礎 208
實驗2 MySQL語言 214
實驗3 數據定義 216
實驗4 數據操縱 226
實驗5 數據查詢 231
實驗6 視圖和索引 237
實驗7 MySQL編程技術 241
實驗8 MySQL安全管理 247
實驗9 備份和恢復 250
附錄A 課後習題參考答案 252
附錄B 教學數據庫teaching的表結構和样本數據 272
參考文獻 275
【具體目錄】
第 一篇 MySQL數據庫基礎
第 1章 數據庫基礎
1.1 數據庫系統的基本概念 02
1.1.1 數據和信息 02
1.1.2 數據庫、數據庫管理系統和數據庫系統 03
1.2 數據模型 04
1.2.1 數據模型的概念、類型和組成要素 04
1.2.2 概念模型 06
1.2.3 邏輯模型 07
1.3 關係數據庫 08
1.3.1 關係數據庫的基本概念 08
1.3.2 關係運算 09
1.4 概念結構設計和邏輯結構設計 10
1.5 MySQL數據庫管理系統 13
1.6 MySQL 8.0的安裝和配置 14
1.6.1 MySQL 8.0安裝 14
1.6.2 MySQL 8.0配置 17
1.7 MySQL服務器的啟動、關閉和登錄 20
1.7.1 MySQL服務器的啟動和關閉 20
1.7.2 MySQL服務器登錄 21
本章小結 23
習題1
第 2章 MySQL語言
2.1 SQL和MySQL語言組成 26
2.1.1 SQL 26
2.1.2 MySQL語言組成 27
2.2 數據類型 28
2.2.1 數值類型 28
2.2.2 字符串類型 29
2.2.3 日期和時間類型 29
2.2.4 二進制數據類型 30
2.2.5 其他數據類型 30
2.2.6 數據類型的選擇 31
2.3 常量、變量、運算符和表達式 31
2.3.1 常量 31
2.3.2 變量 34
2.3.3 運算符和表達式 37
2.4 MySQL函數 39
2.4.1 數學函數 39
2.4.2 字符串函數 41
2.4.3 日期和時間函數 43
2.4.4 其他函數 44
本章小結 45
習題2
第3章 數據定義
3.1 數據定義語言 48
3.2 創建MySQL數據庫 49
3.2.1 MySQL數據庫的基本概念 49
3.2.2 創建數據庫 49
3.2.3 選擇數據庫 50
3.2.4 修改數據庫 51
3.2.5 刪除數據庫 51
3.3 創建MySQL表 52
3.3.1 表的基本概念 52
3.3.2 創建表 54
3.3.3 查看表 55
3.3.4 修改表 57
3.3.5 刪除表 60
3.4 數據完整性約束 60
3.4.1 數據完整性的基本概念 60
3.4.2 PRIMARY KEY約束 63
3.4.3 UNIQUE約束 65
3.4.4 FOREIGN KEY約束 66
3.4.5 CHECK約束 69
3.4.6 NOT NULL約束 70
本章小結 70
習題3
第4章 數據操縱
4.1 數據操縱語言 74
4.2 使用INSERT語句插入數據 74
4.2.1 INSERT語句的語法格式和插入數據的方法 74
4.2.2 插入多條記錄 77
4.2.3 REPLACE語句 78
4.2.4 插入查詢結果語句 78
4.3 使用UPDATE語句修改數據 79
4.3.1 修改指定記錄 79
4.3.2 修改全部記錄 80
4.4 使用DELETE語句刪除數據 80
4.4.1 刪除指定記錄 81
4.4.2 刪除全部記錄 81
本章小結 82
習題4
第5章 數據查詢
5.1 數據查詢語言 85
5.2 單表查詢 86
5.2.1 SELECT子句 86
5.2.2 WHERE子句 89
5.2.3 GROUP BY子句和HAVING子句 93
5.2.4 ORDER BY子句和LIMIT子句 97
5.3 多表查詢 98
5.3.1 連接查詢 99
5.3.2 子查詢 105
5.3.3 聯合查詢 108
本章小結 108
習題5
第6章 視圖和索引
6.1 視圖 112
6.1.1 視圖概述 112
6.1.2 創建視圖 113
6.1.3 查詢視圖 114
6.1.4 更新視圖 115
6.1.5 修改視圖 118
6.1.6 刪除視圖 119
6.2 索引 119
6.2.1 索引概述 119
6.2.2 創建索引 121
6.2.3 查看索引 123
6.2.4 刪除索引 124
本章小結 125
習題6
第7章 MySQL編程技術
7.1 存儲過程 128
7.1.1 存儲過程概述 128
7.1.2 創建存儲過程 129
7.1.3 局部變量 131
7.1.4 流程控制 133
7.1.5 存儲過程的調用 140
7.1.6 存儲過程的刪除 142
7.2 存儲函數 142
7.2.1 存儲函數概述 142
7.2.2 創建存儲函數 143
7.2.3 調用存儲函數 144
7.2.4 刪除存儲函數 144
7.3 觸發器 144
7.3.1 觸發器概述 144
7.3.2 創建觸發器 145
7.3.3 使用觸發器 146
7.3.4 刪除觸發器 148
7.4 事件 148
7.4.1 事件概述 148
7.4.2 創建事件 149
7.4.3 修改事件 151
7.4.4 刪除事件 151
本章小結 152
習題7
第8章 MySQL安全管理
8.1 權限系統 155
8.1.1 MySQL權限系統工作過程 155
8.1.2 MySQL權限表 156
8.2 用戶管理 157
8.2.1 創建用戶 157
8.2.2 刪除用戶 158
8.2.3 修改用戶賬號 158
8.2.4 修改用戶口令 159
8.3 權限管理 159
8.3.1 授予權限 159
8.3.2 撤銷權限 163
本章小結 164
習題8
第9章 備份和恢復
9.1 備份和恢復的基本概念 167
9.2 備份數據 168
9.2.1 使用SELECT…INTO OUTFILE語句導出表數據 168
9.2.2 使用mysqldump命令備份數據 169
9.3 恢復數據 173
9.3.1 表數據導入 173
9.3.2 使用mysql命令恢復數據 174
本章小結 175
習題9
第 10章 事務管理
10.1 事務 177
10.1.1 事務的概念 177
10.1.2 事務特性 177
10.2 事務控制語句 178
10.3 事務的並發處理 182
10.4 管理鎖 183
10.4.1 鎖機制 184
10.4.2 鎖的級別 184
10.4.3 死鎖 185
本章小結 186
習題10
第 11章 PHP和MySQL教學管理系統開發
11.1 PHP簡介 189
11.1.1 PHP基本概念和特點 189
11.1.2 PHP運行環境 190
11.1.3 PHP運行過程 191
11.2 教學項目數據庫創建 191
11.3 PHP開發環境搭建 192
11.3.1 PHP集成軟件環境的搭建 193
11.3.2 PHP開發工具 194
11.4 教學管理系統開發 199
11.4.1 主界面開發 199
11.4.2 學生管理界面開發與功能實現 201
本章小結 205
習題11
第二篇 MySQL實驗
實驗1 數據庫基礎 208
實驗1.1 E-R圖畫法與概念模型向邏輯模型的轉換 208
實驗1.2 MySQL數據庫安裝、啟動和關閉 212
實驗2 MySQL語言 214
實驗3 數據定義 216
實驗3.1 創建數據庫 216
實驗3.2 創建表 217
實驗3.3 數據完整性約束 221
實驗4 數據操縱 226
實驗5 數據查詢 231
實驗5.1 單表查詢 231
實驗5.2 多表查詢 233
實驗6 視圖和索引 237
實驗6.1 視圖 237
實驗6.2 索引 238
實驗7 MySQL編程技術 241
實驗7.1 存儲過程和存儲函數 241
實驗7.2 觸發器和事件 244
實驗8 MySQL安全管理 247
實驗9 備份和恢復 250
附錄A 課後習題參考答案 252
第 1章 數據庫基礎 252
第 2章 MySQL語言 253
第3章 數據定義 254
第4章 數據操縱 257
第5章 數據查詢 260
第6章 視圖和索引 263
第7章 MySQL編程技術 265
第8章 MySQL安全管理 268
第9章 備份和恢復 269
第 10章 事務管理 270
第 11章 PHP和MySQL教學管理系統開發 271
附錄B 教學數據庫teaching的表結構和样本數據 272
參考文獻 275