MySQL數(shù)據(jù)庫技術(shù)及應用項目教程
定 價:58 元
- 作者:劉芳
- 出版時間:2021/6/1
- ISBN:9787121405136
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.132.3
- 頁碼:324
- 紙張:
- 版次:01
- 開本:16開
本書結(jié)合MySQL 8數(shù)據(jù)庫管理系統(tǒng),基于“與企業(yè)應用、崗位技能相符”的原則,按照項目教學的基本規(guī)律編寫。全書以項目為導向、以工作任務為主線,以MySQL數(shù)據(jù)庫的管理與應用開發(fā)任務為載體,重點介紹以下知識與技能:MySQL數(shù)據(jù)庫環(huán)境的建立及其連接;數(shù)據(jù)庫及各種數(shù)據(jù)庫對象的創(chuàng)建與管理;數(shù)據(jù)的增刪改及查詢;索引與視圖;MySQL程序設計;數(shù)據(jù)的備份與恢復、導入與導出等操作;MySQL數(shù)據(jù)庫的安全管理;數(shù)據(jù)庫的設計方法;利用Python和PHP語言開發(fā)基于C/S和B/S結(jié)構(gòu)的數(shù)據(jù)庫應用系統(tǒng)的方法。本書注重理實一體,語言淺顯易懂,具有較強的實用性和操作性。本書結(jié)構(gòu)合理,便于教學取舍;選材實用,示例豐富,便于理解和操作。本書可作為高等職業(yè)院校計算機相關(guān)專業(yè)及電子商務、物流管理、機電一體化等專業(yè)的教材,也可作為普通高校或成人院校本科非計算機專業(yè)的教材,也是MySQL及其應用編程初學者的理想入門讀物,對計算機工作者及愛好者也有很好的參考價值。
劉芳,女,副教授,就職于蘇州經(jīng)貿(mào)職業(yè)技術(shù)學院,長期致力于數(shù)據(jù)庫的教學和研究,具有豐富的教學經(jīng)驗和實踐經(jīng)驗。
目 錄
項目1 MySQL數(shù)據(jù)庫環(huán)境的建立 1
任務1.1 為應用系統(tǒng)選擇合適的數(shù)據(jù)管理技術(shù) 2
任務1.2 MySQL版本的選擇 3
(一)MySQL的發(fā)展歷史 3
(二)MySQL的特點 3
(三)MySQL的版本分類 3
任務1.3 安裝與配置MySQL社區(qū)版 4
(一)MySQL在Windows平臺上的安裝方式 5
(二)MySQL 8.0的安裝環(huán)境 5
任務1.4 驗證安裝與配置結(jié)果 20
任務1.5 啟動與停止MySQL服務器 22
任務1.6 連接與斷開MySQL服務器 24
任務1.7 查看與修改MySQL的配置 28
習題一 29
項目2 MySQL數(shù)據(jù)庫和表的創(chuàng)建與管理 31
任務2.1 創(chuàng)建學生成績數(shù)據(jù)庫前的準備工作 31
(一)MySQL數(shù)據(jù)庫文件的存儲方式 32
(二)MySQL的系統(tǒng)數(shù)據(jù)庫 32
(三)MySQL中的字符集和排序規(guī)則 32
任務2.2 創(chuàng)建與查看學生成績數(shù)據(jù)庫 33
(一)SQL簡介 34
(二)創(chuàng)建數(shù)據(jù)庫的SQL語句 34
(三)查看數(shù)據(jù)庫的SQL語句 35
任務2.3 修改與刪除學生成績數(shù)據(jù)庫 37
(一)修改數(shù)據(jù)庫的SQL語句 37
(二)刪除數(shù)據(jù)庫的SQL語句 37
任務2.4 創(chuàng)建學生成績數(shù)據(jù)庫表前的準備工作 38
(一)MySQL存儲引擎及其選擇 39
(二)表的邏輯結(jié)構(gòu) 39
(三)MySQL的數(shù)據(jù)類型 40
(四)MySQL數(shù)據(jù)類型的選擇 44
任務2.5 創(chuàng)建與查看學生成績數(shù)據(jù)庫中的表 46
(一)打開數(shù)據(jù)庫的SQL語句 46
(二)創(chuàng)建數(shù)據(jù)表的SQL語句 46
(三)查看數(shù)據(jù)表的SQL語句 47
任務2.6 修改和刪除學生成績數(shù)據(jù)庫中的表 50
(一)修改表 50
(二)刪除表 51
任務2.7 為學生成績數(shù)據(jù)庫表建立約束 54
任務2.7.1 建立主鍵(PRIMARY KEY)約束 54
任務2.7.2 建立外鍵(FOREIGN KEY)約束 56
任務2.7.3 建立唯一性(UNIQUE)約束 57
任務2.7.4 建立非空(NOT NULL)約束 59
任務2.7.5 建立檢查(CHECK)約束 60
任務2.7.6 建立默認(DEFAULT)約束 60
習題二 62
項目3 查詢與維護學生成績數(shù)據(jù)庫中的表 66
任務3.1 在學生成績數(shù)據(jù)庫表中插入數(shù)據(jù) 67
任務3.1.1 直接賦值插入數(shù)據(jù) 67
任務3.1.2 插入其他表中的查詢結(jié)果 68
任務3.2 在學生成績數(shù)據(jù)庫表中修改數(shù)據(jù) 69
任務3.2.1 直接賦值修改數(shù)據(jù) 70
任務3.2.2 通過查詢結(jié)果修改數(shù)據(jù) 71
任務3.3 在學生成績數(shù)據(jù)庫表中刪除數(shù)據(jù) 72
任務3.3.1 直接刪除數(shù)據(jù) 72
任務3.3.2 通過查詢結(jié)果刪除數(shù)據(jù) 73
任務3.4 在學生成績數(shù)據(jù)庫中實現(xiàn)無條件查詢 74
任務3.4.1 查詢部分列 74
任務3.4.2 查詢?nèi)苛?75
任務3.4.3 查詢經(jīng)過計算的列 76
任務3.4.4 顯示結(jié)果集中的部分行 77
任務3.5 在學生成績數(shù)據(jù)庫中實現(xiàn)條件查詢 77
任務3.5.1 使用比較運算符的條件查詢 78
任務3.5.2 使用范圍運算符的條件查詢 79
任務3.5.3 使用集合運算符的條件查詢 79
任務3.5.4 使用模式匹配運算符的條件查詢 80
任務3.5.5 涉及空值的條件查詢 82
任務3.5.6 復合條件查詢 82
任務3.6 對查詢結(jié)果的排序、匯總和分組 83
任務3.7 在學生成績數(shù)據(jù)庫中實現(xiàn)連接查詢 87
任務3.7.1 內(nèi)連接查詢 87
任務3.7.2 外連接查詢 89
任務3.7.3 自身連接查詢 91
任務3.8 在學生成績數(shù)據(jù)庫中實現(xiàn)嵌套查詢 92
任務3.8.1 嵌套子查詢——使用比較運算符的嵌套子查詢 92
任務3.8.2 嵌套子查詢——使用ANY、SOME和ALL謂詞的嵌套子查詢 93
任務3.8.3 嵌套子查詢——使用IN謂詞的嵌套子查詢 94
任務3.8.4 相關(guān)子查詢 95
任務3.9 在學生成績數(shù)據(jù)庫中實現(xiàn)合并(聯(lián)合)查詢 96
任務3.9.1 利用UNION合并兩個查詢結(jié)果集 97
任務3.9.2 將UNION合并結(jié)果保存到一個新表中 98
習題三 98
項目4 優(yōu)化查詢學生成績數(shù)據(jù)庫中的表 102
任務4.1 認識索引對優(yōu)化查詢性能的作用 102
(一)索引的基本概念 103
(二)索引的優(yōu)缺點 103
(三)適合和不適合使用索引的場合 104
任務4.2 為學生成績數(shù)據(jù)庫表創(chuàng)建索引 105
(一)索引的類型 106
(二)索引的創(chuàng)建 107
任務4.3 管理學生成績數(shù)據(jù)庫表索引 109
(一)查看索引 110
(二)使用索引分析查詢性能 110
(三)隱藏索引 110
(四)刪除索引 111
任務4.4 為學生成績數(shù)據(jù)庫系統(tǒng)創(chuàng)建視圖 114
(一)視圖的基本概念 114
(二)視圖的創(chuàng)建 115
任務4.5 管理學生成績數(shù)據(jù)庫系統(tǒng)中的視圖 118
任務4.5.1 查看視圖 118
任務4.5.2 修改視圖 120
任務4.5.3 刪除視圖 121
任務4.6 在學生成績數(shù)據(jù)庫系統(tǒng)中使用視圖 122
任務4.6.1 通過視圖檢索表數(shù)據(jù) 122
任務4.6.2 通過視圖更新表數(shù)據(jù) 123
習題四 125
項目5 程序設計在學生成績系統(tǒng)中的使用 128
任務5.1 在學生成績數(shù)據(jù)庫中創(chuàng)建和使用用戶變量 129
(一)常量 129
(二)變量 130
任務5.2 為學生成績數(shù)據(jù)庫創(chuàng)建存儲過程 134
(一)存儲過程的基本概念 135
(二)存儲過程的創(chuàng)建 135
(三)存儲過程的調(diào)用 137
任務5.3 管理學生成績數(shù)據(jù)庫中的存儲過程 139
(一)查看存儲過程 140
(二)刪除存儲過程 140
(三)修改存儲過程 140
任務5.4 在存儲過程中使用流程控制語句 142
任務5.4.1 在存儲過程中使用流程控制語句—IF語句 142
任務5.4.2 在學生成績數(shù)據(jù)庫中使用流程控制語句—CASE語句 144
任務5.4.3 在學生成績數(shù)據(jù)庫中使用流程控制語句—循環(huán)語句 147
(一)WHILE循環(huán)語句 147
(二)REPEAT循環(huán)語句 147
(三)LOOP循環(huán)語句 148
任務5.5 在存儲過程中使用游標 149
(一)游標的基本概念 149
(二)游標的基本操作 149
(三)錯誤處理程序的定義 151
任務5.6 為學生成績數(shù)據(jù)庫創(chuàng)建存儲函數(shù) 153
(一)存儲函數(shù)與存儲過程的區(qū)別 153
(二)存儲函數(shù)的創(chuàng)建與調(diào)用 153
任務5.7 管理學生成績數(shù)據(jù)庫中的存儲函數(shù) 155
(一)查看存儲函數(shù) 156
(二)刪除存儲函數(shù) 156
(三)修改存儲函數(shù) 156
任務5.8 為學生成績數(shù)據(jù)庫創(chuàng)建觸發(fā)器 157
(一)觸發(fā)器的基本概念 157
(二)觸發(fā)器的創(chuàng)建與執(zhí)行 158
任務5.9 管理學生成績數(shù)據(jù)庫中的觸發(fā)器 162
(一)查看觸發(fā)器 163
(二)刪除觸發(fā)器 163
任務5.10 為學生成績數(shù)據(jù)庫設計事務 164
(一)事務的基本概念 165
(二)MySQL事務的管理 166
習題五 170
項目6 學生成績數(shù)據(jù)庫的備份與恢復 173
任務6.1 初識數(shù)據(jù)庫備份與恢復 173
(一)數(shù)據(jù)庫備份與恢復的概念 174
(二)數(shù)據(jù)丟失的原因 174
(三)數(shù)據(jù)庫備份的分類 174
(四)數(shù)據(jù)恢復的手段 175
任務6.2 備份數(shù)據(jù)庫 176
(一)mysqldump工具簡介 176
(二)利用mysqldump工具備份數(shù)據(jù)庫 177
任務6.3 恢復數(shù)據(jù)庫 178
任務6.4 數(shù)據(jù)的導出 180
任務6.4.1 使用SELECT…INTO OUTFILE語句導出文件 180
任務6.4.2 使用mysqldump命令導出文件 182
任務6.4.3 使用mysql命令導出文本文件 183
任務6.5 數(shù)據(jù)的導入 184
任務6.5.1 使用LOAD DATA INFILE語句導入文件 184
任務6.5.2 使用mysqlimport命令導入文本文件 186
任務6.6 使用MySQL日志恢復數(shù)據(jù) 188
(一)修改二進制日志文件的存儲路徑 188
(二)查看二進制日志文件 189
(三)利用二進制日志恢復數(shù)據(jù)庫 190
(四)刪除二進制日志文件 190
習題六 192
項目7 學生成績數(shù)據(jù)庫的安全管理 194
任務7.1 學生成績數(shù)據(jù)庫安全策略的選擇 194
任務7.2 認識MySQL的權(quán)限系統(tǒng) 196
(一)權(quán)限表 197
(二)MySQL權(quán)限系統(tǒng)的工作原理 199
任務7.3 創(chuàng)建和查看用戶 201
(一)創(chuàng)建用戶 202
(二)查看用戶 203
任務7.4 修改和刪除用戶 204
(一)修改用戶 204
(二)刪除用戶 205
任務7.5 管理用戶權(quán)限 207
(一)MySQL的權(quán)限類型 207
(二)用戶權(quán)限的授予 208
(三)用戶權(quán)限的查看 208
(四)用戶權(quán)限的撤銷(回收) 209
任務7.6 管理角色及其權(quán)限 211
(一)創(chuàng)建角色并授予角色權(quán)限 211
(二)查看角色或角色權(quán)限 212
(三)啟用角色 212
(四)撤銷角色或角色權(quán)限 213
(五)刪除角色 213
習題七 215
項目8 學生成績數(shù)據(jù)庫的設計 218
任務8.1 項目設計背景描述 218
任務8.2 確定數(shù)據(jù)庫設計的內(nèi)容和方法 219
(一)數(shù)據(jù)庫系統(tǒng)及其體系結(jié)構(gòu) 219
(二)數(shù)據(jù)庫設計的內(nèi)容和方法 221
任務8.3 系統(tǒng)的需求分析 222
(一)需求分析的任務與目標 222
(二)需求分析的內(nèi)容與方法 222
任務8.4 系統(tǒng)的概念設計 226
(一)概念設計中數(shù)據(jù)及數(shù)據(jù)聯(lián)系的描述 226
(二)概念設計的方法 227
任務8.5 系統(tǒng)的邏輯設計 229
(一)邏輯設計中的數(shù)據(jù)模型 229
(二)關(guān)系模型的基本概念 229
(三)邏輯設計的方法 232
任務8.6 系統(tǒng)的物理設計 234
(一)數(shù)據(jù)庫管理系統(tǒng)的功能與組成 234
(二)物理設計的方法 235
習題八 236
項目9 學生成績管理系統(tǒng)的開發(fā) 239
任務9.1 確定系統(tǒng)的體系結(jié)構(gòu)及其前臺開發(fā)工具 239
任務9.2 使用Python開發(fā)C/S結(jié)構(gòu)的學生成績管理系統(tǒng) 241
(一)Python編程知識簡介 241
(二)在PyCharm Community 2019中訪問MySQL數(shù)據(jù)庫 249
任務9.2.1 學生成績管理系統(tǒng)中的“用戶登錄”功能模塊的設計 255
任務9.2.2 學生成績管理系統(tǒng)中的“專業(yè)信息管理”功能模塊的設計 257
任務9.2.3 學生成績管理系統(tǒng)中的“學生基本信息管理”功能模塊的設計 264
任務9.3 使用PHP開發(fā)B/S結(jié)構(gòu)的學生成績管理系統(tǒng) 268
(一)PHP編程知識簡介 268
(二)在PHP中訪問MySQL數(shù)據(jù)庫 270
任務9.3.1 學生成績管理系統(tǒng)中“學生基本信息管理”功能的設計 273
任務9.3.2 學生成績管理系統(tǒng)中的“課程信息管理”功能的設計 282
任務9.3.3 學生成績管理系統(tǒng)中的“學生成績管理”功能的設計 289
習題九 303
附錄 305