MySQL 實用教程, 4/e

鄭阿奇

  • 出版商: 電子工業
  • 出版日期: 2024-05-01
  • 定價: $360
  • 售價: 8.5$306
  • 語言: 簡體中文
  • 頁數: 324
  • ISBN: 7121467283
  • ISBN-13: 9787121467288
  • 相關分類: MySQLSQL
  • 下單後立即進貨 (約4週~6週)

買這商品的人也買了...

相關主題

商品描述

本書以當前流行的MySQL 5.7作為平臺,內容分為MySQL基礎、習題、實驗、數據庫綜合實訓、數據庫應用開發實訓和附錄。本版對MySQL基礎部分進行了系統優化,使內容更加簡明扼要,對原有實例進行了修改,從而為實驗數據庫與教程的一體化創造了條件。全書MySQL命令分層縮進,基礎部分數據庫表列名採用漢字,綜合實訓數據庫表列名則採用英文字符,數據庫及其對象、函數名等採用小寫字母,系統關鍵字採用大寫字母,語句格式清晰易懂,運行結果直觀。數據庫綜合實訓通過一個規模不大的數據庫綜合實例,將數據庫主要對象及其相互配合包含其中,同時又為後面的數據庫應用開發實訓進行了精心的數據準備。實驗部分數據庫與基礎部分的是一樣的,這樣實驗更加方便,供讀者自己思考和練習的內容也更系統和豐富,同時更有利於讀者理解基礎部分所學知識。習題部分進一步系統化,豐富了題型和內容。數據庫應用開發實訓介紹目前流行的PHP、Spring Boot、Python、Android Studio、Qt、C#和Visual C++等平臺操作MySQL數據庫的實例。每一個實訓既可獨立構成一個小的應用系統,包含操作數據庫的基本方法,同時又可把幾個實訓合為一個綜合大系統。本書融基礎和應用於一體,系統性、應用性均比較完善。由於本書的內容體系具有自己的特色,並且從方便教和學兩個角度組織內容、調試實例和安排先後順序,所以用本書教和學均比較方便,讀者可根據自己的實際需要比較和選擇本書各部分內容。本書免費提供配套的教學視頻(建議在Wi-Fi環境下掃碼觀看)、教學課件和習題參考答案。免費提供7個實訓平臺上可運行的源程序文件。同時免費提供實訓網絡文檔和配套的源程序文件,需要的讀者請到華信教育資源網(www.hxedu.com.cn)免費下載。本書可作為大學本科、高職高專院校有關課程教材,也可供廣大數據庫應用開發人員使用或參考。

目錄大綱

第一部分 MySQL基礎

第1章 數據庫基礎 1
1.1 數據庫基本概念 1
1.1.1 數據庫及其系統 1
1.1.2 數據模型 2
1.1.3 關系數據庫 3
1.2 數據庫設計 4
1.2.1 概念模型 4
1.2.2 邏輯模型 5
1.2.3 物理模型 6
1.3 MySQL的安裝、配置和運行 6
1.3.1 MySQL的安裝和配置 7
1.3.2 MySQL數據庫試運行 7
1.4 常用MySQL界面工具 9
1.4.1 界面工具簡介 9
1.4.2 圖形化界面工具 10
第2章 數據類型 13
2.1 數值型 13
2.1.1 整數類型 13
2.1.2 實數類型 13
2.1.3 位類型 14
2.2 字符串型和二進制串型 14
2.2.1 字符串型 14
2.2.2 二進制串型 17
2.3 日期時間型 18
2.4 枚舉型、集合型、鍵值型和空間型 19
2.4.1 枚舉型和集合型 19
2.4.2 鍵值(JSON)型 21
2.4.3 空間型 21
第3章 數據庫和表 23
3.1 數據庫 23
3.1.1 創建數據庫 23
3.1.2 修改數據庫 24
3.1.3 刪除數據庫 24
3.1.4 打開和關閉數據庫 25
3.2 表 25
3.2.1 創建表 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 表操作綜合應用 35
3.4.1 準備系統查詢需要的表 35
3.4.2 非基本數據類型表的操作 36
3.5 表選項 38
3.5.1 存儲引擎 38
3.5.2 表空間 42
3.5.3 表記錄分區 45
3.5.4 表記錄行格式 52
第4章 查詢和視圖 53
4.1 關系運算基礎 53
4.1.1 選擇(Selection)運算 54
4.1.2 投影(Projection)運算 54
4.1.3 連接(Join)運算 55
4.2 數據庫表查詢 56
4.2.1 選擇輸出項 56
4.2.2 限制輸出行 60
4.2.3 指定查詢數據源 61
4.2.4 查詢條件 64
4.2.5 查詢分組 72
4.2.6 分組後過濾 73
4.2.7 輸出排序 74
4.2.8 聯合查詢 76
4.2.9 輸出到變量或文件 76
4.2.10 非基本數據類型查詢 77
4.2.11 分區查詢 80
4.3 視圖 82
4.3.1 創建視圖 82
4.3.2 查詢視圖 83
4.3.3 更新視圖 83
4.3.4 刪除視圖 85
第5章 索引與數據完整性 86
5.1 索引 86
5.1.1 索引的分類 86
5.1.2 創建和刪除索引 87
5.1.3 分析和使用索引 89
5.1.4 評估查詢 91
5.2 數據完整性 92
5.2.1 實體完整性約束 92
5.2.2 參照完整性約束 93
5.2.3 域完整性約束 94
第6章 SQL擴展語言和系統函數 97
6.1 SQL簡介 97
6.2 常量和變量 97
6.2.1 常量 97
6.2.2 變量 100
6.3 運算符與表達式 102
6.3.1 算術運算符 102
6.3.2 比較運算符 103
6.3.3 邏輯運算符 105
6.3.4 位運算符 106
6.3.5 運算符優先級 107
6.3.6 表達式 107
6.4 系統內置函數 108
6.4.1 數學函數 108
6.4.2 聚合函數 111
6.4.3 字符串函數 111
6.4.4 日期時間函數 114
6.4.5 加密函數 116
6.4.6 控制流函數 117
6.4.7 格式化函數 118
6.4.8 類型轉換函數 119
6.4.9 系統信息函數 119
第7章 過程式數據庫對象 122
7.1 存儲過程 122
7.1.1 存儲過程簡介 122
7.1.2 存儲過程體 124
7.1.3 錯誤自動處理 129
7.2 存儲函數 131
7.3 游標 132
7.4 觸發器 134
7.5 事件 137
7.5.1 創建事件 137
7.5.2 修改和刪除事件 140
第8章 數據庫備份與恢復 141
8.1 SQL語句導出或導入數據 141
8.1.1 表記錄導出 141
8.1.2 導入文本數據 142
8.2 數據庫備份與恢復 143
8.2.1 Windows命令行窗口備份和
恢復 143
8.2.2 使用日誌文件備份和恢復 145
8.3 直接復制文件 146
第9章 用戶管理和權限控制 147
9.1 用戶管理 147
9.1.1 添加、刪除用戶 147
9.1.2 修改用戶名、密碼 148
9.2 權限控制 148
9.2.1 授予權限 148
9.2.2 權限轉移和限制 152
9.2.3 權限回收 152
第10章 事務管理和多用戶操作 154
10.1 事務 154
10.1.1 事務的概念 154
10.1.2 ACID屬性 154
10.1.3 事務處理 155
10.1.4 事務應用實例 156
10.1.5 事務隔離級 157
10.2 多用戶 159
10.2.1 鎖定的級別 159
10.2.2 鎖定與解鎖 159
10.2.3 死鎖 164
10.2.4 並發訪問的問題 164

第二部分 習題

第1章 數據庫基礎 165
第2章 數據類型 166
第3章 數據庫和表 167
第4章 查詢和視圖 168
第5章 索引與數據完整性 170
第6章 SQL擴展語言和系統函數 171
第7章 過程式數據庫對象 172
第8章 數據庫備份與恢復 174
第9章 用戶管理和權限控制 174
第10章 事務管理和多用戶操作 175

第三部分 實驗

實驗1 MySQL構建 177
實驗1.1 MySQL實例構建 177
實驗1.2 MySQL多實例 177
實驗2 數據類型 177
實驗2.1 基本數據類型 177
實驗2.2 其他數據類型 179
實驗3 創建數據庫和表 180
實驗3.1 創建數據庫 180
實驗3.2 創建和修改表結構 180
實驗3.3 表記錄操作 181
實驗3.4 表記錄分區查詢 181
實驗3.5 表空間和表分區 182
實驗4 表記錄查詢和視圖 182
實驗4.1 表記錄查詢 182
實驗4.2 表視圖 182
實驗5 索引和數據完整性 182
實驗6 SQL擴展語言和系統函數 183
實驗7 過程式數據庫對象 183
實驗7.1 存儲過程 183
實驗7.2 存儲函數 184
實驗7.3 游標 184
實驗7.4 觸發器 184
實驗7.5 事件 184
實驗8 數據庫備份與恢復 184
實驗8.1 SQL語句導出或導入數據 184
實驗8.2 數據庫備份和恢復 184
實驗9 用戶管理和權限控制 185
實驗10 事務管理和多用戶操作 185

第四部分 數據庫綜合實訓

P0.1 創建數據庫及其對象 186
P0.1.1 創建數據庫 186
P0.1.2 創建表 186
P0.1.3 創建表間記錄完整性 188
P0.1.4 創建觸發器 188
P0.1.5 創建和執行存儲過程 189
P0.2 測試數據庫對象關系的正確性 191
P0.2.1 插入學生表記錄 191
P0.2.2 插入課程表記錄 191
P0.2.3 插入成績表記錄 191
P0.2.4 觸發器功能測試 192
P0.2.5 表間記錄完整性測試 192
P0.2.6 存儲過程的功能測試 193
P0.3 功能和界面 193
P0.3.1 系統主頁 193
P0.3.2 “學生管理”功能界面 193
P0.3.3 “課程管理”功能界面 194
P0.3.4 “成績管理”功能界面 195

第五部分 數據庫應用開發實訓

實訓1 PHP/MySQL學生成績管理系統 196
P1.1 PHP開發平臺的搭建 196
P1.1.1 創建PHP環境 196
P1.1.2 Eclipse的安裝與配置 196
P1.2 PHP開發入門 196
P1.2.1 PHP項目的建立 196
P1.2.2 PHP項目的運行 198
P1.2.3 PHP連接MySQL 199
P1.3 系統主頁設計 200
P1.3.1 主界面 200
P1.3.2 功能導航 201
P1.4 學生管理 202
P1.4.1 界面設計 202
P1.4.2 功能實現 205
P1.5 成績管理 207
P1.5.1 界面設計 207
P1.5.2 功能實現 210
P1.6 課程管理 210
實訓2 Spring Boot/MySQL學生成績管理
系統 213
P2.1 Spring Boot開發環境配置 213
P2.1.1 安裝JDK 213
P2.1.2 安裝Maven 213
P2.1.3 安裝IDEA 214
P2.2 系統架構及分層設計 214
P2.2.1 系統架構 214
P2.2.2 分層設計 214
P2.3 Spring Boot程序開發 215
P2.3.1 開發前的準備 215
P2.3.2 持久層開發 218
P2.3.3 業務層開發 221
P2.3.4 表示層開發 225
P2.3.5 運行測試 233
實訓3 Python/MySQL學生成績管理系統 235
P3.1 Python環境安裝 235
P3.1.1 安裝Python環境 235
P3.1.2 安裝MySQL驅動庫 235
P3.2 Python程序開發 236
P3.2.1 開發前的準備工作 236
P3.2.2實現思路 237
P3.2.3 功能代碼 237
P3.2.4 運行效果 241
實訓4 Android Studio/MySQL學生成績
管理系統 242
P4.1 環境搭建 242
P4.1.1 基本原理 242
P4.1.2 安裝開發工具 243
P4.1.3 準備MySQL數據庫 243
P4.2 服務器端Servlet程序開發 243
P4.2.1 創建動態Web項目 243
P4.2.2 編寫Servlet程序 245
P4.2.3 打包部署 250
P4.3 移動端Android程序開發 251
P4.3.1 創建Android工程 251
P4.3.2 設計界面 253
P4.3.3 編寫移動端代碼 253
P4.3.4 運行測試 258
實訓5 Qt/MySQL學生成績管理系統 262
P5.1 Qt的安裝 262
P5.2 編譯MySQL驅動 262
P5.3 Qt程序開發 265
P5.3.1 開發前的準備 265
P5.3.2 界面設計 269
P5.3.3 函數、槽、變量聲明 271
P5.3.4 功能實現 272
P5.3.5 運行效果 277
實訓6 C#/WebService/MySQL學生成績
管理系統 278
P6.1 C#窗體應用程序開發 278
P6.1.1 創建項目 278
P6.1.2 安裝MySQL的.NET驅動 278
P6.1.3 準備MySQL數據庫 280
P6.1.4 界面設計 280
P6.1.5 功能實現 282
P6.1.6 運行效果 286
P6.2 C#程序使用WebService 287
P6.2.1 客戶端引用WebService 287
P6.2.2 程序調用WebService 289
實訓7 Visual C++(VS)/WebService/
MySQL學生成績管理系統 291
P7.1 配置ODBC數據源 291
P7.1.1 準備MySQL數據庫 291
P7.1.2 創建數據源 291
P7.2 MFC程序開發 293
P7.2.1 創建項目 293
P7.2.2 界面設計 294
P7.2.3 成績查詢功能(基於ODBC
數據源) 297
P7.2.4 錄入、刪除功能(基於MySQL
API) 302
P7.3 Visual C++程序使用WebService 306
P7.3.1 編譯SOAP客戶端 306
P7.3.2 程序調用WebService 307

第六部分 附錄

附錄A 學生成績數據庫(XSCJ)表結構樣
本記錄 309