本書以MySQL數據庫管理系統(tǒng)為平臺,較全面地介紹了數據庫的基礎知識及其應用。全書共9個單元,包括認識數據庫、數據庫設計、數據定義、數據操作、數據查詢、數據視圖、索引與分區(qū)、數據庫編程和數據安全。全書采用案例教學方式,分別采用4個不同的數據庫項目貫穿始末。每個單元先以應用舉例的方式闡述知識要點,再通過對一個典型的商業(yè)實例進行分析,給出解決問題的完整方案,并提供與商業(yè)實例相對應的綜合實訓項目,以便讀者在實踐中模擬操作,最后通過理論知識測試和實戰(zhàn)項目演練等強化訓練來幫助讀者鞏固所學的內容。
本書可以作為高職高專計算機相關專業(yè)和非計算機專業(yè)數據庫基礎和數據庫開發(fā)課程的教材,也適合計算機軟件開發(fā)人員、從事數據庫管理與維護工作的專業(yè)人員和廣大計算機愛好者自學使用,還可以作為全國計算機等級考試二級“MySQL數據庫程序設計”和“1+X”Web前端開發(fā)(中級)職業(yè)技能等級證書的考試參考書。
“十三五”職業(yè)教育國家規(guī)劃教材全新改版
四大項目貫穿:應用舉例+商業(yè)實例+綜合實訓+實戰(zhàn)演練
MySQL 8.0+Navicat 15.0+思維導圖+微課視頻
周德偉,長期工作在教學第一線的 “雙師”教師,副教授。20年來一直致力于數據庫基礎、數據庫開發(fā)等課程教學改革的研究,教學經驗豐富,近五年連續(xù)獲深圳信息學院教學質量優(yōu)秀獎,教學效果優(yōu)良。同時有8年企業(yè)數據庫管理與開發(fā)實際經驗,獲得Microsoft、Oracle等國際知名企業(yè)認證的MCDBA(微軟認證數據庫管理員)、MCDBA(微軟認證應用程序開發(fā)專家)、OCA(Oracle)資格證書。參加過“十二五”職業(yè)教育國家規(guī)劃教材《MySQL數據庫技術》的編寫工作,編寫經驗豐富,組織能力強。
單元1 認識數據庫 1
【學習導讀】 1
【學習目標】 1
【思維導圖】 1
【相關知識】 2
1.1 數據庫概述 2
1.1.1 數據與數據庫 2
1.1.2 數據庫的發(fā)展 3
1.1.3 數據庫管理系統(tǒng) 4
1.1.4 數據庫系統(tǒng) 5
1.1.5 結構化查詢語言 6
1.1.6 大數據時代的數據庫管理系統(tǒng) 7
1.2 MySQL的安裝與配置 10
1.2.1 MySQL服務器的安裝與配置 12
1.2.2 MySQL圖形化管理工具 18
1.2.3 連接與斷開服務器 21
【單元小結】 24
【綜合實訓】 安裝和配置MySQL服務器 24
【理論練習】 25
單元2 數據庫設計 26
【學習導讀】 26
【學習目標】 26
【思維導圖】 26
【相關知識】 27
2.1 關系數據庫設計 27
2.1.1 數據的加工 27
2.1.2 數據模型的概念 28
2.1.3 概念模型 30
2.1.4 E-R圖設計實例 31
2.1.5 數據庫關系模型 35
2.2 數據庫設計規(guī)范化 36
2.2.1 關系數據庫范式理論 36
2.2.2 數據庫規(guī)范化實例 40
【商業(yè)實例】 設計Petstore數據庫 42
2.3.1 根據寵物商店業(yè)務邏輯建立概念模型——Petstore E-R圖 42
2.3.2 將Petstore E-R圖轉換為數據世界的關系模型 43
2.3.3 Petstore數據庫規(guī)范化 43
【單元小結】 44
【綜合實訓】 教學管理及圖書借閱系統(tǒng)數據庫設計 44
【理論練習】 45
【實戰(zhàn)演練】 設計學生成績管理系統(tǒng)數據庫 46
單元3 數據定義 48
【學習導讀】 48
【學習目標】 48
【思維導圖】 48
【相關知識】 49
3.1 創(chuàng)建與管理數據庫 49
3.1.1 創(chuàng)建數據庫 49
3.1.2 管理數據庫 53
3.2 創(chuàng)建與管理數 庫表 55
3.2.1 創(chuàng)建數據庫表 55
3.2.2 管理數據庫表 59
3.3 數據完整性約束 62
3.3.1 數據的完整性約束 62
3.3.2 主鍵約束 64
3.3.3 替代鍵約束 65
3.3.4 參照完整性約束 67
3.3.5 CHECK完整性約束 70
3.4 使用圖形化管理工具管理數據庫和表 72
3.4.1 使用圖形化管理工具管理數據庫 72
3.4.2 使用圖形化管理工具管理數據庫表 74
【商業(yè)實例】 Petstore數據定義 76
3.5.1 Petstore數據庫表結構分析 76
3.5.2 創(chuàng)建Petstore數據庫與表 78
3.5.3 建立數據完整性約束 79
【單元小結】 80
【綜合實訓】 Library數據定義 81
【理論練習】 83
【實戰(zhàn)演練】 SchoolDB數據定義 84
單元4 數據操作 86
【學習導讀】 86
【學習目標】 86
【思維導圖】 86
【相關知識】 88
4.1 數據插入 88
4.2 數據修改 90
4.3 數據刪除 91
4.3.1 使用DELETE語句刪除數據 91
4.3.2 使用TRUNCATE TABLE語句刪除表數據 93
【商業(yè)實例】 Petstore數據操作 93
4.4.1 Petstore數據表及其內容 93
4.4.2 Petstore數據錄入 96
4.4.3 Petstore數據修改與刪除操作 98
【單元小結】 100
【綜合實訓】 Library數據操作 100
【理論練習】 102
【實戰(zhàn)演練】 SchoolDB數據操作 103
單元5 數據查詢 106
【學習導讀】 106
【學習目標】 106
【思維導圖】 106
【相關知識】 107
5.1 單表查詢 107
5.1.1 SELECT語句定義 107
5.1.2 選擇列 107
5.1.3 WHERE子句 111
5.2 多表查詢 116
5.2.1 FROM子句 116
5.2.2 多表連接 117
5.2.3 子查詢 122
5.2.4 聯(lián)合查詢 125
5.3 分類匯總與排序 128
5.3.1 聚合函數 128
5.3.2 GROUP BY子句 130
5.3.3 HAVING子句 132
5.3.4 ORDER BY子句 134
5.3.5 LIMIT子句 135
【商業(yè)實例】 Petstore數據查詢 135
5.4.1 SELECT語句的基本使用 135
5.4.2 條件查詢 136
5.4.3 多表查詢 137
5.4.4 分類匯總與排序 137
【單元小結】 138
【綜合實訓】 LibraryDB數據查詢 138
【理論練習】 140
【實踐演練】 SchoolDB數據查詢 140
單元6 數據視圖 142
【學習導讀】 142
【學習目標】 142
【思維導圖】 142
【相關知識】 143
6.1 創(chuàng)建和查詢視圖 143
6.1.1 視圖概念 143
6.1.2 創(chuàng)建視圖 143
6.1.3 查詢視圖 145
6.2 操作視圖 145
6.2.1 通過視圖操作數據 145
6.2.2 修改視圖定義 148
6.2.3 刪除視圖 148
【商業(yè)實例】 Petstore數據視圖 148
【單元小結】 149
【綜合實訓】 LibraryDB數據視圖 150
【理論練習】 151
【實戰(zhàn)演練】 SchoolDB數據視圖 151
單元7 索引與分區(qū) 152
【學習導讀】 152
【學習目標】 152
【思維導圖】 152
【相關知識】 153
7.1 索引的分類 153
7.2 創(chuàng)建索引 153
7.2.1 使用CREATE INDEX語句 153
7.2.2 使用ALTER TABLE語句 154
7.2.3 在創(chuàng)建表時創(chuàng)建索引 155
7.3 刪除索引 156
7.4 索引對查詢的影響 156
7.5 數據庫分區(qū) 157
7.5.1 分區(qū)類型 158
7.5.2 分區(qū)管理 162
【商業(yè)實例】 Petstore索引與分區(qū) 163
【單元小結】 164
【綜合實訓】 LibraryDB索引與分區(qū) 165
【理論練習】 165
【實戰(zhàn)演練】 SchoolDB索引與分區(qū) 166
單元8 數據庫編程 167
【學習導讀】 167
【學習目標】 167
【思維導圖】 167
【相關知識】 168
8.1 編程基礎知識 168
8.1.1 常量與變量 168
8.1.2 系統(tǒng)內置函數 170
8.1.3 流程控制語句 172
8.2 存儲過程 176
8.2.1 創(chuàng)建存儲過程 176
8.2.2 顯示存儲過程 178
8.2.3 調用存儲過程 178
8.2.4 刪除存儲過程 181
8.2.5 游標的用法及作用 181
8.2.6 存儲過程的嵌套 185
8.3 創(chuàng)建和調用存儲函數 186
8.3.1 創(chuàng)建存儲函數 187
8.3.2 調用存儲函數 188
8.4 設置觸發(fā)器 190
8.4.1 創(chuàng)建觸發(fā)器 190
8.4.2 刪除觸發(fā)器 194
8.5 事件 194
8.5.1 創(chuàng)建事件 194
8.5.2 事件調度器設置 195
【商業(yè)實例】 Petstore數據庫編程 196
【單元小結】 200
【綜合實訓】 LibraryDB數據庫編程 201
【理論練習】 202
【實戰(zhàn)演練】 SchoolDB數據庫編程 203
單元9 數據安全 204
【學習導讀】 204
【學習目標】 204
【思維導圖】 204
【相關知識】 205
9.1 用戶和數據權限管理 205
9.1.1 添加和刪除用戶 205
9.1.2 授予權限和回收權限 207
9.1.3 使用圖形化管理工具管理用戶與權限 212
9.2 數據的備份與恢復 214
9.2.1 備份和恢復需求分析 214
9.2.2 數據庫備份和恢復 214
9.2.3 MySQL日志 219
9.3 事務和多用戶管理 221
9.3.1 事務 221
9.3.2 多用戶與鎖定機制 223
【商業(yè)實例】 Petstore數據安全 225
【單元小結】 226
【綜合實訓】 LibraryDB數據安全 226
【理論練習】 227
【實戰(zhàn)演練】 SchoolDB數據安全 228