MySQL數據庫項目化教程(微課版)
龔靜 鄧晨曦
相關主題
商品描述
本書以MySQL 8.0為主要應用環境,以學生管理系統為典型案例,由淺入深、循序漸進地介紹數據庫的應用基礎、應用開發、管理和系統設計這4個方面的相關技術。全書共10個項目,分別是數據庫入門,創建和管理數據庫,創建和管理數據表,數據處理,數據查詢,視圖,存儲過程、存儲函數與事務,觸發器,數據庫的高級管理,以及數據庫設計。前9個項目均安排多項任務,各項任務均配有應用實例、執行結果圖、微課視頻和任務實施過程,項目十則講解一個綜合案例——圖書管理系統的完整設計過程。
本書可以作為高校電腦技術及其相關專業的教材,也可以作為科研人員、工程技術人員和相關培訓機構學習人員的自學用書,還可以作為全國電腦等級考試的二級考試項目——二級MySQL數據庫程序設計和“1+X”Web前端開發職業技能等級證書(中級)考試的參考書。
作者簡介
龚静,1972年12月,湖南岳阳人,硕士,教授。本人从1994年7月至今从事计算机的教学与科研工作,主要讲授《数据库技术》、《面向对象的程序设计》、《Java程序设计》、《web前端设计》、《web后端设计》、《计算机应用基础》等课程。其中,讲授《数据库技术》课程已有10多年,在教学过程中不断进行教学改革,2021年主持的《数据库技术》课程被成功立项为湖南省精品在线开放课程,2018年作为主讲教师参与湖南省精品在线开放课程《计算机应用基础》的建设工作,录制近20多个视频,2020年通过湖南省教育厅的认定。主持或参与省级以上项目15项,出版专著1部,发表论文40多篇,其中,北大核心论文11篇,主编或参编教材10部,在编写教材方面具有较为丰富的经验。2017年至2021年参加湖南省职业院校教师教学能力比赛获一等奖3项,二等奖1项,三等奖1项;2022年获学院教学成果一等奖;指导学生参加蓝桥杯 C++ 全国赛二等奖、三等奖多项。
目錄大綱
目錄 CONTENTS
項目一 數據庫入門 1
項目導讀 1
學習目標 1
任務1.1 認識數據庫 1
1.1.1 數據庫的發展歷程 1
1.1.2 數據庫的相關概念 2
1.1.3 數據庫存儲結構 2
1.1.4 結構化查詢語言 3
1.1.5 主流數據庫 4
1.1.6 任務實施——上網搜索數據庫及MySQL的相關內容 5
任務1.2 下載、安裝與配置MySQL 5
1.2.1 下載MySQL 5
1.2.2 安裝MySQL 8
1.2.3 配置MySQL 11
1.2.4 MySQL的安裝目錄結構 19
1.2.5 啟動與停止MySQL服務 20
1.2.6 登錄與退出MySQL 21
1.2.7 MySQL的圖形窗口管理工具 22
1.2.8 任務實施——完成MySQL免安裝版的下載與配置 23
【項目小結】 24
【知識鞏固】 25
【實踐訓練】 26
項目二 創建和管理數據庫 27
項目導讀 27
學習目標 27
任務2.1 數據庫的基礎知識 27
2.1.1 MySQL系統數據庫 28
2.1.2 查看數據庫 32
2.1.3 查看字符集 33
2.1.4 數據庫存儲引擎 35
2.1.5 任務實施——完成對系統數據庫的查看 36
任務2.2 創建和管理數據庫 37
2.2.1 創建數據庫 37
2.2.2 修改數據庫 39
2.2.3 刪除數據庫 40
2.2.4 任務實施——完成xsgl數據庫的管理 41
【項目小結】 41
【知識鞏固】 42
【實踐訓練】 42
項目三 創建和管理數據表 43
項目導讀 43
學習目標 43
任務3.1 數據表的基礎知識 43
3.1.1 查看數據表 44
3.1.2 數據類型 46
3.1.3 任務實施——完成對系統數據庫的表及數據類型的查看 49
任務3.2 數據表的基本操作 50
3.2.1 創建數據表 50
3.2.2 查看數據表的定義腳本或結構 51
3.2.3 修改數據表 53
3.2.4 復制數據表 56
3.2.5 刪除數據表 58
3.2.6 任務實施——完成xsgl數據庫中表的創建及管理 58
任務3.3 數據完整性約束 60
3.3.1 數據完整性約束的概念 60
3.3.2 主鍵約束 60
3.3.3 非空約束 63
3.3.4 唯一約束 63
3.3.5 默認約束 64
3.3.6 設置表的字段值自動增加 65
3.3.7 設置表的檢查約束 65
3.3.8 設置表的外鍵約束 66
3.3.9 刪除約束 69
3.3.10 任務實施——為xsgl數據庫中的表添加約束 70
任務3.4 索引 70
3.4.1 基本概念 71
3.4.2 創建索引 72
3.4.3 刪除索引 79
3.4.4 任務實施——為xsgl數據庫中的表添加索引 80
【項目小結】 81
【知識鞏固】 81
【實踐訓練】 84
項目四 數據處理 85
項目導讀 85
學習目標 85
任務4.1 添加數據 85
4.1.1 為表中所有字段添加數據 85
4.1.2 為表中指定字段添加數據 87
4.1.3 同時添加多條記錄 89
4.1.4 使用INSERT…SELECT語句添加數據 90
4.1.5 任務實施——完成xsgl數據庫中表數據的添加 90
任務4.2 更新數據 91
4.2.1 更新部分數據 91
4.2.2 更新全部數據 92
4.2.3 級聯更新數據 93
4.2.4 任務實施——完成xsgl數據庫中表數據的修改 94
任務4.3 刪除數據 95
4.3.1 使用DELETE語句刪除表中的數據 95
4.3.2 使用TRUNCATE語句清空表 96
4.3.3 使用DELETE與TRUNCATE語句刪除數據的比較 96
4.3.4 級聯刪除數據 98
4.3.5 任務實施——完成xsgl數據庫中表數據的刪除 99
【項目小結】 100
【知識鞏固】 100
【實踐訓練】 101
項目五 數據查詢 102
項目導讀 102
學習目標 102
任務5.1 簡單查詢 102
5.1.1 查詢語句格式 102
5.1.2 查詢所有字段 103
5.1.3 查詢指定字段 105
5.1.4 改變字段的顯示名稱 105
5.1.5 顯示計算列值 106
5.1.6 使用LIMIT限制查詢結果的數量 107
5.1.7 任務實施——完成對xsgl數據庫中表數據的簡單查詢 108
任務5.2 條件查詢 109
5.2.1 帶關系運算符的查詢 109
5.2.2 帶IN關鍵字的查詢 110
5.2.3 帶BETWEEN AND關鍵字的查詢 111
5.2.4 空值查詢 112
5.2.5 帶DISTINCT關鍵字的查詢 113
5.2.6 帶LIKE關鍵字的查詢 115
5.2.7 多條件查詢 117
5.2.8 任務實施——完成對xsgl數據庫中的表數據的多條件查詢 119
任務5.3 高級查詢 120
5.3.1 聚合函數 120
5.3.2 對查詢結果排序 122
5.3.3 分組查詢 124
5.3.4 函數(列表) 126
5.3.5 為表取別名 127
5.3.6 任務實施——完成對xsgl數據庫中的表數據的高級查詢 128
任務5.4 連接查詢 128
5.4.1 交叉連接 128
5.4.2 內連接 129
5.4.3 自連接 131
5.4.4 外連接 132
5.4.5 復合條件連接查詢 134
5.4.6 任務實施——完成對xsgl數據庫中的表數據的連接查詢 134
任務5.5 子查詢 135
5.5.1 帶IN關鍵字的子查詢 135
5.5.2 帶EXISTS關鍵字的子查詢 136
5.5.3 帶ANY或SOME關鍵字的子查詢 136
5.5.4 帶ALL關鍵字的子查詢 138
5.5.5 帶比較運算符的子查詢 138
5.5.6 子查詢的其他應用 139
5.5.7 合並查詢 140
5.5.8 任務實施——完成對xsgl數據庫中的表數據的子查詢 141
【項目小結】 142
【知識鞏固】 142
【實踐訓練】 144
項目六 視圖 145
項目導讀 145
學習目標 145
任務6.1 管理視圖 145
6.1.1 視圖簡介 145
6.1.2 查詢視圖 146
6.1.3 創建單表視圖 147
6.1.4 創建多表視圖 149
6.1.5 在視圖上創建視圖 150
6.1.6 修改視圖 151
6.1.7 刪除視圖 152
6.1.8 任務實施——完成對xsgl數據庫中的視圖的基本操作 152
任務6.2 應用視圖 153
6.2.1 使用視圖查詢數據 153
6.2.2 使用視圖添加數據 154
6.2.3 使用視圖修改數據 154
6.2.4 使用視圖刪除數據 155
6.2.5 任務實施——完成視圖的基本應用 155
【項目小結】 156
【知識鞏固】 156
【實踐訓練】 157
項目七 存儲過程、存儲函數與事務 158
項目導讀 158
學習目標 158
任務7.1 存儲過程 158
7.1.1 創建並調用存儲過程 158
7.1.2 查看存儲過程 164
7.1.3 刪除存儲過程 165
7.1.4 任務實施——完成xsgl數據庫中存儲過程的相關操作 166
任務7.2 存儲函數 166
7.2.1 創建並調用存儲函數 167
7.2.2 查看存儲函數 169
7.2.3 刪除存儲函數 171
7.2.4 任務實施——完成xsgl數據庫中存儲函數的相關操作 171
任務7.3 流程控制 172
7.3.1 分支結構 172
7.3.2 循環結構 174
7.3.3 用戶變量與局部變量 175
7.3.4 任務實施——完成xsgl數據庫中流程控制的相關操作 175
任務7.4 事務 176
7.4.1 事務的4個特性 176
7.4.2 事務的提交 177
7.4.3 事務的回滾 178
7.4.4 事務的隔離級別 179
7.4.5 任務實施——完成xsgl數據庫中提交事務的相關操作 179
【項目小結】 180
【知識鞏固】 180
【實踐訓練】 182
項目八 觸發器 183
項目導讀 183
學習目標 183
任務8.1 創建觸發器 183
8.1.1 創建INSERT型觸發器 184
8.1.2 創建UPDATE型觸發器 185
8.1.3 創建DELETE型觸發器 186
8.1.4 任務實施——完成xsgl數據庫中觸發器的創建 187
任務8.2 管理觸發器 188
8.2.1 查看觸發器 188
8.2.2 刪除觸發器 189
8.2.3 任務實施——完成xsgl數據庫中觸發器的管理 190
【項目小結】 190
【知識鞏固】 190
【實踐訓練】 191
項目九 數據庫的高級管理 192
項目導讀 192
學習目標 192
任務9.1 數據的備份與還原 192
9.1.1 數據的備份 192
9.1.2 數據的還原 194
9.1.3 任務實施——備份並還原xsgl數據庫 196
任務9.2 用戶管理 196
9.2.1 user表 196
9.2.2 創建普通用戶 197
9.2.3 刪除普通用戶 199
9.2.4 修改用戶密碼 200
9.2.5 任務實施——創建和刪除用戶 204
任務9.3 權限管理 205
9.3.1 MySQL的權限 205
9.3.2 授予權限 206
9.3.3 查看權限 207
9.3.4 收回權限 208
9.3.5 任務實施——創建xs_admin用戶來管理xsgl數據庫 209
【項目小結】 209
【知識鞏固】 209
【實踐訓練】 213
項目十 數據庫設計 214
項目導讀 214
學習目標 214
任務10.1 需求分析 214
10.1.1 確定系統的功能需求 215
10.1.2 確定系統的數據需求 216
10.1.3 確定系統的性能需求 216
任務10.2 概念設計 217
10.2.1 概念設計中的數據及數據聯系的描述 217
10.2.2 數據模型的概念 219
10.2.3 概念設計的方法 219
任務10.3 邏輯設計 221
10.3.1 邏輯設計中的數據描述 221
10.3.2 邏輯設計的方法 223
任務10.4 物理設計、實施與運行維護 224
10.4.1 DBMS的功能與組成 224
10.4.2 物理設計的方法 225
10.4.3 實施與運行維護 226
任務10.5 數據庫設計綜合案例——圖書管理系統 227
10.5.1 圖書管理系統的需求分析 227
10.5.2 圖書管理系統的概念設計 228
10.5.3 圖書管理系統的邏輯設計 229
10.5.4 圖書管理系統的物理設計 230
【項目小結】 234
【知識鞏固】 235
【實踐訓練】 235
附錄 236
附錄A 學生管理數據庫的表結構及數據 236
附錄B MySQL常用函數匯總 240