第1篇MySQL基础篇 2
第1章 初识MySQL数据库 2
(自学视频、源程序:配套资源\mr\1\) 2
1.1了解MySQL数据库 3
1.1.1 MySQL的发展历史 3
1.1.2 MySQL的特性 3
1.1.3 MySQL的应用环境 4
1.1.4 MySQL的管理软件 4
1.1.5 MySQL下载 5
1.2 Windows下MySQL的安装 7
1.3启动、连接、断开和停止MySQL服务器 11
1.3.1启动、停止MySQL服务器 12
1.3.2连接、断开MySQL服务器 13
1.4 Linux下MySQL的安装 15
本章摘要 17
习题 17
第2章MySQL图形化管理工具 19
(自学视频、源程序: 配套资源\mr\2\) 19
2.1 MySQL Workbench图形化管理工具 20
2.1.1 MySQL Workbench的安装 20
2.1.2创建数据库和数据表 22
2.1.3添加数据 24
2.1.4数据的导入和导出 26
2.2 phpMyAdmin图形化管理工具 28
2.2.1数据库操作管理 28
2.2.2管理数据表 30
2.2.3管理数据记录 31
2.2.4导入和导出数据 34
2.2.5 phpMyAdmin设置编码格式 36
2.2.6 phpMyAdmin添加服务器新用户 37
2.2.7 phpMyAdmin中重置MySQL服务器登录密码 37
本章摘要 38
习题 39
第3章MySQL存储引擎和数据类型 40
(自学视频、源程序: 配套资源\mr\3\) 40
3.1 MySQL存储引擎 41
3.1.1什么是MySQL存储引擎 41
3.1.2查询MySQL中支持的存储引擎 41
3.1.3 InnoDB存储引擎 42
3.1.4 MyISAM存储引擎 43
3.1.5 MEMORY存储引擎 44
3.1.6如何选择存储引擎 45
3.1.7设置数据表的存储引擎 46
3.2 MySQL数据类型 47
3.2.1数字类型 47
3.2.2字符串(字符)类型 48
3.2.3日期和时间类型 49
本章摘要 49
习题 49
第4章MySQL基本操作 51
(自学视频、源程序: 配套资源 \mr\4\ ) 51
4.1 MySQL数据库操作 52
4.1.1创建数据库CREATEDATABASE 52
4.1.2查看数据库SHOW DATABASES 52
4.1.3选择数据库USE DATABASE 53
4.1.4删除数据库DROP DATABASE 53
4.2 MySQL数据表操作 53
4.2.1创建数据表CREATE TABLE 54
4.2.2查看表结构SHOW COLUMNS 或DESCRIBE 55
4.2.3修改表结构ALTER TABLE 56
4.2.4重命名表RENAME TABLE 57
4.2.5删除表DROP TABLE 57
4.3 MySQL语句操作 58
4.3.1插入记录INSERT 58
4.3.2查询数据库记录SELECT 58
4.3.3修改记录UPDATE 62
4.3.4 删除记录DELETE 63
本章摘要 63
习题 63
实战模拟 65
第5章 数据查询 69
(自学视频、源程序: 配套资源 \mr\5\) 69
5.1基本查询语句 70
5.2单表查询 71
5.2.1查询所有字段 71
5.2.2查询指定字段 72
5.2.3查询指定数据 72
5.2.4带IN关键字的查询 73
5.2.5带BETWEEN AND的范围查询 74
5.2.6带LIKE的字符匹配查询 74
5.2.7用IS NULL关键字查询空值 75
5.2.8带AND的多条件查询 76
5.2.9带OR的多条件查询 76
5.2.10用DISTINCT关键字去除结果中的重复行 77
5.2.11用ORDER BY关键字对查询结果排序 77
5.2.12用GROUP BY关键字分组查询 78
5.2.13用LIMIT限制查询结果的数量 79
5.3使用聚合函数查询 80
5.3.1 COUNT()函数 80
5.3.2 SUM()函数 81
5.3.3 AVG()函数 81
5.3.4 MAX()函数 82
5.3.5 MIN()函数 82
5.4连接查询 83
5.4.1内连接查询 83
5.4.2外连接查询 84
5.4.3复合条件连接查询 85
5.5子查询 86
5.5.1带IN关键字的子查询 86
5.5.2带比较运算符的子查询 87
5.5.3带EXISTS关键字的子查询 88
5.5.4带ANY关键字的子查询 89
5.5.5带ALL关键字的子查询 90
5.6合并查询结果 91
5.7定义表和字段的别名 92
5.7.1为表取别名 92
5.7.2为字段取别名 92
5.8使用正则表达式查询 93
本章摘要 94
习题 94
实战模拟 96
第6章MySQL运算符 101
(自学视频、源程序: 配套资源 \mr\6\) 101
6.1 MySQL运算符 102
6.2算术运算符 102
6.3比较运算符 103
6.4逻辑运算符 108
6.5位运算符 110
6.6运算符的优先级 110
本章摘要 111
习题 111
第7章MySQL函数 112
(自学视频、源程序: 配套资源\mr\7\ ) 112
7.1 MySQL函数 113
7.2数学函数 113
7.2.1 ABS(x)函数 114
7.2.2 FLOOR(x)函数 114
7.2.3 RAND()函数 115
7.2.4 PI()函数 115
7.2.5 TRUNCATE(x,y)函数 116
7.2.6 ROUND(x)函数和ROUND(x,y) 函数 116
7.2.7 SQRT(x)函数 116
7.3字符串函数 117
7.3.1 INSERT(s l ,x,len,s2)函数 118
7.3.2 UPPER(s)和UCASE(s)函数 119
7.3.3 LEFT(s,n)函数 119
7.3.4 RTRIM(s)函数 119
7.3.5 SUBSTRING(s,n,len)函数 120
7.3.6 REVERSE(s)函数 120
7.3.7 FIELD(s,sl,s2,…)函数 120
7.4日期和时间函数 121
7.4.1 CURDATE()和 CURRENT DATE()函数 122
7.4.2 CURTIME()和 CURRENT TIME()函数 122
7.4.3 NOW()函数 123
7.4.4 DATEDIFF(d1,d2)函数 123
7.4.5 ADDDATE(d,n)函数 124
7.4.6 ADDDATE(d,INTERVAL expr pe)函数 124
7.4.7 SUBDATE(d,n)函数 124
7.5条件判断函数 125
7.6系统信息函数 125
7.7加密函数 126
7.8其他函数 126
本章摘要 127
习题 128
第8章 查询优化 129
(自学视频、源程序: 配套资源\mr\8\) 129
8.1索引 130
8.1.1索引对查询速度的影响 130
8.1.2使用索引查询 131
8.2分析查询语句 133
8.3查询高速缓存 134
8.3.1检验高速缓存是否开启 134
8.3.2使用高速缓存 135
8.4优化多表查询 136
8.5使用临时表 137
8.6优化表设计 139
本章摘要 139
习题 140
第2篇MySQL高级应用篇 142
第9章MySQL索引 142
(自学视频、源程序: 配套资源 \mr\9\) 142
9.1 MySQL索引概述 143
9.1.1 MySQL索引概述 143
9.1.2 MySQL索引分类 143
9.2创建索引 144
9.2.1在建立数据表时创建索引 144
9.2.2在已建立的数据表中创建索引 149
9.2.3修改数据表结构添加索引 151
9.3删除索引 153
本章摘要 153
习题 154
第10章MySQL视图 155
(自学视频、源程序: 配套资源 \mr\ 10\ ) 155
10.1 MySQL视图 156
10.1.1视图的概念 156
10.1.2视图的作用 156
10.2创建视图 157
10.2.1查看用户是否具有创建视图的权限 157
10.2.2创建视图 158
10.2.3创建视图的注意事项 158
10.3查看视图 159
10.4修改视图 161
10.5更新视图 163
10.6删除视图 165
本章摘要 166
习题 166
实战模拟 167
第11章MySQL存储过程 171
(自学视频、源程序: 配套资源\mr\ 11 \ ) 171
11.1创建存储过程和存储函数 172
11.1.1创建存储过程 172
11.1.2创建存储函数 174
11.1.3变量的应用 175
11.1.4光标的运用 178
11.2流程控制语句 179
11.2.1 IF语句 179
11.2.2 CASE语句 180
11.2.3 WHILE循环语句 181
11.2.4 LOOP循环语句 182
11.2.5 REPEAT循环语句 183
11.3调用存储过程和存储函数 185
11.3.1调用存储过程 185
11.3.2调用存储函数 185
11.4查看存储过程和存储函数 185
11.4.1 SHOW STATUS语句 185
11.4.2 SHOW CREATE语句 186
11.5修改存储过程和存储函数 186
11.6删除存储过程和存储函数 187
11.7捕获存储过程中的错误 188
11.7.1定义条件 188
11.7.2定义处理程序 189
本章摘要 189
习题 190
实战模拟 191
第12章MySQL触发器 194
(自学视频、源程序: 配套资源\mr\12\) 194
12.1 MySQL触发器 195
12.1.1创建MySQL触发器 195
12.1.2创建具有多个执行语句的触发器 196
12.2查看触发器 198
12.2.1 SHOW TRIGGERS 198
12.2.2查看triggers表中触发器 信息 198
12.3应用触发器 199
12.4删除触发器 200
本章摘要 201
习题 201
实战模拟 202
第13章MySQL事务 205
(自学视频、源程序: 配套资源 \mr\ 13\) 205
13.1 MySQL事务概述 206
13.1.1原子性 207
13.1.2一致性 207
13.1.3孤立性 207
13.1.4持久性 208
13.2 MySQL事务的创建与存在周期 208
13.2.1初始化事务 209
13.2.2创建事务 209
13.2.3应用SELECT语句查看数据是否被正确输入 210
13.2.4提交事务 210
13.2.5撤销事务(事务回滚) 211
13.2.6事务的存在周期 211
13.3 MySQL行为 212
13.3.1自动提交 212
13.3.2事务的孤立级 213
13.3.3修改事务的孤立级 214
13.4事务和性能 214
13.4.1应用小事务 214
13.4.2选择合适的孤立级 215
13.4.3死锁的概念与避免方法 215
13.5 MySQL伪事务 216
13.5.1用表锁定代替事务 216
13.5.2应用表锁定实现伪事务 218
本章摘要 219
习题 219
实战模拟 220
第3篇MySQL系统管理篇 224
第14章MySQL系统管理 220
(自学视频、源程序: 配套资源\mr\ 14\) 224
14.1 MySQL系统管理 225
14.1.1管理职责概述 225
14.1.2日常管理 226
14.1.3安全问题 227
14.1.4数据库修复和维护 228
14.2数据目录的位置 228
14.3数据目录的结构 230
14.4 MySQL服务器如何提供对数据的访问 231
14.5 MySQL数据库在文件系统里如何表示 232
14.6 MySQL数据表在文件系统里如何表示 233
14.6.1 ISAM数据表 233
14.6.2 MyISAM数据表 233
14.6.3 MERGE数据表 233
14.6.4 BDB数据表 233
14.6.5 InnoDB数据表 233
14.6.6 HEAP数据表 234
14.7 SQL语句如何映射为数据表文件操作 234
14.7.1创建数据表 234
14.7.2更新数据表 234
14.7.3删除数据表 234
14.8操作系统对数据库和数据表命名的限制 235
14.9数据目录的结构对系统性能的影响 236
14.10 MySQL状态文件和日志文件 237
本章摘要 240
习题 240
第15章MySQL日常管理 241
(自学视频、源程序: 配套资源\mr\ 15\) 241
15.1连接故障恢复 242
15.1.1 MySQL套接字被误删 242
15.1.2忘记root口令 242
15.2日志文件管理 243
15.2.1错误日志 243
15.2.2通用查询日志 244
15.2.3二进制日志 244
15.2.4慢速查询日志 246
15.2.5日志文件维护 247
15.2.6日志失效处理 247
15.3 MySQL数据库备份和恢复 251
15.3.1数据的备份 252
15.3.2数据恢复 252
15.4 MySQL服务器镜像配置 254
15.4.1镜像机制概念 254
15.4.2建立主—从镜像关系 254
15.4.3 MySQL双机热备份 256
15.5 MySQL服务器的一些优化配置 259
15.5.1对MySQL服务器的连接监听情况进行控制 259
15.5.2启用或禁用LOAD DATA语句的LOCAL能力 259
15.5.3国际化和本地化 259
15.5.4对老数据表进行转换以激活MySQL4.1的字符集支持 261
15.6优化MySQL服务器 261
15.6.1服务器参数变量的设置 261
15.6.2通用的MySQL服务器变量 263
15.6.3 InnoDB处理程序变量 263
15.7运行多个MySQL服务器 264
15.7.1运行多个MySQL服务器需要注意的问题 264
15.7.2设置MySQL服务器启动选项的策略 264
15.7.3用mysql multi脚本启动多个MySQL服务器 265
15.7.4在Windows系统上运行多个MySQL服务器 266
本章摘要 267
习题 267
第16章MySQL数据库的安全技术 268
(自学视频、源程序: 配套资源\mr\16\) 268
16.1 MySQL基本的安全保护策略 269
16.2用户和权限管理 269
16.2.1使用CREATE USER命令创建用户 270
16.2.2使用DROP USER命令删除用户 270
16.2.3使用RENAME USER命令重命名用户 271
16.2.4 GRANT和REVOKE命令 271
16.3 MySQL数据库安全技术的常见问题 274
16.3.1权限更改何时生效 274
16.3.2设置账户密码 274
16.3.3使你的密码更安全 275
本章摘要 276
习题 276
第4篇MySQ L应用程序开发篇 278
第17章MySQL应用程序设计接口: PHP语言 278
(自学视频、源程序: 配套资源\mr\17\ ) 278
17.1 PHP语言概述 279
17.1.1什么是PHP 279
17.1.2为什么选择PHP 279
17.1.3 PHP的工作原理 280
17.1.4 PHP结合数据库应用的优势 281
17.2 PHP操作MySQL数据库的步骤 281
17.3使用PHP操作MySQL数据库 282
17.3.1 mysql connect()函数连接MySQL服务器 282
17.3.2 mysql_ select db()函数选择MySQL数据库 283
17.3.3 mysql_query()函数执行SQL 语句 283
17.3.4 mysql_fetch_ array()函数将结果集返回到数组中 284
17.3.5 mysql_fetch_ row()函数从结果集中获取一行作为枚举数组 284
17.3.6 mysql num_rows()函数获取查询结果集中的记录数 284
17.3.7 mysql_free_ result()函数释放内存 285
17.3.8 mysql close()函数关闭连接 285
17.4 PHP管理MySQL数据库中的数据 285
17.4.1向数据库中添加数据 285
17.4.2浏览数据库中数据 286
17.4.3编辑数据库数据 287
17.4.4删除数据 288
17.4.5批量删除数据 290
17.5常见问题与解决方法 291
17.6 MySQL与PHP的应用实例——迷你日记 294
17.6.1迷你日记概述 294
17.6.2数据库设计 295
17.6.3用户登录 296
17.6.4发表日记 297
17.6.5分页显示日记列表 299
17.6.6弹出窗口修改日记 301
17.6.7查询日记 303
17.6.8应用JavaScript实现批量删除 305
17.7 PDO数据库抽象层 307
17.7.1什么是数据库抽象层 307
17.7.2安装PDO 307
17.7.3连接数据库 308
17.7.4 PDO中执行SQL语句 309
17.7.5获取结果 310
17.8 PDO数据库抽象层应用实例——571公告管理系统 311
17.8.1系统概述 311
17.8.2数据库设计 311
17.8.3用户注册 313
17.8.4用户登录 315
17.8.5添加公告 315
17.8.6更新公告 317
17.8.7查询公告 320
本章摘要 321
习题 322
第18章MySQL应用程序设计接口: Java语言 323
(自学视频、源程序:配套资源\mr\18\ ) 323
18.1 JDBC技术 324
18.1.1数据库概述 324
18.1.2 JDBC-ODBC技术介绍 325
18.1.3 JDBC技术 326
18.2 JDBC中常用的类和接口 326
18.2.1 DriverManager类 326
18.2.2 Connection接口 327
18.2.3 Statement接口 327
18.2.4 PreparedStatement接口 328
18.2.5 ResultSet接口 328
18.3数据库连接 330
18.3.1加载数据库驱动 330
18.3.2创建数据库连接 330
18.3.3向数据库发送SQL语句 332
18.3.4获取查询结果集 332
18.3.5关闭连接 333
18.4数据操作 333
18.4.1添加数据 333
18.4.2删除数据 335
18.4.3修改数据 337
18.4.4查询数据 338
18.4.5使用预编译语句 339
18.4.6模糊查询 341
18.5综合实例 342
18.5.1英汉小词典 342
18.5.2系统登录 346
18.5.3库存管理 349
本章摘要 353
习题 353
第19章MySQL应用程序设计接口: C语言 355
(自学视频、源程序: 配套资源\mr\19\ ) 355
19.1图书管理系统开发背景 356
19.2系统设计 356
19.2.1系统目标 356
19.2.2系统功能结构 356
19.3数据库设计 357
19.3.1创建数据库 357
19.3.2数据表结构 358
19.4 C语言开发数据库程序的流程 358
19.5 C语言操作MySQL数据库 361
19.5.1 MySQL常用数据库操作函数 361
19.5.2连接MySQL数据 363
19.5.3查询图书表记录 364
19.5.4插入图书表记录 366
19.5.5修改图书表记录 367
19.5.6删除图书表记录 368
19.6文件引用 369
19.7变量和函数定义 370
19.8主要功能模块设计 370
19.8.1显示主菜单信息 370
19.8.2显示所有图书信息 372
19.8.3添加图书信息 374
19.8.4修改图书信息 380
19.8.5删除图书信息 386
19.8.6查询图书信息 391
本章摘要 393
习题 393
附录 396