MySQL入門很簡單

MySQL入門很簡單

《MySQL入門很簡單》是2011年1月清華大學出版社出版的圖書,作者是黃縉華。本書從初學者的角度出發,由淺入深,循序漸進地介紹了mysql資料庫套用與開發的相關知識。

基本介紹

  • 書名:MySQL入門很簡單
  • 作者:黃縉華
  • ISBN:9787302243625
  • 頁數:466
  • 出版社:清華大學出版社
  • 出版時間:2011 年1月
  • 開本:16開
作者簡介,內容簡介,目錄,

作者簡介

黃縉華 畢業於華北電力大學,獲碩士學位。致力於MySQL、Linux和Java等開源技術的研究,擔任國內知名Linux論壇的資料庫版的版主。長期參與電力行業項目開發,從事電力系統圖形、數據、模型一體化的研究。業餘喜歡羽毛球、桌球、游泳等運動。

內容簡介

書中提供了大量操作mysql資料庫的示例,還提供了大量實例和上機實踐內容,供讀者演練。本書附帶1張dvd光碟,內容為與本書內容完全配套的多媒體教學視頻和本書涉及的原始碼。
本書共分5篇。第1篇介紹資料庫的基本知識、在windows平台下安裝mysql資料庫、在linux平台下安裝mysql資料庫;第2篇介紹mysql數據類型、創建和刪除資料庫、資料庫存儲引擎、創建表、修改表、刪除表、索引、視圖、觸發器;第3篇介紹查詢數據、插入數據、更新數據、刪除數據、mysql運算符、mysql函式存儲過程和函式;第4篇介紹mysql用戶管理、數據備份、數據還原、mysql日誌、性能最佳化;第5篇介紹java訪問mysql資料庫、php訪問mysql資料庫、c#訪問mysql資料庫,最後還提供了一個項目實戰案例。
本書涉及面廣,幾乎涉及mysql資料庫套用與開發的所有重要知識,適合所有的mysql資料庫初學者快速入門,也適合mysql資料庫管理員和想全面學習mysql資料庫技術的人員閱讀。另外,對於大中專院校和培訓班的學生,本書更是一本不可多得的教材。

目錄

第1篇 mysql資料庫基礎
第1章 資料庫概述( 教學視頻:10分鐘) 2
1.1 資料庫理論基礎 2
1.1.1 數據存儲方式 2
1.1.2 資料庫泛型 3
1.1.3 資料庫在開發中作用 4
1.2 資料庫技術構成 4
1.2.2 sql語言 5
1.2.3 資料庫訪問技術 5
1.3 mysql基礎 6
1.3.1 常見資料庫系統 6
1.3.2 為什麼要使用mysql 7
1.3.3 mysql版本和獲取 8
1.4 如何學習資料庫 9
1.5 常見問題及解答 10
1.6 小結 10
1.7 本章習題 10
第2章 windows平台下安裝與配置mysql( 教學視頻:52分鐘) 11
2.1 安裝與配置mysql 11
.2.1.1 安裝mysql 11
2.1.2 配置mysql 14
2.2 啟動服務並登錄mysql資料庫 19
2.2.1 啟動mysql服務 19
2.2.2 登錄mysql資料庫 20
2.2.3 配置path變數 22
2.3 更改mysql的配置 23
2.3.1 通過配置嚮導來更改配置 23
2.3.2 手工更改配置 24
2.4 mysql常用圖形管理工具 27
2.5 使用免安裝的mysql 28
2.6 上機實踐 30
2.7 常見問題及解答 31
2.8 小結 31
2.9 本章習題 31
第3章 linux平台下安裝與配置mysql( 教學視頻:7分鐘) 32
3.1 linux作業系統下的mysql版本介紹 32
3.2 安裝和配置mysql的rpm包 33
3.3 安裝和配置mysql的二進制包 37
3.4 安裝和配置mysql的源碼包 41
3.5 上機實踐 45
3.6 常見問題及解答 46
3.7 小結 46
3.8 本章習題 47
第2篇 mysql資料庫基本操作
第4章 mysql數據類型( 教學視頻:92分鐘) 50
4.1 mysql數據類型介紹 50
4.1.1 整數類型 50
4.1.2 浮點數類型和定點數類型 52
4.1.3 日期與時間類型 53
4.1.4 字元串類型 60
4.1.5 二進制類型 63
4.2 如何選擇數據類型 65
4.3 常見問題及解答 67
4.4 小結 67
4.5 本章習題 67
第5章 運算元據庫( 教學視頻:29分鐘) 68
5.1 創建資料庫 68
5.2 刪除資料庫 69
5.3 資料庫存儲引擎 70
5.3.1 mysql存儲引擎簡介 70
5.3.2 innodb存儲引擎 73
5.3.3 myisam存儲引擎 73
5.3.4 memory存儲引擎 74
5.3.5 存儲引擎的選擇 74
5.4 本章實例 75
5.5 上機實踐 77
5.6 常見問題及解答 78
5.7 小結 78
5.8 本章習題 78
第6章 創建、修改和刪除表( 教學視頻:113分鐘) 79
6.1 創建表 79
6.1.1 創建表的語法形式 79
6.1.2 設定表的主鍵 80
6.1.3 設定表的外鍵 81
6.1.4 設定表的非空約束 82
6.1.5 設定表的唯一性約束 82
6.1.6 設定表的屬性值自動增加 82
6.1.7 設定表的屬性的默認值 83
6.2 查看錶結構 84
6.2.1 查看錶基本結構語句describe 84
6.2.2 查看錶詳細結構語句show create table 84
6.3 修改表 85
6.3.1 修改表名 85
6.3.2 修改欄位的數據類型 86
6.3.3 修改欄位名 87
6.3.4 增加欄位 89
6.3.5 刪除欄位 93
6.3.6 修改欄位的排列位置 94
6.3.7 更改表的存儲引擎 96
6.3.8 刪除表的外鍵約束 97
6.4 刪除表 98
6.4.1 刪除沒有被關聯的普通表 98
6.4.2 刪除被其他表關聯的父表 99
6.5 本章實例 100
6.6 上機實踐 106
6.7 常見問題及解答 109
6.8 小結 110
6.9 本章習題 110
第7章 索引( 教學視頻:82分鐘) 112
7.1 索引簡介 112
7.1.1 索引的含義和特點 112
7.1.2 索引的分類 113
7.1.3 索引的設計原則 114
7.2 創建索引 115
7.2.1 創建表的時候創建索引 115
7.2.2 在已經存在的表上創建索引 119
7.2.3 用alter table語句來創建索引 121
7.3 刪除索引 123
7.4 本章實例 124
7.5 上機實踐 128
7.6 常見問題及解答 130
7.7 小結 130
7.8 本章習題 130
第8章 視圖( 教學視頻:80分鐘) 131
8.1 視圖簡介 131
8.1.1 視圖的含義 131
8.1.2 視圖的作用 132
8.2 創建視圖 133
8.2.1 創建視圖的語法形式 133
8.2.2 在單表上創建視圖 134
8.2.3 在多表上創建視圖 135
8.3 查看視圖 136
8.3.1 describe語句查看視圖基本信息 136
8.3.2 show table status語句查看視圖基本信息 137
8.3.3 show create view語句查看視圖詳細信息 138
8.3.4 在views表中查看視圖詳細信息 139
8.4 修改視圖 140
8.4.1 create or replace view語句修改視圖 140
8.4.2 alter語句修改視圖 141
8.5 更新視圖 142
8.6 刪除視圖 145
8.7 本章實例 146
8.8 上機實踐 150
8.9 常見問題及解答 152
8.10 小結 152
8.11 本章習題 153
第9章 觸發器( 教學視頻:59分鐘) 154
9.1 創建觸發器 154
9.1.1 創建只有一個執行語句的觸發器 154
9.1.2 創建有多個執行語句的觸發器 155
9.2 查看觸發器 156
9.2.1 show triggers語句查看觸發器信息 156
9.2.2 在triggers表中查看觸發器信息 157
9.3 觸發器的使用 159
9.4 刪除觸發器 160
9.5 本章實例 160
9.6 上機實踐 163
9.7 常見問題及解答 164
9.8 小結 164
9.9 本章習題 165
第3篇 sql查詢語句
第10章 查詢數據( 教學視頻:207分鐘) 168
10.1 基本查詢語句 168
10.2 單表查詢 170
10.2.1 查詢所有欄位 170
10.2.2 查詢指定欄位 171
10.2.3 查詢指定記錄 172
10.2.4 帶in關鍵字的查詢 173
10.2.5 帶between and的範圍查詢 174
10.2.6 帶like的字元匹配查詢 175
10.2.7 查詢空值 177
10.2.8 帶and的多條件查詢 178
10.2.9 帶or的多條件查詢 179
10.2.10 查詢結果不重複 181
10.2.11 對查詢結果排序 182
10.2.12 分組查詢 184
10.2.13 用limit限制查詢結果的數量 188
10.3 使用集合函式查詢 190
10.3.1 count()函式 190
10.3.2 sum()函式 191
10.3.3 avg()函式 192
10.3.4 max()函式 193
10.3.5 min()函式 194
10.4 連線查詢 195
10.4.1 內連線查詢 195
10.4.2 外連線查詢 196
10.4.3 複合條件連線查詢 198
10.5 子查詢 199
10.5.1 帶in關鍵字的子查詢 199
10.5.2 帶比較運算符的子查詢 200
10.5.3 帶exists關鍵字的子查詢 203
10.5.4 帶any關鍵字的子查詢 205
10.5.5 帶all關鍵字的子查詢 206
10.6 合併查詢結果 207
10.7 為表和欄位取別名 208
10.7.1 為表取別名 208
10.7.2 為欄位取別名 209
10.8 使用正則表達式查詢 211
10.8.1 查詢以特定字元或字元串開頭的記錄 211
10.8.2 查詢以特定字元或字元串結尾的記錄 212
10.8.3 用符號“.”來替代字元串中的任意一個字元 213
10.8.4 匹配指定字元中的任意一個 213
10.8.5 匹配指定字元以外的字元 214
10.8.6 匹配指定字元串 215
10.8.7 使用“*”和“+”來匹配多個字元 216
10.8.8 使用{m}或者{m,n}來指定字元串連續出現的次數 216
10.9 本章實例 217
10.10 上機實踐 228
10.11 常見問題及解答 232
10.12 小結 233
10.13 本章習題 233
第11章 插入、更新與刪除數據( 教學視頻:45分鐘) 234
11.1 插入數據 234
11.1.1 為表的所有欄位插入數據 234
11.1.2 為表的指定欄位插入數據 236
11.1.3 同時插入多條記錄 238
11.1.4 將查詢結果插入到表中 239
11.2 更新數據 240
11.3 刪除數據 242
11.4 本章實例 244
11.5 上機實踐 248
11.6 常見問題及解答 250
11.7 小結 250
11.8 本章習題 250
第12章 mysql運算符( 教學視頻:75分鐘) 252
12.1 運算符簡介 252
12.4 邏輯運算符 260
12.5 位運算符 263
12.6 運算符的優先權 265
12.7 本章實例 266
12.8 上機實踐 267
12.9 常見問題及解答 268
12.10 小結 268
12.11 本章習題 269
第13章 mysql函式( 教學視頻:132分鐘) 270
13.1 mysql函式簡介 270
13.2 數學函式 271
13.2.1 絕對值函式abs(x)和返回圓周率的函式pi() 272
13.2.2 平方根函式sqrt(x)和求余函式mod(x,y) 272
13.2.3 獲取整數的函式ceil(x)、ceiling(x)和floor(x) 272
13.2.4 獲取隨機數的函式rand()和rand(x) 273
13.2.5 四捨五入函式round(x)、round(x,y)和truncate(x,y) 273
13.2.6 符號函式sign(x) 274
13.2.7 冪運算函式pow(x,y)、power(x,y)和exp(x) 274
13.2.8 對數運算函式log(x)和log10(x) 274
13.2.9 角度與弧度相互轉換的函式radians(x)和degrees(x) 275
13.2.11 餘弦函式cos(x)和反餘弦函式acos(x) 276
13.3.1 計算字元串字元數的函式和字元串長度的函式 278
13.3.2 合併字元串的函式concat(s1,s2,…) 和concat_ws(x,s1,s2,…) 278
13.3.3 替換字元串的函式insert(s1,x,len,s2) 278
13.3.4 字母大小寫轉換函式 279
13.3.5 獲取指定長度的字元串的函式left(s,n)和right(s,n) 279
13.3.6 填充字元串的函式lpad(s1,len,s2)和rpad(s1,len,s2) 279
13.3.7 刪除空格的函式ltrim(s)、rtrim(s)和trim(s) 280
13.3.8 刪除指定字元串的函式trim(s1 from s) 280
13.3.9 重複生成字元串的函式repeat(s,n) 281
13.3.10 空格函式space(n)和替換函式replace(s,s1,s2) 281
13.3.11 比較字元串大小的函式strcmp(s1,s2) 281
13.3.12 獲取子串的函式substring(s,n,len)和mid(s,n,len) 281
13.3.13 匹配子串開始位置的函式 282
13.3.14 字元串逆序的函式reverse(s) 282
13.3.15 返回指定位置的字元串的函式 282
13.3.16 返回指定字元串位置的函式field(s,s1,s2,…) 283
13.3.17 返回子串位置的函式find_in_set(s1,s2) 283
13.3.18 選取字元串的函式make_set(x,s1,s2,…) 283
13.4 日期和時間函式 284
13.4.1 獲取當前日期的函式和獲取當前時間的函式 285
13.4.2 獲取當前日期和時間的函式 285
13.4.3 unix時間戳函式 286
13.4.4 返回utc日期的函式和返回utc時間的函式 286
13.4.5 獲取月份的函式month(d)和monthname(d) 286
13.4.6 獲取星期的函式dayname(d)、dayofweek(d)和weekday(d) 287
13.4.7 獲取星期數的函式week(d)和weekofyear(d) 287
13.4.8 獲取天數的函式dayofyear(d)和dayofmonth(d) 288
13.4.9 獲取年份、季度、小時、分鐘和秒鐘的函式 288
13.4.10 獲取日期的指定值的函式extract(type from d) 288
13.4.11 時間和秒鐘轉換的函式 289
13.4.12 計算日期和時間的函式 289
13.4.13 將日期和時間格式化的函式 291
13.5 條件判斷函式 294
13.5.1 if(expr,v1,v2)函式 294
13.5.2 ifnull(v1,v2)函式 295
13.5.3 case函式 295
13.6 系統信息函式 296
13.6.1 獲取mysql版本號、連線數和資料庫名的函式 297
13.6.2 獲取用戶名的函式 297
13.6.3 獲取字元串的字元集和排序方式的函式 298
13.6.4 獲取最後一個自動生成的id值的函式 298
13.7 加密函式 299
13.7.1 加密函式password(str) 299
13.7.2 加密函式md5(str) 299
13.7.3 加密函式encode(str,pswd_str) 300
13.7.4 解密函式decode(crypt_str,pswd_str) 300
13.8 其他函式 300
13.8.1 格式化函式format(x,n) 300
13.8.2 不同進制的數字進行轉換的函式 301
13.8.3 ip地址與數字相互轉換的函式 301
13.8.4 加鎖函式和解鎖函式 302
13.8.5 重複執行指定操作的函式 303
13.8.6 改變字元集的函式 303
13.8.7 改變欄位數據類型的函式 303
13.9 本章實例 304
13.10 上機實踐 307
13.11 常見問題及解答 308
13.12 小結 308
13.13 本章習題 309
第14章 存儲過程和函式( 教學視頻:78分鐘) 310
14.1 創建存儲過程和函式 310
14.1.1 創建存儲過程 310
14.1.2 創建存儲函式 312
14.1.3 變數的使用 313
14.1.4 定義條件和處理程式 313
14.1.5 游標的使用 315
14.1.6 流程控制的使用 316
14.2 調用存儲過程和函式 319
14.2.1 調用存儲過程 319
14.2.2 調用存儲函式 320
14.3 查看存儲過程和函式 321
14.3.1 show status語句查看存儲過程和函式的狀態 321
14.3.2 show create語句查看存儲過程和函式的定義 321
14.3.3 從information_schema.routines表中查看存儲過程和函式的信息 322
14.4 修改存儲過程和函式 323
14.5 刪除存儲過程和函式 324
14.6 本章實例 325
14.7 上機實踐 327
14.8 常見問題及解答 328
14.9 小結 329
14.10 本章習題 329
第4篇 mysql資料庫高級管理
第15章 mysql用戶管理( 教學視頻:75分鐘) 332
15.1 許可權表 332
15.1.1 user表 332
15.1.2 db表和host表 333
15.1.3 tables_priv表和columns_priv表 334
15.1.4 procs_priv表 334
15.2 賬戶管理 335
15.2.1 登錄和退出mysql伺服器 335
15.2.2 新建普通用戶 336
15.2.3 刪除普通用戶 338
15.2.4 root用戶修改自己的密碼 339
15.2.5 root用戶修改普通用戶密碼 340
15.2.6 普通用戶修改密碼 342
15.2.7 root用戶密碼丟失的解決辦法 342
15.3 許可權管理 344
15.3.1 mysql的各種許可權 344
15.3.2 授權 345
15.3.3 收回許可權 346
15.3.4 查看許可權 347
15.4 本章實例 348
15.5 上機實踐 349
15.6 常見問題及解答 350
15.7 小結 351
15.8 本章習題 351
第16章 數據備份與還原( 教學視頻:56分鐘) 352
16.1 數據備份 352
16.1.1 使用mysqldump命令備份 352
16.1.2 直接複製整個資料庫目錄 354
16.1.3 使用mysqlhotcopy工具快速備份 355
16.2 數據還原 355
16.2.1 使用mysql命令還原 356
16.2.2 直接複製到資料庫目錄 356
16.3 資料庫遷移 357
16.3.1 相同版本的mysql資料庫之間的遷移 357
16.3.2 不同版本的mysql資料庫之間的遷移 357
16.3.3 不同資料庫之間遷移 358
16.4 表的導出和導入 358
16.4.1 用select…into outfile導出文本檔案 358
16.4.2 用mysqldump命令導出文本檔案 359
16.4.3 用mysql命令導出文本檔案 360
16.4.4 用load data infile方式導入文本檔案 361
16.4.5 用mysqlimport命令導入文本檔案 362
16.5 本章實例 362
16.6 上機實踐 365
16.7 常見問題及解答 366
16.8 小結 366
16.9 本章習題 367
第17章 mysql日誌( 教學視頻:54分鐘) 368
17.1 日誌簡介 368
17.2 二進制日誌 369
17.2.1 啟動和設定二進制日誌 369
17.2.2 查看二進制日誌 370
17.2.3 刪除二進制日誌 370
17.2.4 使用二進制日誌還原資料庫 371
17.2.5 暫時停止二進制日誌功能 372
17.3 錯誤日誌 372
17.3.1 啟動和設定錯誤日誌 372
17.3.2 查看錯誤日誌 373
17.3.3 刪除錯誤日誌 373
17.4 通用查詢日誌 374
17.4.1 啟動和設定通用查詢日誌 374
17.4.2 查看通用查詢日誌 374
17.4.3 刪除通用查詢日誌 375
17.5 慢查詢日誌 375
17.5.1 啟動和設定慢查詢日誌 375
17.5.2 查看慢查詢日誌 376
17.5.3 刪除慢查詢日誌 376
17.6 本章實例 376
17.7 上機實踐 380
17.8 常見問題及解答 381
17.9 小結 381
17.10 本章習題 381
第18章 性能最佳化( 教學視頻:48分鐘) 382
18.1 最佳化簡介 382
18.2 最佳化查詢 383
18.2.1 分析查詢語句 383
18.2.2 索引對查詢速度的影響 384
18.2.3 使用索引查詢 385
18.2.4 最佳化子查詢 387
18.3 最佳化資料庫結構 388
18.3.1 將欄位很多的表分解成多個表 388
18.3.2 增加中間表 388
18.3.3 增加冗餘欄位 389
18.3.4 最佳化插入記錄的速度 390
18.3.5 分析表、檢查表和最佳化表 391
18.4 最佳化mysql伺服器 392
18.4.1 最佳化伺服器硬體 392
18.4.2 最佳化mysql的參數 393
18.5 本章實例 394
18.6 上機實踐 395
18.7 常見問題及解答 396
18.8 小結 397
18.9 本章習題 397
第5篇 mysql套用與實戰開發
第19章 java訪問mysql資料庫( 教學視頻:45分鐘) 400
19.1 java連線mysql資料庫 400
19.1.1 下載jdbc驅動mysql connector/j 400
19.1.2 安裝mysql connector/j驅動 400
19.1.3 連線mysql資料庫 402
19.2 java操作mysql資料庫 403
19.2.1 創建statement對象 403
19.2.2 使用select語句查詢數據 403
19.2.3 插入、更新或者刪除數據 404
19.2.4 執行任意sql語句 405
19.2.5 關閉創建的對象 406
19.3 java備份與還原mysql資料庫 406
19.3.1 java備份mysql資料庫 406
19.3.2 java還原mysql資料庫 407
19.4 本章實例 407
19.5 上機實踐 410
19.6 常見問題及解答 413
19.7 小結 413
19.8 本章習題 414
第20章 php訪問mysql資料庫( 教學視頻:44分鐘) 415
20.1 php連線mysql資料庫 415
20.1.1 windows作業系統下配置php 415
20.1.2 linux作業系統下配置php 417
20.1.3 連線mysql資料庫 418
20.2 php操作mysql資料庫 419
20.2.1 執行sql語句 419
20.2.2 處理查詢結果 420
20.2.3 獲取查詢結果的欄位名 421
20.2.4 一次執行多個sql語句 421
20.2.5 處理帶參數的sql語句 422
20.2.6 關閉創建的對象 423
20.3 php備份與還原mysql資料庫 424
20.3.1 php備份mysql資料庫 424
20.3.2 php還原mysql資料庫 424
20.4 本章實例 425
20.5 上機實踐 426
20.6 常見問題及解答 427
20.7 小結 427
20.8 本章習題 428
第21章 c#訪問mysql資料庫( 教學視頻:55分鐘) 429
21.1 c#連線mysql資料庫 429
21.1.1 下載connector/net驅動程式 429
21.1.2 安裝connector/net驅動程式 430
21.1.3 使用connector/net驅動程式 431
21.1.4 連線mysql資料庫 432
21.2 c#操作mysql資料庫 433
21.2.1 創建mysqlcommand對象 433
21.2.2 插入、更新或者刪除數據 434
21.2.3 使用select語句查詢數據 434
21.2.4 一次執行多個select語句 435
21.2.5 處理select語句只返回一個值的情況 436
21.2.6 處理帶參數的sql語句 437
21.2.7 使用dataset對象和datatable對象 438
21.2.8 關閉創建的對象 438
21.3 c#備份與還原mysql資料庫 439
21.3.1 c#備份mysql資料庫 439
21.3.2 c#還原mysql資料庫 440
21.4 本章實例 440
21.5 上機實踐 443
21.6 常見問題及解答 445
21.7 小結 445
21.8 本章習題 445
第22章 駕校學員管理系統( 教學視頻:95分鐘) 446
22.1 系統概述 446
22.2 系統功能 446
22.3.1 設計表 447
22.3.2 設計索引 452
22.3.3 設計視圖 453
22.3.4 設計觸發器 454
22.4 系統實現 455
22.4.1 構建工程 455
22.4.2 訪問和操作mysql資料庫的代碼 455
22.5 用戶管理模組 458
22.5.1 用戶登錄功能 458
22.5.2 修改密碼 459
22.6 學籍管理模組 460
22.6.1 添加學員的學籍信息 460
22.6.2 查詢學員的學籍信息 461
22.6.3 修改學員的學籍信息 462
22.6.4 刪除學員的學籍信息 462
22.7 體檢管理模組 462
22.8 成績管理模組 464
22.9 證書管理模組 465
22.10 小結 466

相關詞條

熱門詞條

聯絡我們