MySQL數據庫原理及應用(第2版)(微課版)
內容描述
本書基於MySQL介紹數據庫系統的基本概念、基本原理和基本設計方法,以面向工作過程的教學方法為導向,合理安排各章節的內容。本書突出適用性,減少了理論知識的介紹,並設計了大量的課堂實踐和課外拓展,符合高職高專教育的特點。
本書分為三篇,由9個項目組成。知識儲備(項目1、項目2)講述從理論層次設計數據庫;基礎應用(項目3~項目6)講述基於MySQL創建數據庫和數據庫的基本應用;高級應用(項目7~項目9)講述數據庫的高級應用和維護MySQL數據庫的安全。
本書可作為高職高專院校、成人教育類院校數據庫原理及應用課程的教材,也可供參加自學考試的人員、數據庫應用系統開發設計人員、工程技術人員及其他相關人員參閱。
目錄大綱
第一篇知識儲備
項目1理解數據庫2
任務1-1理解數據處理2
(一)信息與數據2
(二)數據處理3
任務1-2理解數據描述3
(一)現實世界3
(二)信息世界4
(三)數據世界6
任務1-3掌握數據模型6
(一)數據模型分類6
(二)概念模型7
(三)數據模型的要素和種類7
(四)關係模型8
(五)關係的完整性10
任務1-4掌握關係代數12
(一)傳統的集合運算13
(二)專門的關係運算14
任務1-5明確數據庫系統的組成和結構20
(一)數據庫相關概念20
(二)數據庫系統的體系結構22
任務1-6了解數據管理技術的發展歷程24
(一)人工管理階段24
(二)文件系統階段24
(三)數據庫系統階段25
(四)分佈式數據庫系統25
(五)面向對象數據庫系統26
(六)數據倉庫26
(七)數據挖掘27
(八)雲計算與大數據28
習題29
項目2設計學生信息管理數據庫31
任務2-1了解數據庫設計31
任務2-2需求分析33
(一)需求分析的任務及目標33
(二)需求分析的方法34
任務2-3概念結構設計34
(一)概念結構設計的方法和步驟35
(二)局部ER模型設計36
(三)全局ER模型設計37
任務2-4邏輯結構設計40
(一)初始關係模式設計41
(二)關係模式的規範化44
任務2-5數據庫的物理設計50
(一)關係模式存取方法選擇50
(二)確定數據庫的存儲結構52
任務2-6數據庫的實施、運行和維護52
(一)數據庫的實施53
(二)數據庫的運行與維護54
任務2 -7設計學生信息管理數據庫54
(一)收集數據55
(二)創建ER模型55
(三)設計關係模式58
(四)規範化59
實訓:設計數據庫59
課外拓展:設計網絡玩具銷售系統60
習題61
第二篇基礎應用
項目3安裝與啟動MySQL 68
任務3-1了解MySQL 68
(一)MySQL簡介68
(二)MySQL版本信息69
(三)MySQL工具71
任務3-2安裝與配置MySQL 5.7 72
(一)下載MySQL 72
(二)在Windows平台下安裝與配置
MySQL 73
任務3-3啟動與登錄MySQL 78
(一)啟動MySQL服務78
(二)登錄MySQL 5.7 79
(三)配置PATH變量81
(四)更改MySQL 5.7的配置82
任務3-4掌握MySQL常用圖形化
管理工具85
實訓:安裝MySQL 5.7及Navicat for
MySQL 87
習題87
項目4創建與維護MySQL數據庫88
任務4-1認識SQL 88
任務4-2了解MySQL數據庫89
任務4-3創建數據庫91
(一)使用Navicat工具創建學生信息管理
數據庫91
(二)使用CREATE DATABASE語句創建
學生信息管理數據庫91
任務4- 4打開數據庫92
任務4-5刪除數據庫92
(一)使用Navicat工具刪除學生信息管理
數據庫93
(二)使用DROP DATABASE語句刪除
學生信息管理數據庫93
任務4-6理解MySQL數據庫的存儲引擎93
實訓:創建和刪除數據庫96
課外拓展:建立網絡玩具銷售系統97
習題97
項目5創建與維護學生信息管理數據表98
任務5-1理解表的基本概念98
任務5-2了解MySQL數據類型100
任務5-3掌握列的其他屬性102
任務5-4設計學生信息管理數據庫的
表結構103
任務5-5創建表105
(一)使用Navicat工具創建表106
(二)使用CREATE TABLE語句創建表107
任務5 -6維護表110
(一)使用Navicat工具查看表結構110
(二)使用DESCRIBE/DESC語句查看
表結構111
(三)使用SHOW CREATE TABLE語句
查看詳細表結構111
(四)使用SHOW TABLES語句
顯示表列表112
任務5-7修改表112
(一)使用Navicat工具修改表結構112
(二)使用ALTER TABLE語句修改表結構113
任務5-8在表中添加、查看、修改與
刪除數據記錄114
任務5-9複製表115
(一)使用Navicat工具複製表115
(二)使用SQL語句複製表115
任務5-10刪除表115
(一)使用Navicat工具刪除表115
(二)使用DROP TABLE語句刪除表116
實訓:創建與管理表116
課外拓展:創建與維護網絡玩具銷售
系統的數據表119
習題121
項目6查詢與維護學生信息管理
數據表123
任務6-1掌握簡單數據查詢123
(一)單表無條件數據查詢125
(二)使用WHERE子句實現條件查詢128
(三)使用常用聚集函數統計數據133
(四)分組篩選數據134
(五)對查詢結果進行排序135
任務6-2掌握多表連接查詢136
(一)交叉連接137
(二)內連接137
(三)自連接139
(四)外連接139
任務6-3理解嵌套查詢140
(一)嵌套子查詢140
(二)相關子查詢143
任務6-4理解集合查詢144
任務6-5學生信息瀏覽、查詢、統計145
(一)學生信息瀏覽子系統145
(二)學生信息查詢子系統146
(三)學生信息統計子系統147
任務6-6數據更新148
(一)數據記錄的插入148
(二)數據記錄的修改149
三)數據記錄的刪除150
任務6-7學生基本信息維護和畢業
學生信息導出151
(一)學生信息查詢及維護151
(二)畢業學生信息導出151
實訓:實現數據查詢152
一、簡單查詢152
二、分組與排序153
三、多表連接查詢154
四、嵌套查詢155
五、數據更新156
課外拓展:對網絡玩具銷售系統進行
數據查詢操作156
習題162
項目7優化查詢學生信息管理數據庫168
任務7-1使用索引優化查詢性能168
(一)索引概述168
(二)索引的類型169
(三)索引的設計原則170
(四)使用Navicat工具創建索引170
(五)使用SQL語句創建索引172
(六)刪除索引173
任務7-2使用視圖優化查詢性能173
(一)視圖概述173
(二)使用Navicat工具創建視圖174
(三)使用CREATE VIEW語句創建視圖176
(四)視圖的使用176
(五)視圖的修改178
(六)視圖的刪除178
實訓:索引、視圖的創建與管理使用179
課外拓展:在網絡玩具銷售系統中使用
引和視圖181
習題182
第三篇高級應用
項目8以程序方式處理學生信息
管理數據表186
任務8-1掌握SQL編程基礎186
(一)SQL基礎186
(二)SQL的流程控制192
(三)MySQL常用函數199
(四)游標200
任務8-2創建與使用存儲過程和存儲函數202
(一)存儲過程和存儲函數概述202
(二)創建存儲過程203
(三)調用存儲過程205
(四)創建存儲函數206
(五)調用存儲函數208
(六)查看存儲過程和存儲函數208
(七)刪除存儲過程和存儲函數209
任務8-3創建和使用觸發器210
(一)觸發器概述210
(二)創建觸發器210
(三)查看觸發器214
(四)刪除觸發器215
任務8-4掌握事務、鎖的概念和應用215
(一)事務概述215
(二)事務的ACID特性216
(三)事務的定義216
(四)事務並發操作引起的問題219
(五)事務隔離級別221
(六)MySQL的鎖定機制222
(七)活鎖和死鎖224
實訓:以程序方式處理MySQL 據表
的數據224
一、SQL基礎224
二、存儲過程和存儲函數225
三、觸發器226
四、游標及事務的使用227
課外拓展:針對網絡玩具銷售系統創建
存儲過程和触發器228
習題229
項目9維護學生信息管理數據庫
的安全性231
任務9-1了解MySQL的權限系統231
(一)權限表231
(二)MySQL權限系統的工作原理235
任務9-2管理數據庫用戶權限237
(一)用戶管理237
(二)權限管理242
任務9-3備份與恢復數據庫246
(一)數據備份與恢復247
(二)數據備份的方法248
(三)數據恢復的方法251
(四)數據庫遷移253
(五)表的導入與導出254
任務9-4使用MySQL日誌262
(一)MySQL日誌簡介263
(二)二進制日誌263
(三)錯誤日誌266
(四)通用查詢日誌267
(五)慢查詢日誌267
實訓:維護MySQL數據庫的安全性268
一、賬戶管理與權限管理268
二、數據庫的備份與恢復269
三、MySQL日誌的綜合管理270
課外拓展:備份和還原網絡玩具銷售系統271
習題272
作者介紹
武洪萍在山東信息職業技術學院任教軟件系計算機軟件教研室主任。主持和參與了“高職院校計算機類數據庫原理及應用課程教學改革研究”(山東省教育廳)、“社保基金運行分析系統的開發研究”(濰坊市科技局)、“基於智能移動終端的電子商務連鎖銷售服務平台”(山東省教育廳)等多項教科研課題的研究,其中主持的“高職院校計算機類數據庫原理及應用課程教學改革研究”(山東省教育廳)獲得了省級教學成果獎三等獎。