《MySQL數(shù)據(jù)庫原理及應用》從教學實際出發(fā),系統(tǒng)地介紹了MySQL數(shù)據(jù)庫的有關(guān)原理和基本操作,主要內(nèi)容包括數(shù)據(jù)庫技術(shù)概述、MySQL概述、數(shù)據(jù)庫基本操作、數(shù)據(jù)表、索引、結(jié)構(gòu)化查詢語言SQL、視圖、觸發(fā)器、存儲過程和存儲函數(shù)、訪問控制與安全管理、備份與恢復、PHP與MySQL數(shù)據(jù)庫編程。
《MySQL數(shù)據(jù)庫原理及應用》的內(nèi)容基于Sailing數(shù)據(jù)庫展開講述,并提供了大量的實例作為參考,可以幫助讀者理解數(shù)據(jù)庫管理的有關(guān)概念,并熟悉數(shù)據(jù)庫操作流程和管理方法。
《MySQL數(shù)據(jù)庫原理及應用》既可作為高等院!皵(shù)據(jù)庫原理”課程的教材,也可作為相關(guān)領(lǐng)域技術(shù)人員的參考書。
《MySQL數(shù)據(jù)庫原理及應用》配有授課電子課件、教學大綱、源代碼、習題答案等,需要的教師可登錄www.cmpedu.com免費注冊,審核通過后下載,或聯(lián)系編輯索。ㄎ⑿牛15910938545,電話:010-88379739)。
前言
第1章 數(shù)據(jù)庫技術(shù)概述1
1.1 引言1
1.2 數(shù)據(jù)庫系統(tǒng)2
1.2.1 數(shù)據(jù)庫系統(tǒng)的基本概念2
1.2.2 數(shù)據(jù)庫系統(tǒng)的特點4
1.2.3 數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展5
1.3 數(shù)據(jù)庫系統(tǒng)的三級數(shù)據(jù)模式結(jié)構(gòu)7
1.3.1 數(shù)據(jù)模式的概念7
1.3.2 數(shù)據(jù)庫系統(tǒng)的二級映像技術(shù)8
1.4 概念模型8
1.4.1 數(shù)據(jù)的三個表示范疇及描述8
1.4.2 實體—聯(lián)系模型9
1.5 邏輯模型13
1.5.1 數(shù)據(jù)模型13
1.5.2 常見的數(shù)據(jù)模型13
1.6 關(guān)系數(shù)據(jù)庫15
1.6.1 關(guān)系模型的基本概念15
1.6.2 關(guān)系數(shù)據(jù)庫的基本性質(zhì)16
1.6.3 關(guān)系數(shù)據(jù)模式的規(guī)范化16
1.6.4 關(guān)系的完整性約束18
1.6.5 關(guān)系數(shù)據(jù)操作基礎(chǔ)20
1.7 數(shù)據(jù)庫設(shè)計的基本步驟25
1.7.1 需求分析26
1.7.2 概念設(shè)計26
1.7.3 邏輯設(shè)計27
1.7.4 物理設(shè)計29
1.7.5 數(shù)據(jù)庫實施30
1.7.6 數(shù)據(jù)庫運行和維護30
習題31
第2章 MySQL概述34
2.1 MySQL簡介34
2.1.1 MySQL的發(fā)展歷程34
2.1.2 MySQL的優(yōu)勢和特性35
2.1.3 MySQL的版本36
2.2 MySQL服務器的安裝與配置36
2.3 MySQL服務器的啟動與登錄42
2.3.1 啟動和停止MySQL服務器43
2.3.2 登錄和退出MySQL數(shù)據(jù)庫44
2.3.3 配置Path變量45
2.4 MySQL圖形化管理工具46
2.5 WampServer47
2.5.1 WampServer的安裝與配置47
2.5.2 登錄phpMyAdmin工具平臺50
習題52
第3章 數(shù)據(jù)庫基本操作54
3.1 創(chuàng)建數(shù)據(jù)庫54
3.1.1 通過命令創(chuàng)建數(shù)據(jù)庫54
3.1.2 通過phpMyAdmin創(chuàng)建數(shù)據(jù)庫55
3.2 查看數(shù)據(jù)庫57
3.2.1 查看所有數(shù)據(jù)庫57
3.2.2 查看數(shù)據(jù)庫詳細信息57
3.2.3 選擇數(shù)據(jù)庫58
3.3 刪除數(shù)據(jù)庫59
3.3.1 通過命令刪除數(shù)據(jù)庫59
3.3.2 通過phpMyAdmin刪除數(shù)據(jù)庫59
3.4 數(shù)據(jù)庫存儲引擎61
3.4.1 查看MySQL存儲引擎61
3.4.2 事務與鎖的概念63
3.4.3 常用存儲引擎介紹64
3.4.4 選擇存儲引擎66
習題66
第4章 數(shù)據(jù)表68
4.1 MySQL數(shù)據(jù)類型介紹68
4.1.1 數(shù)值類型68
4.1.2 日期時間類型72
4.1.3 字符串類型73
4.2 創(chuàng)建數(shù)據(jù)表76
4.2.1 創(chuàng)建數(shù)據(jù)表的語法76
4.2.2 主鍵約束77
4.2.3 外鍵約束79
4.2.4 非空約束79
4.2.5 默認值約束80
4.2.6 自動增值80
4.2.7 唯一約束81
4.3 數(shù)據(jù)表操作81
4.3.1 數(shù)據(jù)表查看81
4.3.2 數(shù)據(jù)表刪除83
4.3.3 數(shù)據(jù)表更名83
4.4 修改表結(jié)構(gòu)84
4.4.1 修改字段的數(shù)據(jù)類型84
4.4.2 修改字段名84
4.4.3 添加字段84
4.4.4 刪除字段86
4.4.5 修改字段排列順序86
4.4.6 修改完整性約束87
4.5 表數(shù)據(jù)編輯89
4.5.1 插入數(shù)據(jù)89
4.5.2 修改數(shù)據(jù)90
4.5.3 刪除數(shù)據(jù)90
4.6 工具平臺中的數(shù)據(jù)表91
4.6.1 數(shù)據(jù)表的創(chuàng)建91
4.6.2 表結(jié)構(gòu)的修改93
4.6.3 數(shù)據(jù)表的操作95
4.6.4 數(shù)據(jù)表關(guān)系96
4.6.5 輸入數(shù)據(jù)99
習題103
第5章 索引106
5.1 概述106
5.1.1 索引的特點106
5.1.2 索引的分類107
5.1.3 查詢的基本原理108
5.1.4 MySQL的索引110
5.2 創(chuàng)建索引111
5.2.1 創(chuàng)建表時創(chuàng)建索引111
5.2.2 在已有表中創(chuàng)建索引113
5.2.3 查看索引114
5.3 刪除索引116
5.4 工具平臺中的索引117
5.4.1 索引的創(chuàng)建117
5.4.2 索引的刪除119
習題120
第6章 結(jié)構(gòu)化查詢語言SQL122
6.1 運算符122
6.1.1 算術(shù)運算符122
6.1.2 比較運算符123
6.1.3 邏輯運算符128
6.1.4 位運算符129
6.1.5 運算符的優(yōu)先級132
6.2 MySQL常用函數(shù)132
6.2.1 數(shù)值函數(shù)133
6.2.2 字符串函數(shù)133
6.2.3 日期時間函數(shù)135
6.2.4 系統(tǒng)信息函數(shù)136
6.3 簡單查詢136
6.3.1 單表查詢137
6.3.2 取消重復數(shù)據(jù)查詢138
6.4 條件查詢139
6.4.1 帶條件表達式的查詢139
6.4.2 BETWEEN…AND條件139
6.4.3 IS NULL條件141
6.4.4 IN查詢141
6.4.5 LIKE條件142
6.5 排序查詢143
6.5.1 單字段排序查詢143
6.5.2 多字段排序查詢144
6.6 限制查詢結(jié)果記錄條數(shù)145
6.7 總計查詢145
6.7.1 總計函數(shù)146
6.7.2 分組查詢148
6.7.3 分組結(jié)果的條件限制150
6.8 連接查詢150
6.8.1 交叉連接151
6.8.2 內(nèi)連接151
6.8.3 外連接查詢154
6.9 子查詢156
6.9.1 帶ANY、SOME關(guān)鍵字的
子查詢156
6.9.2 帶ALL關(guān)鍵字的子查詢157
6.9.3 帶EXISTS關(guān)鍵字的子查詢157
6.9.4 帶IN關(guān)鍵字的子查詢158
6.9.5 帶比較運算符的子查詢159
6.10 合并查詢結(jié)果161
6.11 數(shù)據(jù)操作162
6.11.1 插入數(shù)據(jù)163
6.11.2 修改數(shù)據(jù)164
6.11.3 刪除數(shù)據(jù)168
6.12 工具平臺中的查詢設(shè)計170
6.12.1 基于單表的查詢實現(xiàn)170
6.12.2 基于多表的查詢172
習題176
第7章 視圖179
7.1 概述179
7.2 創(chuàng)建視圖180
7.2.1 創(chuàng)建視圖的語法形式180
7.2.2 在單表上創(chuàng)建視圖181
7.2.3 在多表上創(chuàng)建視圖182
7.3 查看視圖182
7.3.1 查看視圖的字段信息182
7.3.2 查看視圖基本信息183
7.3.3 查看視圖詳細信息183
7.4 修改視圖184
7.4.1 利用CREATE OR REPLACE VIEW
語句修改視圖184
7.4.2 使用ALTER語句修改視圖185
7.5 更新視圖186
7.6 刪除視圖188
7.7 工具平臺中的視圖189
7.7.1 創(chuàng)建視圖189
7.7.2 查看視圖190
7.7.3 修改視圖192
7.7.4 更新視圖192
7.7.5 刪除視圖195
習題195
第8章 觸發(fā)器197
8.1 概述197
8.2 創(chuàng)建觸發(fā)器198
8.2.1 創(chuàng)建觸發(fā)器的語法形式198
8.2.2 利用工具平臺創(chuàng)建觸發(fā)器200
8.3 查看觸發(fā)器201
8.3.1 通過SHOW TRIGGERS語句
查看觸發(fā)器201
8.3.2 通過系統(tǒng)表triggers查看觸發(fā)器202
8.4 刪除觸發(fā)器203
8.4.1 通過DROP TRIGGER語句刪除
觸發(fā)器203
8.4.2 通過工具平臺刪除觸發(fā)器204
習題204
第9章 存儲過程和存儲函數(shù)206
9.1 概述206
9.1.1 存儲過程206
9.1.2 存儲函數(shù)207
9.2 創(chuàng)建存儲過程和存儲函數(shù)207
9.2.1 創(chuàng)建存儲過程的語法形式207
9.2.2 創(chuàng)建存儲函數(shù)的語法形式208
9.2.3 創(chuàng)建簡單的存儲過程和存儲函數(shù)209
9.2.4 通過工具平臺創(chuàng)建存儲過程和
存儲函數(shù)211
9.3 存儲過程體和存儲函數(shù)體211
9.3.1 局部變量211
9.3.2 游標213
9.3.3 流程控制語句214
9.4 查看存儲過程和存儲函數(shù)219
9.5 修改存儲過程和存儲函數(shù)221
9.6 刪除存儲過程和存儲函數(shù)223
習題224
第10章 訪問控制與安全管理226
10.1 用戶賬戶管理226
10.1.1 用戶權(quán)限表226
10.1.2 創(chuàng)建用戶賬號229
10.1.3 刪除用戶231
10.1.4 修改用戶賬號232
10.1.5 修改用戶口令232
10.2 賬戶權(quán)限管理233
10.2.1 權(quán)限的授予233
10.2.2 權(quán)限的轉(zhuǎn)移與限制236
10.2.3 權(quán)限的撤銷237
習題238
第11章 備份與恢復240
11.1 MySQL數(shù)據(jù)庫備份與恢復
方法240
11.1.1 使用SQL語句備份和恢復表
數(shù)據(jù)240
11.1.2 使用MySQL客戶端實用程序
備份和恢復數(shù)據(jù)243
11.1.3 使用MySQL工具平臺備份和
恢復數(shù)據(jù)246
11.2 日志文件247
11.2.1 二進制日志247
11.2.2 查詢?nèi)罩?50
習題251
第12章 PHP與MySQL數(shù)據(jù)庫編程253
12.1 PHP編程基礎(chǔ)254
12.1.1 PHP代碼與文本注釋254
12.1.2 PHP中的變量255
12.1.3 PHP中的常量261
12.1.4 PHP運算符262
12.1.5 表達式270
12.2 PHP函數(shù)271
12.2.1 自定義函數(shù)271
12.2.2 參數(shù)傳遞和返回值274
12.2.3 PHP內(nèi)置函數(shù)275
12.2.4 PHP的標準輸入與輸出276
12.3 數(shù)組的使用277
12.3.1 定義數(shù)組277
12.3.2 數(shù)組管理279
12.4 PHP程序設(shè)計基礎(chǔ)283
12.4.1 選擇結(jié)構(gòu)283
12.4.2 循環(huán)結(jié)構(gòu)287
12.5 PHP面向?qū)ο蟪绦蛟O(shè)計289
12.5.1 定義類和對象289
12.5.2 類的繼承和多態(tài)292
12.6 在PHP中訪問MySQL
數(shù)據(jù)庫294
12.6.1 MySqli擴展庫的配置294
12.6.2 連接數(shù)據(jù)庫295
12.6.3 執(zhí)行數(shù)據(jù)庫操作296
12.6.4 關(guān)閉結(jié)果集和數(shù)據(jù)庫連接300
習題301
附錄 Sailing數(shù)據(jù)庫結(jié)構(gòu)304