MySQL數據庫任務驅動式教程(第4版)(微課版)(AIGC拓展版)

石坤泉 湯雙霞

  • 出版商: 人民郵電
  • 出版日期: 2025-08-01
  • 售價: $419
  • 語言: 簡體中文
  • ISBN: 7115671370
  • ISBN-13: 9787115671370
  • 相關分類: MySQL
  • 下單後立即進貨 (約4週~6週)

  • MySQL數據庫任務驅動式教程(第4版)(微課版)(AIGC拓展版)-preview-1
  • MySQL數據庫任務驅動式教程(第4版)(微課版)(AIGC拓展版)-preview-2
MySQL數據庫任務驅動式教程(第4版)(微課版)(AIGC拓展版)-preview-1

商品描述

本書對照《全國計算機等級考試二級MySQL數據庫程序設計考試大綱(2023年版)》,結合Oracle認證考試(SQL認證)以及1+X職業技能(Web前端開發)等級考試內容編寫而成。本書采用MySQL 8.0,介紹MySQL 8.0的新特性、新功能,主要講解數據庫設計的基本原理和基本方法、MySQL基礎及其應用。全書共11個項目(26個任務),包括認識數據庫,MySQL實訓環境配置,MySQL字符集與數據類型,創建與管理數據庫、表和索引,數據查詢、數據處理與視圖,創建和使用程序,數據庫安全與性能優化,PHP基礎,訪問MySQL數據庫,phpMyAdmin操作數據庫以及MySQL集群架構搭建實例。

本書可以作為高職高專院校數據庫相關課程的教材,也可以作為全國計算機等級考試二級MySQL數據庫程序設計考試、Oracle認證考試(SQL認證)以及1+X職業技能(Web前端開發)等級考試的參考書,還可以作為數據庫開發人員的實用參考書或者職業培訓教材。

作者簡介

石坤泉,男,教授,研究方向:數據庫技術、信息安全和圖像處理,廣東省南粵優秀教師,廣東省高等學校公共計算機課教指委委員,廣東省計算機學會競賽委員會委員,全國高等院校計算機基礎教育研究會高職計算機與電子商務專委會副主任委員,廣東軒轅網絡科技有限公司數據庫技術專家、系統集成顧問,全國信息技術應用水平大賽優秀指導老師。主持和參與省、市科研項目十余項,發表論文30多篇(北大中文核心、CSSCI以及SCI/EI檢索等十余篇);獲實用新型專利和軟件著作權授權十余項;主編教材20余部,國家職業教育規劃教材3部,教材累計發行40多萬冊,專著2部。

目錄大綱

目錄 CONTENTS

 

 

 

 

基礎篇

項目一 認識數據庫

任務1

認識數據庫 2

任務背景 2

任務目標 2

任務要求 3

任務分解 3

1.1 了解數據庫的基本應用 3

1.2 了解數據庫的幾個概念 4

1.3 認識關系數據庫 4

1.4 關系數據庫設計 6

1.4.1 認識實體、屬性、聯系 6

1.4.2 將E-R圖轉換為關系模式 7

1.4.3 關系模式的規範化 8

1.5 數據庫應用系統 10

1.5.1 認識C/S模式數據庫應用

系統 10

1.5.2 認識B/S模式數據庫應用

系統 11

1.6 認識一個真實的關系數據庫 12

【項目實踐】 13

【習題】 14

任務2

認識MySQL 15

任務背景 15

任務目標 15

任務要求 15

任務分解 16

2.1 認識SQL 16

2.1.1 SQL的特點 16

2.1.2 SQL的類型 16

2.2 MySQL概述 17

2.3 認識MySQL 8.0 17

2.4 MySQL的管理工具 18

2.5 初識MySQL數據類型 20

2.6 初識MySQL的基本語句 20

【習題】 20

 

項目二 MySQL實訓環境

配置

任務3

Windows操作系統中

MySQL的安裝與配置 22

任務背景 22

任務目標 22

任務要求 23

任務分解 23

3.1 MySQL服務器的安裝與

配置 23

3.1.1 MySQL服務器的安裝 23

3.1.2 MySQL服務器的配置 26

3.2 更改MySQL的配置 30

3.3 連接MySQL本地服務 32

3.3.1 服務的啟動和關閉 32

3.3.2 使用MySQL客戶端連接MySQL

服務器 32

3.3.3 使用DOS命令連接MySQL

服務器 33

3.4 遠程訪問MySQL服務器 33

【項目實踐】 35

【習題】 35

任務4

安裝與配置WampServer

3.3 36

任務背景 36

任務目標 36

任務要求 36

任務分解 36

4.1 認識WampServer 3.3 36

4.2 安裝WampServer 3.3 37

4.3 配置WampServer 3.3 38

4.3.1 設置用戶登錄密碼 38

4.3.2 PHP文件目錄 39

【項目實踐】 39

【習題】 39

 

項目三 MySQL字符集與數據類型

任務5

認識和設置MySQL

字符集 41

任務背景 41

任務目標 41

任務分解 42

5.1 認識字符集和校對原則 42

5.2 MySQL 8.0支持的字符集和

校對原則 42

5.3 確定字符集和校對原則 43

5.4 使用MySQL字符集時的

建議 45

【項目實踐】 45

【習題】 45

任務6

MySQL數據類型 46

任務背景 46

任務目標 46

任務要求 46

任務分解 47

6.1 整數類型 47

6.2 浮點數類型和定點數類型 47

6.3 CHAR類型和VARCHAR

類型 47

6.4 TEXT類型和BLOB類型 48

6.5 BINARY類型和VARBINARY

類型 49

6.6 日期和時間類型 49

6.7 ENUM類型和SET類型 49

6.8 如何選擇數據類型 50

6.9 數據類型的附加屬性 50

【項目實踐】 51

【習題】 51

 

項目四 創建與管理數據庫、表和索引

任務7

數據庫和表 52

任務背景 52

任務目標 52

任務要求 53

任務分解 53

7.1 創建與管理數據庫 53

7.1.1 創建數據庫 53

7.1.2 查看數據庫 53

7.1.3 修改數據庫 54

7.1.4 刪除數據庫 54

7.2 創建與管理表 54

7.2.1 創建表 54

7.2.2 查看表 58

7.2.3 修改表 59

7.2.4 復制表 59

7.2.5 刪除表 60

7.3 數據操作 60

7.3.1 插入數據 60

7.3.2 修改數據 63

7.3.3 刪除數據 63

7.4 JSON數據類型的使用方法 64

7.5 計算字段的使用方法 64

【項目實踐】 65

【習題】 67

任務8

創建和管理索引 69

任務背景 69

任務目標 69

任務要求 69

任務分解 70

8.1 認識索引 70

8.1.1 索引的分類 70

8.1.2 索引的設計原則 71

8.2 索引的創建 71

8.2.1 創建表時創建索引 71

8.2.2 用CREATE INDEX語句創建

索引 72

8.2.3 用ALTER TABLE語句創建

索引 73

8.3 索引的查看 74

8.4 索引的刪除 74

8.4.1 用DROP INDEX語句刪除

索引 74

8.4.2 用ALTER TABLE語句刪除

索引 75

【項目實踐】 75

【習題】 76

任務9

數據約束和參照完整性 77

任務背景 77

任務目標 77

任務要求 77

任務分解 78

9.1 PRIMARY KEY約束 78

9.1.1 理解PRIMARY KEY約束 78

9.1.2 設置主鍵的兩種方式 78

9.1.3 復合主鍵 78

9.1.4 修改表的主鍵 79

9.2 UNIQUE約束 79

9.2.1 理解UNIQUE約束 79

9.2.2 創建UNIQUE約束 79

9.2.3 修改UNIQUE約束 80

9.3 FOREIGN KEY約束 80

9.3.1 理解FOREIGN KEY約束 80

9.3.2 在創建表時創建外鍵 81

9.3.3 對已有的表添加外鍵 81

9.3.4 創建級聯更新、級聯刪除 81

9.3.5 查看外鍵和刪除外鍵 82

9.4 CHECK約束 82

9.4.1 理解CHECK約束 82

9.4.2 創建CHECK約束 82

【項目實踐】 83

【習題】 83

 

項目五 數據查詢、數據處理與視圖

任務10

數據庫的查詢 84

任務背景 84

任務目標 84

任務要求 85

任務分解 85

10.1 了解SELECT語法結構 85

10.2 認識基本子句 86

10.2.1 認識SELECT子句 86

10.2.2 認識FROM子句 87

10.2.3 認識WHERE子句 88

10.2.4 認識GROUP BY子句 91

10.2.5 認識ORDER BY子句 92

10.2.6 認識HAVING子句 93

10.2.7 認識LIMIT子句 94

10.3 使用聚合函數進行統計查詢 95

10.4 多表連接查詢 96

10.4.1 全連接 96

10.4.2 JOIN連接 97

10.5 嵌套查詢 99

10.5.1 嵌套在WHERE子句中 99

10.5.2 嵌套在SELECT子句中 100

10.5.3 嵌套在FROM子句中 101

10.5.4 IN子查詢 101

10.5.5 比較子查詢 103

10.5.6 EXISTS子查詢 103

10.6 聯合查詢 104

【項目實踐】 105

【習題】 106

任務11

MySQL運算符和函數 107

任務背景 107

任務目標 107

任務要求 107

任務分解 108

11.1 認識和使用運算符 108

11.1.1 算術運算符 108

11.1.2 比較運算符 109

11.1.3 邏輯運算符 114

11.1.4 位運算符 116

11.1.5 運算符的優先級 116

11.2 認識和使用函數 117

11.2.1 數學函數 117

11.2.2 聚合函數 120

11.2.3 日期和時間函數 122

11.2.4 控制流判斷函數 127

11.2.5 字符串函數 128

11.2.6 系統信息函數 130

11.2.7 加密函數 131

11.2.8 格式化函數 131

11.3 使用JSON函數 131

11.4 使用窗口函數 132

【項目實踐】 134

【習題】 134

任務12

創建和使用視圖 135

任務背景 135

任務目標 135

任務要求 135

任務分解 136

12.1 認識視圖 136

12.2 視圖的特性 136

12.3 創建視圖 136

12.3.1 來自一張基本表 137

12.3.2 來自多張基本表 137

12.3.3 來自視圖 137

12.4 查看視圖 138

12.4.1 查看已創建的視圖 138

12.4.2 查看視圖的結構 139

12.4.3 查看視圖的定義 139

12.5 使用視圖 140

12.5.1 使用視圖進行查詢 140

12.5.2 使用視圖進行計算 140

12.5.3 使用視圖操作基本表數據 140

12.6 修改視圖 141

12.7 刪除視圖 142

【項目實踐】 142

【習題】 142

高級篇

項目六 創建和使用程序

任務13

創建和使用存儲過程 145

任務背景 145

任務目標 145

任務要求 146

任務分解 146

13.1 認識存儲過程 146

13.2 創建基本的存儲過程 146

13.2.1 DELIMITER命令 146

13.2.2 創建基本存儲過程 147

13.2.3 查看存儲過程 149

13.3 執行存儲過程 149

13.4 創建帶變量的存儲過程 151

13.4.1 局部變量聲明與賦值 151

13.4.2 創建使用局部變量的存儲

過程 152

13.5 創建帶有流程控制語句的存儲

過程 153

13.5.1 使用IF…THEN…ELSE

語句 153

13.5.2 使用CASE語句 154

13.6 在存儲過程中調用其他存儲

過程 155

13.7 修改存儲過程 155

13.8 查看存儲過程的定義 156

13.9 刪除存儲過程 156

【項目實踐】 157

【習題】 157

任務14

創建和使用存儲函數 158

任務背景 158

任務目標 158

任務要求 158

任務分解 159

14.1 認識存儲函數 159

14.2 創建存儲函數 159

14.2.1 創建基本的存儲函數 159

14.2.2 創建帶變量的存儲函數 160

14.3 調用存儲函數 160

14.3.1 使用SELECT關鍵字調用存儲

函數 160

14.3.2 在存儲函數中調用另外一個存儲

函數或者存儲過程 161

14.4 查看存儲函數 161

14.5 修改存儲函數 162

14.6 刪除存儲函數 162

【項目實踐】 163

【習題】 163

任務15

創建和使用觸發器 164

任務背景 164

任務目標 164

任務要求 164

任務分解 165

15.1 認識觸發器 165

15.2 創建觸發器 165

15.2.1 激發它表數據更新 165

15.2.2 激發自表數據更新 167

15.2.3 通過觸發器調用存儲過程 168

15.3 查看觸發器 169

15.4 刪除觸發器 169

【項目實踐】 170

【習題】 170

任務16

創建和使用事件 171

任務背景 171

任務目標 171

任務要求 171

任務分解 172

16.1 認識事件 172

16.2 創建事件 172

16.2.1 創建某個時刻發生的事件 173

16.2.2 創建在指定區間周期性發生的

事件 174

16.2.3 在事件中調用存儲過程或存儲

函數 175

16.3 查看事件 175

16.4 修改事件 176

16.5 刪除事件 176

【項目實踐】 176

【習題】 176

 

項目七 數據庫安全與性能優化

任務17

用戶與權限 177

任務背景 177

任務目標 178

任務要求 178

任務分解 178

17.1 創建用戶賬戶 178

17.1.1 MySQL的密碼驗證插件 178

17.1.2 用CREATE USER語句創建

用戶 179

17.1.3 修改用戶密碼 180

17.1.4 重命名用戶 181

17.1.5 刪除用戶 181

17.2 授予用戶權限 181

17.2.1 關於MySQL的權限 182

17.2.2 用GRANT語句授權 182

17.3 用REVOKE語句收回

權限 184

17.4 權限轉移 185

17.5 權限限制 185

17.6 密碼管理策略 185

17.6.1 過期時間管理 185

17.6.2 MySQL用戶密碼重用策略

設置 186

17.7 角色管理 186

17.7.1 創建角色並授予用戶角色

權限 187

17.7.2 檢查角色權限 187

17.7.3 撤銷角色或角色權限 187

17.7.4 刪除角色 188

17.7.5 角色和用戶的實際應用 188

【項目實踐】 188

【習題】 189

任務18

數據庫備份與恢復 190

任務背景 190

任務目標 190

任務要求 190

任務分解 191

18.1 用SELECT…INTO OUTFILE

語句備份表數據 191

18.2 用LOAD DATA INFILE語句

恢復表數據 191

18.3 用mysqldump備份與

恢復 192

18.3.1 進入mysqldump 192

18.3.2 備份與恢復表 192

18.3.3 備份與恢復庫 193

18.3.4 將表結構和數據分別備份 194

18.3.5 備份與恢復其他方面 195

18.4 用mysqlimport恢復表

數據 195

18.5 用SOURCE恢復表和

數據庫 195

18.6 用日誌備份 196

【項目實踐】 197

【習題】 197

任務19

數據庫性能優化 198

任務背景 198

任務目標 198

任務要求 199

任務分解 199

19.1 優化MySQL服務器 199

19.1.1 通過修改my.ini文件進行性能

優化 199

19.1.2 通過MySQL控制臺進行性能

優化 199

19.2 優化表結構設計和數據

操作 201

19.2.1 添加中間表 201

19.2.2 增加冗余字段 201

19.2.3 合理設置表的數據類型和

屬性 202

19.2.4 優化插入記錄的速度 202

19.2.5 對表進行分析、檢查、優化和

修復 203

19.3 優化查詢 205

19.3.1 查看SELECT語句的執行

效果 205

19.3.2 使用索引優化查詢 207

19.3.3 優化子查詢 212

19.3.4 優化慢查詢 212

19.4 優化性能的其他方面 213

19.5 數據庫的架構優化 214

19.6 配置文件優化 214

19.7 存儲與數據格式優化 215

【項目實踐】 216

【習題】 216

任務20

事務與鎖 217

任務背景 217

任務目標 217

任務要求 217

任務分解 218

20.1 MySQL事務的四大特性

(ACID) 218

20.2 MySQL事務隔離級別與

一致性 218

20.2.1 事務的隔離級別 218

20.2.2 數據一致性 221

20.2.3 事務提交與回滾SQL

語句 222

20.3 MySQL中的鎖機制 223

20.3.1 3種鎖方式與4種鎖模式 223

20.3.2 死鎖產生的必要條件 224

【習題】 225

應用篇

項目八 PHP基礎

任務21

初識與應用PHP 228

任務背景 228

任務目標 228

任務要求 229

任務分解 229

21.1 PHP技術基礎 229

21.1.1 PHP標記風格 229

21.1.2 在HTML代碼中嵌入PHP

代碼 230

21.1.3 使用PHP輸出HTML

標簽 230

21.1.4 在PHP代碼中調用JavaScript

腳本 230

21.2 PHP的數據類型 231

21.2.1 整型 231

21.2.2 浮點型 231

21.2.3 布爾型 231

21.2.4 字符串 232

21.3 PHP數據處理 232

21.3.1 PHP對數組的處理 232

21.3.2 PHP對字符串的處理 235

21.3.3 用PHP處理日期和時間 236

21.3.4 PHP中對URL、HTTP的

處理 236

21.3.5 PHP中的數學運算 237

21.4 PHP連接MySQL

數據庫 238

21.4.1 PHP程序連接到MySQL數據庫

的原理 239

21.4.2 PHP連接到MySQL

函數 239

21.5 PHP操作MySQL

數據庫 239

21.5.1 一次執行一條SQL語句 239

21.5.2 一次執行多條語句 240

21.5.3 處理查詢結果 240

21.5.4 關閉創建的對象 241

21.6 PHP備份與還原MySQL

數據庫 241

21.6.1 MySQL數據庫與表的

備份 241

21.6.2 MySQL數據庫與表的

還原 242

21.7 應用實踐:基於文本的簡易

留言板 242

【習題】 245

 

項目九 訪問MySQL

數據庫

任務22

Java訪問MySQL

數據庫 246

任務背景 246

任務目標 246

任務要求 247

任務分解 247

22.1 Java連接MySQL

數據庫 247

22.1.1 下載並安裝JDBC驅動MySQL

Connector/J 247

22.1.2 java.sql中的類和接口 247

22.1.3 連接MySQL數據庫 248

22.2 Java操作MySQL

數據庫 248

22.2.1 創建Statement對象 248

22.2.2 插入、更新或者刪除數據 249

22.2.3 使用SELECT語句查詢

數據 249

22.3 Java備份MySQL

數據庫 249

22.4 Java還原MySQL

數據庫 250

【項目實踐】 250

【習題】 250

任務23

C#訪問MySQL

數據庫 251

任務背景 251

任務目標 251

任務要求 251

任務分解 251

23.1 C#連接MySQL數據庫 251

23.1.1 下載並安裝Connector/Net

驅動程序 252

23.1.2 使用Connector/Net驅動

程序 253

23.1.3 連接MySQL數據庫 253

23.2 C#操作MySQL數據庫 253

23.2.1 創建MySqlCommand

對象 253

23.2.2 關閉創建的對象 254

23.3 C#備份與還原MySQL

數據庫 254

23.3.1 C#備份MySQL數據庫 254

23.3.2 C#還原MySQL數據庫 254

【項目實踐】 255

【習題】 255

任務24

Python訪問MySQL

數據庫 256

任務背景 256

任務目標 256

任務要求 256

任務分解 257

24.1 Python技術基礎 257

24.1.1 什麼是MySQLdb 257

24.1.2 安裝Python 257

24.1.3 安裝MySQLdb 258

24.2 Python數據類型 258

24.3 Python連接MySQL

數據庫 259

24.4 Python MySQL操作

數據庫 259

24.4.1 獲取操作遊標 259

24.4.2 操作庫 260

24.4.3 操作數據表 260

24.4.4 數據查詢 260

24.5 Python提交與回滾 260

【項目實踐】 261

【習題】 262

 

項目十 phpMyAdmin操作數據庫

任務25

使用phpMyAdmin操作

數據庫 263

任務背景 263

任務目標 263

任務要求 264

任務分解 264

25.1 創建與管理數據庫 264

25.2 創建與管理表 265

25.2.1 創建表 265

25.2.2 管理表 266

25.3 字符集設置 267

25.4 表數據操作 268

25.4.1 插入數據 268

25.4.2 導入數據 268

25.4.3 操作數據 269

25.5 索引與參照完整性約束 270

25.5.1 創建主鍵、唯一性約束和

索引 270

25.5.2 參照完整性約束 270

25.6 使用查詢 270

25.7 創建視圖 271

25.8 創建和使用程序 272

25.8.1 創建存儲過程 272

25.8.2 創建存儲函數 273

25.8.3 使用程序 273

25.9 創建和使用觸發器 274

25.9.1 創建觸發器 274

25.9.2 使用觸發器 275

25.10 創建事件和使用事件 276

25.10.1 創建執行一次的事件 276

25.10.2 創建周期性執行的事件 277

25.10.3 編輯、導出或刪除事件 277

25.11 用戶與權限管理 278

25.11.1 編輯當前用戶的權限 278

25.11.2 添加新用戶和設置權限 279

25.12 備份與恢復數據庫 281

25.12.1 備份數據庫 281

25.12.2 恢復數據庫 282

【項目實踐】 282

【習題】 282

 

 

 

 

 

 

 

 

 

 

 

 

項目十一 MySQL集群架構搭建實例

任務26

Linux操作系統中搭建

MySQL集群 284

任務背景 284

任務目標 284

任務要求 285

任務分解 285

26.1 認識MySQL主從 285

26.1.1 MySQL支持的復制的

類型 285

26.1.2 MySQL復制技術的特點 285

26.1.3 MySQL主從復制過程 286

26.2 MySQL主從詳細配置 287

26.2.1 主服務器配置 287

26.2.2 從服務器配置 287

26.2.3 配置驗證 288

【項目實踐】 289

【習題】 289