MySQL 數據庫應用案例課堂(第2版)

劉春茂

  • 出版商: 清華大學
  • 出版日期: 2023-05-01
  • 定價: $510
  • 售價: 8.5$433
  • 語言: 簡體中文
  • ISBN: 7302633258
  • ISBN-13: 9787302633259
  • 相關分類: MySQLSQL
  • 下單後立即進貨 (約4週~6週)

  • MySQL 數據庫應用案例課堂(第2版)-preview-1
  • MySQL 數據庫應用案例課堂(第2版)-preview-2
  • MySQL 數據庫應用案例課堂(第2版)-preview-3
MySQL 數據庫應用案例課堂(第2版)-preview-1

商品描述

《MySQL 數據庫應用案例課堂(第2版)》是針對零基礎讀者研發的MySQL入門教材,側重案例實訓,並提供掃描二維碼來講解當前熱點案例。 《MySQL 數據庫應用案例課堂(第2版)》分為21章,內容包括MySQL基礎知識,安裝與配置MySQL環境,操作數據庫,創建、修改和刪除數據表,數據類型與運算符,索引的操作,插入、更新與刪除數據記錄,視圖的操作,MySQL系統函數,精通數據的查詢,存儲過程與存儲函數,MySQL觸發器,MySQL用戶權限管理,數據備份與還原,管理MySQL日誌,MySQL的性能優化,使用軟件管理MySQL數據庫,PHP操作MySQL數據庫,設計論壇管理系統數據庫,新聞發布系統數據庫設計,開發網上訂餐系統。 《MySQL 數據庫應用案例課堂(第2版)》通過精選熱點案例,讓初學者快速掌握MySQL數據庫應用技術;通過微信掃碼看視頻,讀者可以隨時在移動端學習技能對應的視頻操作;通過綜合實戰訓練營可以檢驗讀者的學習情況。

目錄大綱

目    錄

第1章  初識MySQL 1

1.1  數據庫的基本概念 2

1.1.1  數據庫的概念 2

1.1.2  數據表 2

1.1.3  數據類型 3

1.1.4  主鍵 3

1.2  數據庫技術構成 3

1.2.1  數據庫系統 3

1.2.2  結構化查詢語言 4

1.2.3  數據庫訪問技術 5

1.3  MySQL的特點 6

1.3.1  客戶端—服務器軟件 6

1.3.2  MySQL版本 6

1.3.3  MySQL的優勢 7

1.4  MySQL工具 7

1.4.1  mysql命令行實用程序 8

1.4.2  phpMyAdmin工具 8

1.5  疑難解惑 9

1.6  跟我學上機 10

第2章  安裝與配置 MySQL環境 11

2.1  安裝與配置MySQL 8.0 12

2.1.1  下載MySQL軟件 12

2.1.2  安裝MySQL軟件 14

2.1.3  配置MySQL軟件 16

2.2  啟動並登錄MySQL數據庫 20

2.2.1  啟動MySQL服務 20

2.2.2  登錄MySQL數據庫 22

2.2.3  配置Path變量 23

2.3  手動更改MySQL的配置 25

2.4  卸載MySQL數據庫 26

2.5  常見的錯誤代碼 27

2.6  疑難解惑 29

2.7  跟我學上機 30

第3章  操作數據庫 31

3.1  創建數據庫 32

3.2  刪除數據庫 33

3.3  數據庫存儲引擎 33

3.3.1  MySQL存儲引擎簡介 33

3.3.2  InnoDB存儲引擎 35

3.3.3  MyISAM存儲引擎 35

3.3.4  MEMORY存儲引擎 36

3.3.5  存儲引擎的選擇 36

3.4  疑難解惑 37

3.5  跟我學上機 37

第4章  創建、修改和刪除數據表 39

4.1  創建數據表 40

4.1.1  創建數據表的語法形式 40

4.1.2  使用主鍵約束 41

4.1.3  使用外鍵約束 42

4.1.4  使用非空約束 44

4.1.5  使用唯一性約束 44

4.1.6  使用默認值約束 45

4.1.7  設置表的屬性值自動增加 45

4.2  查看數據表結構 46

4.2.1  查看表基本結構語句DESCRIBE 46

4.2.2  查看表詳細結構語句SHOW CREATE TABLE 47

4.3  修改數據表 48

4.3.1  修改表名 48

4.3.2  修改字段的數據類型 48

4.3.3  修改字段名 49

4.3.4  添加字段 50

4.3.5  修改字段的排列位置 51

4.3.6  刪除字段 52

4.3.7  更改表的存儲引擎 53

4.4  刪除數據表 54

4.4.1  刪除沒有被關聯的表 54

4.4.2  刪除被其他表關聯的主表 55

4.5  疑難解惑 56

4.6  跟我學上機 56

第5章  數據類型與運算符 59

5.1  MySQL數據類型 60

5.1.1  整數類型 60

5.1.2  浮點數類型和定點數類型 61

5.1.3  日期類型與時間類型 62

5.1.4  字符串類型 66

5.1.5  二進制類型 68

5.1.6  復合數據類型 70

5.2  選擇數據類型 72

5.3  運算符及優先級 73

5.3.1  算術運算符 73

5.3.2  比較運算符 75

5.3.3  邏輯運算符 79

5.3.4  位運算符 82

5.3.5  運算符的優先級 84

5.4  疑難解惑 85

5.5  跟我學上機 85

第6章  索引的操作 87

6.1  瞭解索引 88

6.1.1  索引的含義和特點 88

6.1.2  索引的分類 88

6.1.3  索引的設計原則 89

6.2  創建數據表時創建索引 89

6.2.1  創建普通索引 90

6.2.2  創建唯一性索引 91

6.2.3  創建全文索引 92

6.2.4  創建單列索引 93

6.2.5  創建多列索引 93

6.2.6  創建空間索引 95

6.3  在已經存在的表上創建索引 95

6.3.1  創建普通索引 96

6.3.2  創建唯一性索引 97

6.3.3  創建全文索引 97

6.3.4  創建單列索引 98

6.3.5  創建多列索引 98

6.3.6  創建空間索引 99

6.4  使用ALTER TABLE語句創建索引 100

6.4.1  創建普通索引 100

6.4.2  創建唯一性索引 100

6.4.3  創建全文索引 101

6.4.4  創建單列索引 101

6.4.5  創建多列索引 101

6.4.6  創建空間索引 102

6.5  刪除索引 102

6.5.1  使用ALTER TABLE語句刪除索引 102

6.5.2  使用DROP INDEX語句刪除索引 103

6.6  疑難解惑 104

6.7  跟我學上機 104

第7章  插入、更新與刪除數據記錄 107

7.1  向數據表中插入數據 108

7.1.1  給表裡的所有字段插入數據 108

7.1.2  向表中插入數據時使用默認值 110

7.1.3  一次插入多條數據 110

7.1.4  通過復製表數據插入數據 111

7.2  更新數據表中的數據 112

7.2.1  更新表中的全部數據 113

7.2.2  更新表中指定單行數據 113

7.2.3  更新表中指定多行數據 113

7.3  刪除數據表中的數據 114

7.3.1  根據條件清除數據 114

7.3.2  清空表中的數據 115

7.4  疑難解惑 115

7.5  跟我學上機 116

第8章  視圖的操作 119

8.1  創建與修改視圖 120

8.1.1  創建視圖的語法規則 120

8.1.2  在單表上創建視圖 120

8.1.3  在多表上創建視圖 122

8.2  修改視圖 123

8.2.1  修改視圖的語法規則 123

8.2.2  使用CREATE OR REPLACE VIEW語句修改視圖 123

8.2.3  使用ALTER語句修改視圖 124

8.3  通過視圖更新數據 125

8.3.1  通過視圖插入數據 125

8.3.2  通過視圖修改數據 126

8.3.3  通過視圖刪除數據 127

8.4  查看視圖信息 128

8.4.1  使用DESCRIBE語句查看 128

8.4.2  使用SHOW TABLE STATUS語句查看 129

8.4.3  使用SHOW CREATE VIEW語句查看 130

8.4.4  在views表中查看視圖的詳細信息 130

8.5  刪除視圖 131

8.5.1  刪除視圖的語法 131

8.5.2  刪除不用的視圖 131

8.6  疑難解惑 131

8.7  跟我學上機 132

第9章  MySQL系統函數 135

9.1  數學函數 136

9.1.1  求絕對值函數ABS(x) 136

9.1.2  返回圓周率函數PI() 137

9.1.3  求餘函數MOD(x,y) 137

9.1.4  求平方根函數SQRT(x) 137

9.1.5  獲取四捨五入後的值 138

9.1.6  冪運算函數的使用 139

9.1.7  對數運算函數LOG(x)和LOG10(x) 139

9.1.8  角度與弧度相互的轉換 140

9.1.9  符號函數SIGN(x)的應用 140

9.1.10  正弦函數和餘弦函數 141

9.1.11  正切函數與餘切函數 141

9.1.12  獲取隨機數函數的應用 142

9.1.13  獲取整數函數的應用 142

9.2  字符串函數 143

9.2.1  計算字符串的字符數 144

9.2.2  計算字符串的長度 144

9.2.3  合並字符串函數 145

9.2.4  替換字符串函數 145

9.2.5  字母大小寫轉換函數 146

9.2.6  獲取指定長度的字符串的函數 146

9.2.7  填充字符串的函數 147

9.2.8  刪除字符串空格的函數 147

9.2.9  刪除指定字符串的函數 148

9.2.10  重復生成字符串的函數 148

9.2.11  空格函數和替換函數 149

9.2.12  比較字符串大小的函數 149

9.2.13  獲取子字符串的函數 150

9.2.14  匹配子字符串開始位置的函數 151

9.2.15  字符串逆序的函數 151

9.2.16  返回指定位置的字符串的函數 151

9.2.17  返回指定字符串位置的函數 152

9.2.18  返回子字符串位置的函數 152

9.2.19  選取字符串函數 153

9.3  日期和時間函數 153

9.3.1  獲取當前日期和當前時間 155

9.3.2  獲取當前日期和時間 155

9.3.3  獲取UNIX格式的時間 156

9.3.4  返回UTC日期和返回UTC時間 156

9.3.5  獲取指定日期的月份 157

9.3.6  獲取指定日期的星期數 157

9.3.7  獲取指定日期在一年中的星期周數 158

9.3.8  時間和秒鐘的相互轉換 159

9.3.9  日期和時間的加減運算 159

9.3.10  將日期和時間進行格式化 161

9.4  其他系統函數 162

9.4.1  條件判斷函數 162

9.4.2  系統信息函數 164

9.4.3  數據加密函數 167

9.5  疑難解惑 167

9.6  跟我學上機 168

第10章  精通數據的查詢 169

10.1  認識SELECT語句 170

10.2  數據的簡單查詢 170

10.2.1  查詢表中所有數據 170

10.2.2  查詢表中想要的數據 172

10.2.3  對查詢結果進行計算 173

10.2.4  為結果列取別名 173

10.2.5  在查詢時去除重復項 174

10.2.6  在查詢結果中給表取別名 174

10.2.7  使用LIMIT限制查詢數據 175

10.3  使用WHERE子句進行條件查詢 176

10.3.1  比較查詢條件的數據查詢 176

10.3.2  帶BETWEEN AND的範圍 查詢 177

10.3.3  帶IN關鍵字的查詢 178

10.3.4  帶LIKE的字符匹配查詢 179

10.3.5  未知空數據的查詢 181

10.3.6  帶AND的多條件查詢 181

10.3.7  帶OR的多條件查詢 182

10.4  操作查詢的結果 184

10.4.1  對查詢結果進行排序 184

10.4.2  對查詢結果進行分組 186

10.4.3  對分組結果過濾查詢 187

10.5  使用聚合函數進行統計查詢 187

10.5.1  使用SUM()函數求列的和 187

10.5.2  使用AVG()函數求列平均值 188

10.5.3  使用MAX()函數求列最大值 189

10.5.4  使用MIN()函數求列最小值 189

10.5.5  使用COUNT()函數統計 190

10.6  多表嵌套查詢 191

10.6.1  使用比較運算符的嵌套查詢 191

10.6.2  使用IN的嵌套查詢 193

10.6.3  使用ANY的嵌套查詢 194

10.6.4  使用ALL的嵌套查詢 194

10.6.5  使用SOME的子查詢 195

10.6.6  使用EXISTS的嵌套查詢 195

10.7  多表內連接查詢 197

10.7.1  內連接的簡單查詢 197

10.7.2  相等內連接的查詢 198

10.7.3  不等內連接的查詢 198

10.7.4  特殊的內連接查詢 199

10.7.5  帶條件的內連接查詢 200

10.8  多表外連接查詢 200

10.8.1  認識外連接查詢 200

10.8.2  左外連接的查詢 201

10.8.3  右外連接的查詢 202

10.9  使用排序函數 203

10.9.1  ROW_NUMBER()函數 203

10.9.2  RANK()函數 203

10.9.3  DENSE_RANK()函數 204

10.9.4  NTILE()函數 205

10.10  使用正則表達式查詢 205

10.10.1  查詢以特定字符或字符串  開頭的記錄 206

10.10.2  查詢以特定字符或字符串  結尾的記錄 207

10.10.3  用符號“.”來代替字符串中  的任意一個字符 207

10.10.4  匹配指定字符中的任意  一個 208

10.10.5  匹配指定字符以外的字符 209

10.10.6  匹配指定字符串 209

10.10.7  用“*”和“+”來匹配多個  字符 210

10.10.8  使用{M}或者{M,N}來指定  字符串連續出現的次數 211

10.11  疑難解惑 211

10.12  跟我學上機 212

第11章  存儲過程與存儲函數 215

11.1  創建存儲過程與存儲函數 216

11.1.1  創建存儲過程的語法格式 216

11.1.2  創建不帶參數的存儲過程 217

11.1.3  創建帶有參數的存儲過程 217

11.1.4  創建存儲函數 218

11.2  調用存儲過程與存儲函數 219

11.2.1  調用不帶參數的存儲過程 219

11.2.2  調用帶有參數的存儲過程 219

11.2.3  調用存儲函數 220

11.3  修改存儲過程與存儲函數 220

11.3.1  修改存儲過程 220

11.3.2  修改存儲函數 221

11.4  查看存儲過程與存儲函數 222

11.4.1  查看存儲過程的狀態 222

11.4.2  查看存儲過程的信息 223

11.4.3  通過表查看存儲過程 224

11.4.4  查看存儲函數的信息 225

11.5  刪除存儲過程 227

11.6  刪除存儲函數 228

11.7  疑難解惑 228

11.8  跟我學上機 228

第12章  MySQL觸發器 231

12.1  瞭解觸發器 232

12.2  創建觸發器 232

12.2.1  創建一條執行語句的觸發器 232

12.2.2  創建多個執行語句的觸發器 234

12.3  查看觸發器 235

12.3.1  使用SHOW TRIGGERS語句 查看 235

12.3.2  使用INFORMATION_SCHEMA 語句查看 236

12.4  刪除觸發器 237

12.5  疑難解惑 238

12.6  跟我學上機 238

第13章  MySQL用戶權限管理 241

13.1  認識權限表 242

13.1.1  user表 242

13.1.2  db表 243

13.1.3  tables_priv表 243

13.1.4  columns_priv表 244

13.1.5  procs_priv表 244

13.2  用戶賬戶管理 245

13.2.1  登錄和退出MySQL服務器 245

13.2.2  創建普通用戶 246

13.2.3  刪除普通用戶 248

13.2.4  修改用戶的密碼 249

13.3  用戶權限的管理 250

13.3.1  認識用戶權限 250

13.3.2  授予用戶權限 251

13.3.3  查看用戶權限 251

13.3.4  收回用戶權限 252

13.4  用戶角色的管理 253

13.4.1  創建角色 253

13.4.2  給角色授權 254

13.4.3  刪除角色 254

13.5  疑難解惑 255

13.6  跟我學上機 256

第14章  數據備份與還原 257

14.1  數據的備份 258

14.1.1  使用mysqldump命令備份 258

14.1.2  使用mysqlhotcopy命令快速 備份 263

14.1.3  直接復制整個數據庫目錄 263

14.2  數據的還原 264

14.2.1  使用mysql命令還原 264

14.2.2  使用mysqlhotcopy快速還原 265

14.2.3  直接復制到數據庫目錄 265

14.3  數據庫的遷移 265

14.3.1  相同版本之間的遷移 265

14.3.2  不同版本之間的遷移 266

14.3.3  不同數據庫之間的遷移 266

14.4  數據表的導出和導入 267

14.4.1  使用mysql命令導出 267

14.4.2  使用mysqldump命令導出 269

14.4.3  使用SELECT…INTO OUTFILE 語句導出 272

14.4.4  使用LOAD DATA INFILE語句 導入 275

14.5  疑難解惑 277

14.6  跟我學上機 277

第15章  管理MySQL日誌 279

15.1  認識日誌 280

15.2  錯誤日誌 280

15.2.1  啟動錯誤日誌 280

15.2.2  查看錯誤日誌 280

15.2.3  刪除錯誤日誌 281

15.3  二進制日誌 282

15.3.1  啟動二進制日誌 282

15.3.2  查看二進制日誌 283

15.3.3  刪除二進制日誌 284

15.4  通用查詢日誌 285

15.4.1  啟動通用查詢日誌 285

15.4.2  查看通用查詢日誌 286

15.4.3  刪除通用查詢日誌 286

15.5  慢查詢日誌 286

15.5.1  啟動慢查詢日誌 286

15.5.2  查看慢查詢日誌 287

15.5.3  刪除慢查詢日誌 288

15.6  疑難解惑 288

15.7  跟我學上機 288

第16章  MySQL的性能優化 291

16.1  認識MySQL的性能優化 292

16.2  查詢速度的優化 293

16.2.1  分析查詢語句 293

16.2.2  使用索引優化查詢 296

16.2.3  優化子查詢 297

16.3  數據庫結構的優化 297

16.3.1  通過分解表優化 297

16.3.2  通過中間表優化 298

16.3.3  通過冗餘字段優化 299

16.3.4  優化插入記錄的速度 300

16.3.5  分析表、檢查表和優化表 301

16.4  MySQL服務器的優化 303

16.4.1  MySQL服務器硬件的優化 303

16.4.2  MySQL參數的優化 303

16.5  疑難解惑 304

16.6  跟我學上機 305

第17章  使用軟件管理 MySQL 數據庫 307

17.1  搭建PHP 8+MySQL 8集成開發 環境 308

17.2  啟動phpMyAdmin管理程序 310

17.3  創建數據庫和數據表 311

17.4  MySQL數據庫的基本操作 313

17.4.1  創建數據庫 313

17.4.2  查看數據庫 314

17.4.3  刪除數據庫 315

17.5  MySQL數據表的基本操作 315

17.5.1  創建數據表 315

17.5.2  查看數據表 316

17.5.3  修改數據表 317

17.5.4  刪除數據表 317

17.6  MySQL語句的操作 318

17.6.1  插入記錄 318

17.6.2  查詢記錄 318

17.6.3  修改記錄 320

17.6.4  刪除記錄 320

17.7  為MySQL管理賬號加上密碼 320

17.8  MySQL數據庫的備份與還原 322

17.8.1  對數據庫進行備份 322

17.8.2  對數據庫進行還原 322

17.9  疑難解惑 323

17.10  跟我學上機 323

第18章  PHP操作MySQL數據庫 325

18.1  PHP訪問MySQL數據庫的步驟 326

18.2  操作MySQL數據庫的函數 326

18.2.1  連接MySQL服務器 326

18.2.2  選擇數據庫 327

18.2.3  創建數據庫 328

18.2.4  創建數據表 329

18.2.5  添加一條數據記錄 331

18.2.6  一次插入多條數據 332

18.2.7  讀取數據 333

18.2.8  釋放資源 335

18.2.9  關閉連接 335

18.3  管理MySQL數據庫中的數據 335

18.3.1  添加商品信息 335

18.3.2  查詢商品信息 337

18.4  疑難解惑 340

18.5  跟我學上機 340

第19章  設計論壇管理系統數據庫 341

19.1  系統概述 342

19.2  系統功能 342

19.3  數據庫設計和實現 343

19.3.1  設計方案圖表 343

19.3.2  設計表 345

19.3.3  設計索引 348

19.3.4  設計視圖 349

19.3.5  設計觸發器 349

第20章  新聞發布系統數據庫設計 351

20.1  系統概述 352

20.2  系統功能 352

20.3  數據庫設計和實現 353

20.3.1  設計表 353

20.3.2  設計索引 358

20.3.3  設計視圖 358

20.3.4  設計觸發器 359

第21章  開發網上訂餐系統 361

21.1  系統功能描述 362

21.2  系統功能分析和設計數據庫 362

21.2.1  系統功能分析 363

21.2.2  數據流程和數據庫 363

21.3  代碼的具體實現 366

21.4  程序運行 375