MySQL實(shí)用教程(第4版)(含視頻教學(xué))
定 價:60 元
- 作者:鄭阿奇
- 出版時間:2024/5/1
- ISBN:9787121467288
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.132.3
- 頁碼:324
- 紙張:
- 版次:01
- 開本:16開
本書以當(dāng)前流行的MySQL 5.7作為平臺,內(nèi)容分為MySQL基礎(chǔ)、習(xí)題、實(shí)驗(yàn)、數(shù)據(jù)庫綜合實(shí)訓(xùn)、數(shù)據(jù)庫應(yīng)用開發(fā)實(shí)訓(xùn)和附錄。本版對MySQL基礎(chǔ)部分進(jìn)行了系統(tǒng)優(yōu)化,使內(nèi)容更加簡明扼要,對原有實(shí)例進(jìn)行了修改,從而為實(shí)驗(yàn)數(shù)據(jù)庫與教程的一體化創(chuàng)造了條件。全書MySQL命令分層縮進(jìn),基礎(chǔ)部分?jǐn)?shù)據(jù)庫表列名采用漢字,綜合實(shí)訓(xùn)數(shù)據(jù)庫表列名則采用英文字符,數(shù)據(jù)庫及其對象、函數(shù)名等采用小寫字母,系統(tǒng)關(guān)鍵字采用大寫字母,語句格式清晰易懂,運(yùn)行結(jié)果直觀。數(shù)據(jù)庫綜合實(shí)訓(xùn)通過一個規(guī)模不大的數(shù)據(jù)庫綜合實(shí)例,將數(shù)據(jù)庫主要對象及其相互配合包含其中,同時又為后面的數(shù)據(jù)庫應(yīng)用開發(fā)實(shí)訓(xùn)進(jìn)行了精心的數(shù)據(jù)準(zhǔn)備。實(shí)驗(yàn)部分?jǐn)?shù)據(jù)庫與基礎(chǔ)部分的是一樣的,這樣實(shí)驗(yàn)更加方便,供讀者自己思考和練習(xí)的內(nèi)容也更系統(tǒng)和豐富,同時更有利于讀者理解基礎(chǔ)部分所學(xué)知識。習(xí)題部分進(jìn)一步系統(tǒng)化,豐富了題型和內(nèi)容。數(shù)據(jù)庫應(yīng)用開發(fā)實(shí)訓(xùn)介紹目前流行的PHP、Spring Boot、Python、Android Studio、Qt、C#和Visual C++等平臺操作MySQL數(shù)據(jù)庫的實(shí)例。每一個實(shí)訓(xùn)既可獨(dú)立構(gòu)成一個小的應(yīng)用系統(tǒng),包含操作數(shù)據(jù)庫的基本方法,同時又可把幾個實(shí)訓(xùn)合為一個綜合大系統(tǒng)。本書融基礎(chǔ)和應(yīng)用于一體,系統(tǒng)性、應(yīng)用性均比較完善。由于本書的內(nèi)容體系具有自己的特色,并且從方便教和學(xué)兩個角度組織內(nèi)容、調(diào)試實(shí)例和安排先后順序,所以用本書教和學(xué)均比較方便,讀者可根據(jù)自己的實(shí)際需要比較和選擇本書各部分內(nèi)容。本書免費(fèi)提供配套的教學(xué)視頻(建議在Wi-Fi環(huán)境下掃碼觀看)、教學(xué)課件和習(xí)題參考答案。免費(fèi)提供7個實(shí)訓(xùn)平臺上可運(yùn)行的源程序文件。同時免費(fèi)提供實(shí)訓(xùn)網(wǎng)絡(luò)文檔和配套的源程序文件,需要的讀者請到華信教育資源網(wǎng)(www.hxedu.com.cn)免費(fèi)下載。本書可作為大學(xué)本科、高職高專院校有關(guān)課程教材,也可供廣大數(shù)據(jù)庫應(yīng)用開發(fā)人員使用或參考。
鄭阿奇,副教授,曾任教于南京師范大學(xué)。先后主編出版計算機(jī)教材和圖書超過100本,受到市場廣泛好評。出版的教材曾獲得高等教育國家“十一五”規(guī)劃教材、高等職業(yè)教育“十二五”國家規(guī)劃教材、高等職業(yè)教育“十三五”國家規(guī)劃教材、江蘇省高等職業(yè)教育“十四五”規(guī)劃教材、江蘇省教學(xué)成果二等獎、高等職業(yè)教育優(yōu)秀教材一等獎等榮譽(yù)。
第一部分 MySQL基礎(chǔ)
第1章 數(shù)據(jù)庫基礎(chǔ) 1
1.1 數(shù)據(jù)庫基本概念 1
1.1.1 數(shù)據(jù)庫及其系統(tǒng) 1
1.1.2 數(shù)據(jù)模型 2
1.1.3 關(guān)系數(shù)據(jù)庫 3
1.2 數(shù)據(jù)庫設(shè)計 4
1.2.1 概念模型 4
1.2.2 邏輯模型 5
1.2.3 物理模型 6
1.3 MySQL的安裝、配置和運(yùn)行 6
1.3.1 MySQL的安裝和配置 7
1.3.2 MySQL數(shù)據(jù)庫試運(yùn)行 7
1.4 常用MySQL界面工具 9
1.4.1 界面工具簡介 9
1.4.2 圖形化界面工具 10
第2章 數(shù)據(jù)類型 13
2.1 數(shù)值型 13
2.1.1 整數(shù)類型 13
2.1.2 實(shí)數(shù)類型 13
2.1.3 位類型 14
2.2 字符串型和二進(jìn)制串型 14
2.2.1 字符串型 14
2.2.2 二進(jìn)制串型 17
2.3 日期時間型 18
2.4 枚舉型、集合型、鍵值型和空間型 19
2.4.1 枚舉型和集合型 19
2.4.2 鍵值(JSON)型 21
2.4.3 空間型 21
第3章 數(shù)據(jù)庫和表 23
3.1 數(shù)據(jù)庫 23
3.1.1 創(chuàng)建數(shù)據(jù)庫 23
3.1.2 修改數(shù)據(jù)庫 24
3.1.3 刪除數(shù)據(jù)庫 24
3.1.4 打開和關(guān)閉數(shù)據(jù)庫 25
3.2 表 25
3.2.1 創(chuàng)建表 25
3.2.2 修改表 28
3.2.3 表的刪除和更名 30
3.3 表記錄的操作 31
3.3.1 插入記錄 31
3.3.2 修改記錄 33
3.3.3 刪除記錄 34
3.4 表操作綜合應(yīng)用 35
3.4.1 準(zhǔn)備系統(tǒng)查詢需要的表 35
3.4.2 非基本數(shù)據(jù)類型表的操作 36
3.5 表選項(xiàng) 38
3.5.1 存儲引擎 38
3.5.2 表空間 42
3.5.3 表記錄分區(qū) 45
3.5.4 表記錄行格式 52
第4章 查詢和視圖 53
4.1 關(guān)系運(yùn)算基礎(chǔ) 53
4.1.1 選擇(Selection)運(yùn)算 54
4.1.2 投影(Projection)運(yùn)算 54
4.1.3 連接(Join)運(yùn)算 55
4.2 數(shù)據(jù)庫表查詢 56
4.2.1 選擇輸出項(xiàng) 56
4.2.2 限制輸出行 60
4.2.3 指定查詢數(shù)據(jù)源 61
4.2.4 查詢條件 64
4.2.5 查詢分組 72
4.2.6 分組后過濾 73
4.2.7 輸出排序 74
4.2.8 聯(lián)合查詢 76
4.2.9 輸出到變量或文件 76
4.2.10 非基本數(shù)據(jù)類型查詢 77
4.2.11 分區(qū)查詢 80
4.3 視圖 82
4.3.1 創(chuàng)建視圖 82
4.3.2 查詢視圖 83
4.3.3 更新視圖 83
4.3.4 刪除視圖 85
第5章 索引與數(shù)據(jù)完整性 86
5.1 索引 86
5.1.1 索引的分類 86
5.1.2 創(chuàng)建和刪除索引 87
5.1.3 分析和使用索引 89
5.1.4 評估查詢 91
5.2 數(shù)據(jù)完整性 92
5.2.1 實(shí)體完整性約束 92
5.2.2 參照完整性約束 93
5.2.3 域完整性約束 94
第6章 SQL擴(kuò)展語言和系統(tǒng)函數(shù) 97
6.1 SQL簡介 97
6.2 常量和變量 97
6.2.1 常量 97
6.2.2 變量 100
6.3 運(yùn)算符與表達(dá)式 102
6.3.1 算術(shù)運(yùn)算符 102
6.3.2 比較運(yùn)算符 103
6.3.3 邏輯運(yùn)算符 105
6.3.4 位運(yùn)算符 106
6.3.5 運(yùn)算符優(yōu)先級 107
6.3.6 表達(dá)式 107
6.4 系統(tǒng)內(nèi)置函數(shù) 108
6.4.1 數(shù)學(xué)函數(shù) 108
6.4.2 聚合函數(shù) 111
6.4.3 字符串函數(shù) 111
6.4.4 日期時間函數(shù) 114
6.4.5 加密函數(shù) 116
6.4.6 控制流函數(shù) 117
6.4.7 格式化函數(shù) 118
6.4.8 類型轉(zhuǎn)換函數(shù) 119
6.4.9 系統(tǒng)信息函數(shù) 119
第7章 過程式數(shù)據(jù)庫對象 122
7.1 存儲過程 122
7.1.1 存儲過程簡介 122
7.1.2 存儲過程體 124
7.1.3 錯誤自動處理 129
7.2 存儲函數(shù) 131
7.3 游標(biāo) 132
7.4 觸發(fā)器 134
7.5 事件 137
7.5.1 創(chuàng)建事件 137
7.5.2 修改和刪除事件 140
第8章 數(shù)據(jù)庫備份與恢復(fù) 141
8.1 SQL語句導(dǎo)出或?qū)霐?shù)據(jù) 141
8.1.1 表記錄導(dǎo)出 141
8.1.2 導(dǎo)入文本數(shù)據(jù) 142
8.2 數(shù)據(jù)庫備份與恢復(fù) 143
8.2.1 Windows命令行窗口備份和
恢復(fù) 143
8.2.2 使用日志文件備份和恢復(fù) 145
8.3 直接復(fù)制文件 146
第9章 用戶管理和權(quán)限控制 147
9.1 用戶管理 147
9.1.1 添加、刪除用戶 147
9.1.2 修改用戶名、密碼 148
9.2 權(quán)限控制 148
9.2.1 授予權(quán)限 148
9.2.2 權(quán)限轉(zhuǎn)移和限制 152
9.2.3 權(quán)限回收 152
第10章 事務(wù)管理和多用戶操作 154
10.1 事務(wù) 154
10.1.1 事務(wù)的概念 154
10.1.2 ACID屬性 154
10.1.3 事務(wù)處理 155
10.1.4 事務(wù)應(yīng)用實(shí)例 156
10.1.5 事務(wù)隔離級 157
10.2 多用戶 159
10.2.1 鎖定的級別 159
10.2.2 鎖定與解鎖 159
10.2.3 死鎖 164
10.2.4 并發(fā)訪問的問題 164
第二部分 習(xí)題
第1章 數(shù)據(jù)庫基礎(chǔ) 165
第2章 數(shù)據(jù)類型 166
第3章 數(shù)據(jù)庫和表 167
第4章 查詢和視圖 168
第5章 索引與數(shù)據(jù)完整性 170
第6章 SQL擴(kuò)展語言和系統(tǒng)函數(shù) 171
第7章 過程式數(shù)據(jù)庫對象 172
第8章 數(shù)據(jù)庫備份與恢復(fù) 174
第9章 用戶管理和權(quán)限控制 174
第10章 事務(wù)管理和多用戶操作 175
第三部分 實(shí)驗(yàn)
實(shí)驗(yàn)1 MySQL構(gòu)建 177
實(shí)驗(yàn)1.1 MySQL實(shí)例構(gòu)建 177
實(shí)驗(yàn)1.2 MySQL多實(shí)例 177
實(shí)驗(yàn)2 數(shù)據(jù)類型 177
實(shí)驗(yàn)2.1 基本數(shù)據(jù)類型 177
實(shí)驗(yàn)2.2 其他數(shù)據(jù)類型 179
實(shí)驗(yàn)3 創(chuàng)建數(shù)據(jù)庫和表 180
實(shí)驗(yàn)3.1 創(chuàng)建數(shù)據(jù)庫 180
實(shí)驗(yàn)3.2 創(chuàng)建和修改表結(jié)構(gòu) 180
實(shí)驗(yàn)3.3 表記錄操作 181
實(shí)驗(yàn)3.4 表記錄分區(qū)查詢 181
實(shí)驗(yàn)3.5 表空間和表分區(qū) 182
實(shí)驗(yàn)4 表記錄查詢和視圖 182
實(shí)驗(yàn)4.1 表記錄查詢 182
實(shí)驗(yàn)4.2 表視圖 182
實(shí)驗(yàn)5 索引和數(shù)據(jù)完整性 182
實(shí)驗(yàn)6 SQL擴(kuò)展語言和系統(tǒng)函數(shù) 183
實(shí)驗(yàn)7 過程式數(shù)據(jù)庫對象 183
實(shí)驗(yàn)7.1 存儲過程 183
實(shí)驗(yàn)7.2 存儲函數(shù) 184
實(shí)驗(yàn)7.3 游標(biāo) 184
實(shí)驗(yàn)7.4 觸發(fā)器 184
實(shí)驗(yàn)7.5 事件 184
實(shí)驗(yàn)8 數(shù)據(jù)庫備份與恢復(fù) 184
實(shí)驗(yàn)8.1 SQL語句導(dǎo)出或?qū)霐?shù)據(jù) 184
實(shí)驗(yàn)8.2 數(shù)據(jù)庫備份和恢復(fù) 184
實(shí)驗(yàn)9 用戶管理和權(quán)限控制 185
實(shí)驗(yàn)10 事務(wù)管理和多用戶操作 185
第四部分 數(shù)據(jù)庫綜合實(shí)訓(xùn)
P0.1 創(chuàng)建數(shù)據(jù)庫及其對象 186
P0.1.1 創(chuàng)建數(shù)據(jù)庫 186
P0.1.2 創(chuàng)建表 186
P0.1.3 創(chuàng)建表間記錄完整性 188
P0.1.4 創(chuàng)建觸發(fā)器 188
P0.1.5 創(chuàng)建和執(zhí)行存儲過程 189
P0.2 測試數(shù)據(jù)庫對象關(guān)系的正確性 191
P0.2.1 插入學(xué)生表記錄 191
P0.2.2 插入課程表記錄 191
P0.2.3 插入成績表記錄 191
P0.2.4 觸發(fā)器功能測試 192
P0.2.5 表間記錄完整性測試 192
P0.2.6 存儲過程的功能測試 193
P0.3 功能和界面 193
P0.3.1 系統(tǒng)主頁 193
P0.3.2 “學(xué)生管理”功能界面 193
P0.3.3 “課程管理”功能界面 194
P0.3.4 “成績管理”功能界面 195
第五部分 數(shù)據(jù)庫應(yīng)用開發(fā)實(shí)訓(xùn)
實(shí)訓(xùn)1 PHP/MySQL學(xué)生成績管理系統(tǒng) 196
P1.1 PHP開發(fā)平臺的搭建 196
P1.1.1 創(chuàng)建PHP環(huán)境 196
P1.1.2 Eclipse的安裝與配置 196
P1.2 PHP開發(fā)入門 196
P1.2.1 PHP項(xiàng)目的建立 196
P1.2.2 PHP項(xiàng)目的運(yùn)行 198
P1.2.3 PHP連接MySQL 199
P1.3 系統(tǒng)主頁設(shè)計 200
P1.3.1 主界面 200
P1.3.2 功能導(dǎo)航 201
P1.4 學(xué)生管理 202
P1.4.1 界面設(shè)計 202
P1.4.2 功能實(shí)現(xiàn) 205
P1.5 成績管理 207
P1.5.1 界面設(shè)計 207
P1.5.2 功能實(shí)現(xiàn) 210
P1.6 課程管理 210
實(shí)訓(xùn)2 Spring Boot/MySQL學(xué)生成績管理
系統(tǒng) 213
P2.1 Spring Boot開發(fā)環(huán)境配置 213
P2.1.1 安裝JDK 213
P2.1.2 安裝Maven 213
P2.1.3 安裝IDEA 214
P2.2 系統(tǒng)架構(gòu)及分層設(shè)計 214
P2.2.1 系統(tǒng)架構(gòu) 214
P2.2.2 分層設(shè)計 214
P2.3 Spring Boot程序開發(fā) 215
P2.3.1 開發(fā)前的準(zhǔn)備 215
P2.3.2 持久層開發(fā) 218
P2.3.3 業(yè)務(wù)層開發(fā) 221
P2.3.4 表示層開發(fā) 225
P2.3.5 運(yùn)行測試 233
實(shí)訓(xùn)3 Python/MySQL學(xué)生成績管理系統(tǒng) 235
P3.1 Python環(huán)境安裝 235
P3.1.1 安裝Python環(huán)境 235
P3.1.2 安裝MySQL驅(qū)動庫 235
P3.2 Python程序開發(fā) 236
P3.2.1 開發(fā)前的準(zhǔn)備工作 236
P3.2.2實(shí)現(xiàn)思路 237
P3.2.3 功能代碼 237
P3.2.4 運(yùn)行效果 241
實(shí)訓(xùn)4 Android Studio/MySQL學(xué)生成績
管理系統(tǒng) 242
P4.1 環(huán)境搭建 242
P4.1.1 基本原理 242
P4.1.2 安裝開發(fā)工具 243
P4.1.3 準(zhǔn)備MySQL數(shù)據(jù)庫 243
P4.2 服務(wù)器端Servlet程序開發(fā) 243
P4.2.1 創(chuàng)建動態(tài)Web項(xiàng)目 243
P4.2.2 編寫Servlet程序 245
P4.2.3 打包部署 250
P4.3 移動端Android程序開發(fā) 251
P4.3.1 創(chuàng)建Android工程 251
P4.3.2 設(shè)計界面 253
P4.3.3 編寫移動端代碼 253
P4.3.4 運(yùn)行測試 258
實(shí)訓(xùn)5 Qt/MySQL學(xué)生成績管理系統(tǒng) 262
P5.1 Qt的安裝 262
P5.2 編譯MySQL驅(qū)動 262
P5.3 Qt程序開發(fā) 265
P5.3.1 開發(fā)前的準(zhǔn)備 265
P5.3.2 界面設(shè)計 269
P5.3.3 函數(shù)、槽、變量聲明 271
P5.3.4 功能實(shí)現(xiàn) 272
P5.3.5 運(yùn)行效果 277
實(shí)訓(xùn)6 C#/WebService/MySQL學(xué)生成績
管理系統(tǒng) 278
P6.1 C#窗體應(yīng)用程序開發(fā) 278
P6.1.1 創(chuàng)建項(xiàng)目 278
P6.1.2 安裝MySQL的.NET驅(qū)動 278
P6.1.3 準(zhǔn)備MySQL數(shù)據(jù)庫 280
P6.1.4 界面設(shè)計 280
P6.1.5 功能實(shí)現(xiàn) 282
P6.1.6 運(yùn)行效果 286
P6.2 C#程序使用WebService 287
P6.2.1 客戶端引用WebService 287
P6.2.2 程序調(diào)用WebService 289
實(shí)訓(xùn)7 Visual C++(VS)/WebService/
MySQL學(xué)生成績管理系統(tǒng) 291
P7.1 配置ODBC數(shù)據(jù)源 291
P7.1.1 準(zhǔn)備MySQL數(shù)據(jù)庫 291
P7.1.2 創(chuàng)建數(shù)據(jù)源 291
P7.2 MFC程序開發(fā) 293
P7.2.1 創(chuàng)建項(xiàng)目 293
P7.2.2 界面設(shè)計 294
P7.2.3 成績查詢功能(基于ODBC
數(shù)據(jù)源) 297
P7.2.4 錄入、刪除功能(基于MySQL
API) 302
P7.3 Visual C++程序使用WebService 306
P7.3.1 編譯SOAP客戶端 306
P7.3.2 程序調(diào)用WebService 307
第六部分 附錄
附錄A 學(xué)生成績數(shù)據(jù)庫(XSCJ)表結(jié)構(gòu)樣
本記錄 309