內容簡介
MySQL是目前最流行的關係資料庫管理系統之一。本書以MySQL 5.6資料庫管理系統為平台,以案例教學法為編寫主線,介紹了資料庫系統的基本概念和套用技術。
本書以學生選課管理系統作為教學案例,以網上書店作為實訓案例,採用“學習要點—內容示例—歸納總結—習題實訓”的結構體系設計每章內容。最後一章以一個具體的項目案例開發設計過程,將資料庫原理知識與實際資料庫開發結合在一起。
本書採用線上開放課程教學方式,提供了授課視頻、PPT、案例庫、習題庫、試題庫等多種資源來輔助教師教學和學生學習。
本書可作為高職高專院校計算機相關專業的教材,也可作為從事計算機軟體工作的科研人員、工程技術人員,以及其他相關人員的培訓教材或參考書。
圖書目錄
第 1章 資料庫基礎 1
1.1 資料庫的基本概念 2
1.2 常見的資料庫 4
1.3 數據管理技術的發展 5
1.3.1 人工管理階段 6
1.3.2 檔案系統階段 6
1.3.3 資料庫系統階段 7
1.4 數據模型 8
1.4.1 數據模型的概念 8
1.4.2 數據模型的分類 8
1.4.3 概念模型的表示方法 9
1.5 常見的數據模型 11
1.6 關係資料庫的規範化 14
1.6.1 第 一範式(1NF) 15
1.6.2 第二範式(2NF) 15
1.6.3 第三範式(3NF) 16
1.7 資料庫設計 17
1.7.1 資料庫設計概述 17
1.7.2 需求分析 18
1.7.3 概念結構設計 19
1.7.4 邏輯結構設計 21
1.7.5 資料庫物理設計 23
1.7.6 資料庫實施 24
1.7.7 資料庫運行和維護 24
1.7.8 資料庫設計案例 24
本章小結 27
實訓項目 27
項目:“網上書店”資料庫 27
課後習題 28
第 2章 MySQL基礎 29
2.1 MySQL概述 30
2.2 MySQL的安裝與配置 31
2.2.1 Windows平台下MySQL的安裝 31
2.2.2 Windows平台下MySQL的配置 35
2.2.3 Linux平台下MySQL的安裝 42
2.3 MySQL的使用 44
2.3.1 啟動MySQL服務 44
2.3.2 登錄MySQL資料庫伺服器 46
2.3.3 MySQL的相關命令 47
2.3.4 重新配置MySQL 49
本章小結 51
實訓項目 51
項目:MySQL環境 51
課後習題 52
第3章 資料庫和數據表的基本操作 53
3.1 資料庫的基本操作 54
3.1.1 創建資料庫 54
3.1.2 查看資料庫 54
3.1.3 修改資料庫 55
3.1.4 刪除資料庫 56
3.2 數據類型 56
3.3 數據表的基本操作 59
3.3.1 創建數據表 59
3.3.2 查看數據表 60
3.3.3 修改數據表 61
3.3.4 刪除數據表 65
3.4 數據表的約束 66
3.4.1 PRIMARY KEY CONSTRAINT(主鍵約束) 66
3.4.2 FOREIGN KEY CONSTRAINT(外鍵約束) 69
3.4.3 NOT NULL CONSTRAINT(非空約束) 73
3.4.4 UNIQUE CONSTRAINT(唯一約束) 76
3.4.5 DEFAULT CONSTRAINT (默認約束) 78
3.5 設定表的欄位值自動增加 80
3.6 綜合案例——學生選課資料庫 82
3.6.1 創建“學生選課”資料庫 82
3.6.2 在“學生選課”資料庫中創建表 82
本章小結 84
實訓項目 85
項目1:創建“網上書店”資料庫 85
項目2:在“網上書店”資料庫中創建表 85
課後習題 86
第4章 數據表記錄的更新操作 87
4.1 數據表記錄的插入 88
4.1.1 向數據表中插入單條記錄 88
4.1.2 向數據表中插入多條記錄 89
4.2 數據表記錄的修改 90
4.3 數據表記錄的刪除 91
4.3.1 使用DELETE刪除數據 91
4.3.2 使用TRUNCATE清空數據 92
本章小結 93
實訓項目 93
項目:在“網上書店”資料庫的相關數據表中插入數據 93
課後習題 94
第5章 數據查詢 95
5.1 SELECT語句的基本語法 96
5.2 簡單查詢 97
5.2.1 基本查詢 97
5.2.2 使用WHERE子句 100
5.2.3 使用ORDER BY子句 105
5.2.4 使用LIMIT子句 106
5.3 統計查詢 107
5.3.1 集合函式 107
5.3.2 使用GROUP BY子句 108
5.4 多表查詢 111
5.4.1 交叉連線 111
5.4.2 內連線 113
5.4.3 外連線 115
5.4.4 自連線 116
5.5 子查詢 117
5.5.1 比較子查詢 117
5.5.2 IN子查詢 118
5.5.3 批量比較子查詢 120
5.5.4 EXISTS子查詢 121
5.5.5 在INSERT、UPDATE、DELETE語句中使用子查詢 123
5.6 合併結果集 125
本章小結 125
實訓項目 126
項目1:在“網上書店”資料庫中進行簡單查詢 126
項目2:在“網上書店”資料庫查詢中使用集合函式 126
項目3:在“網上書店”資料庫查詢中使用連線查詢和子查詢 127
課後習題 127
第6章 存儲過程與事務 129
6.1 MySQL程式設計基礎 130
6.1.1 變數 130
6.1.2 流程控制語句 131
6.1.3 游標 134
6.2 存儲過程概述 135
6.2.1 存儲過程的基本概念 136
6.2.2 存儲程式的類型 136
6.2.3 存儲過程的作用 136
6.3 創建和執行存儲過程 137
6.3.1 創建和執行不帶輸入參數的存儲過程 137
6.3.2 創建和執行帶輸入參數的存儲過程 138
6.3.3 創建和執行帶輸出參數的存儲過程 140
6.4 管理存儲過程 142
6.4.1 查看存儲過程 142
6.4.2 修改存儲過程 142
6.4.3 刪除存儲過程 143
6.5 存儲函式 144
6.5.1 存儲過程與存儲函式的聯繫與區別 144
6.5.2 創建和執行存儲函式 144
6.5.3 查看存儲函式 146
6.5.4 刪除存儲函式 146
6.5.5 MySQL的系統函式 146
6.6 事務 148
6.6.1 事務概述 148
6.6.2 事務的提交 149
6.6.3 事務的回滾 150
6.6.4 事務的隔離級別 151
本章小結 152
實訓項目 152
項目1:在“網上書店”資料庫中創建存儲過程 152
項目2:在“網上書店”資料庫中創建帶輸入輸出參數的存儲過程 153
項目3:在“網上書店”資料庫中實現事務處理 153
課後習題 153
第7章 索引、視圖和觸發器 155
7.1 索引 156
7.1.1 索引概述 156
7.1.2 索引的分類 156
7.1.3 索引的設計原則 157
7.1.4 創建索引 158
7.1.5 刪除索引 165
7.2 視圖 165
7.2.1 視圖的基本概念 165
7.2.2 視圖的優點 166
7.2.3 定義視圖 166
7.2.4 查看視圖 168
7.2.5 修改和刪除視圖 171
7.2.6 更新視圖 172
7.3 觸發器 176
7.3.1 觸發器概述 176
7.3.2 創建觸發器 176
7.3.3 觸發器的使用 177
7.3.4 查看觸發器的定義 182
7.3.5 刪除觸發器 183
本章小結 183
實訓項目 184
項目1:在“網上書店”資料庫中創建索引並查看維護 184
項目2:在“網上書店”資料庫中創建視圖並維護使用 184
項目3:在“網上書店”資料庫中創建觸發器 184
項目4:在“網上書店”資料庫中使用觸發器 185
項目5:在“網上書店”資料庫中刪除觸發器 185
課後習題 185
第8章 資料庫高級管理 187
8.1 資料庫的備份與恢復 188
8.1.1 資料庫的備份 189
8.1.2 資料庫的恢復 191
8.2 用戶管理 193
8.2.1 user表 193
8.2.2 創建新用戶 194
8.2.3 刪除普通用戶 197
8.2.4 修改用戶信息 199
8.3 許可權管理 202
8.3.1 MySQL的許可權類型 202
8.3.2 許可權查詢 203
8.3.3 許可權授予 204
8.3.4 許可權收回 205
本章小結 207
實訓項目 207
項目1:使用SQL語句備份與恢複數據 207
項目2:創建新用戶 207
項目3:用戶許可權的授予和收回 207
課後習題 207
第9章 項目案例 208
9.1 案例分析 209
9.1.1 需求概述 209
9.1.2 問題分析 209
9.2 項目設計 211
9.2.1 資料庫設計 211
9.2.2 創建庫、創建表、創建約束 213
9.2.3 插入測試數據 216
9.2.4 編寫SQL語句實現銀行的日常業務 219
9.2.5 創建、使用視圖 221
9.2.6 使用事務和存儲過程實現業務處理 222
9.3 進度記錄 225
參考文獻 227