第1篇 MySQL基础 2
第1章 数据库的安装(教学视频:25分钟) 2
1.1 MySQL概述 2
1.1.1 MySQL特性以及历史 2
1.1.2 MySQL的获取 3
1.2 MySQL的安装 5
1.2.1 Windows中安装MySQL 6
1.2.2 Linux中安装MySQL 9
1.3本章小结 13
1.4本章习题 13
第2章 数据库的创建、修改及删除(教学视频:19分钟) 14
2.1创建数据库 14
2.1.1创建数据库的基本语法 14
2.1.2使用语句创建数据库 16
2.1.3使用图形界面创建数据库 17
2.2修改数据库 19
2.2.1使用语句修改数据库使用的字符集 20
2.2.2使用图形界面修改数据库使用的字符集 20
2.3删除数据库 21
2.3.1删除数据库的基本语法 21
2.3.2使用语句删除数据库 22
2.3.3使用图形界面删除数据库 22
2.4数据库使用实例 23
2.5本章小结 26
2.6本章习题 26
第3章 数据表的创建、修改及删除(教学视频:35分钟) 28
3.1数据类型 28
3.1.1数值类型 28
3.1.2字符串类型 29
3.1.3日期时间类型 29
3.1.4其他数据类型 30
3.2创建数据表 31
3.2.1创建数据表的语法 31
3.2.2使用语句创建数据表 31
3.2.3使用图形界面创建数据表 32
3.3修改数据表 34
3.3.1修改数据表的语法 34
3.3.2使用语句修改数据表 34
3.3.3使用图形界面修改数据表 36
3.4删除数据表 37
3.4.1删除数据表的语法 37
3.4.2使用语句删除数据表 37
3.4.3使用图形界面删除数据表 38
3.5数据表使用实例 39
3.6本章小结 41
3.7本章习题 42
第4章 约束(教学视频:42分钟) 44
4.1约束的类型 44
4.2主键约束 44
4.2.1在创建表时设置主键约束 45
4.2.2在修改表时添加主键约束 48
4.2.3删除主键约束 50
4.3外键约束 50
4.3.1在创建表时设置外键约束 50
4.3.2在修改表时添加外键约束 51
4.3.3删除外键约束 52
4.4默认值约束 53
4.4.1在创建表时设置默认值约束 53
4.4.2在修改表时添加默认值约束 54
4.4.3删除默认值约束 54
4.5非空约束 55
4.5.1在创建表时设置非空约束 55
4.5.2在修改表时添加非空约束 56
4.6检查约束 57
4.6.1在创建表时为列设置检查约束 57
4.6.2在修改表时为一个列添加检查约束 58
4.7唯一约束 59
4.7.1在创建表时设置唯一约束 59
4.7.2在修改表时添加唯一约束 62
4.7.3删除唯一约束 63
4.8本章小结 63
4.9本章习题 63
第2篇 操作表中的数据 66
第5章 使用DML语言操作数据表(教学视频:45分钟) 66
5.1使用INSERT语句向数据表中添加数据 66
5.1.1 INSERT语句的基本语法形式 66
5.1.2给表中指定字段添加数据 67
5.1.3复制其他表中的数据 70
5.1.4为表添加多条数据 72
5.2使用UPDATE语句修改表中的数据 72
5.2.1 UPDATE语句的基本语法形式 73
5.2.2修改表中的全部数据 73
5.2.3根据条件修改表中的数据 73
5.2.4根据顺序修改数据表中的数据 74
5.2.5限制行数的修改 76
5.3使用DELETE语句删除表中的数据 78
5.3.1 DELETE语句的基本语法形式 78
5.3.2删除表中的全部数据 79
5.3.3根据条件删除表中的数据 79
5.3.4按指定顺序删除数据 80
5.3.5限制行数的删除 81
5.4使用图形界面操作数据表 83
5.5数据表数据操作综合实例 85
5.6本章小结 89
5.7本章习题 89
第6章 简单查询与子查询(教学视频:37分钟) 91
6.1运算符 91
6.1.1算术运算符 91
6.1.2比较运算符 94
6.1.3逻辑运算符 97
6.1.4位运算符 101
6.2简单查询 104
6.2.1基本语法 105
6.2.2查询表中的全部数据 105
6.2.3查询指定字段的数据 106
6.2.4在查询中使用别名列 107
6.2.5根据单一条件查询数据 107
6.2.6带LIKE条件的查询 107
6.2.7根据多个条件查询数据 108
6.2.8对查询结果排序 109
6.2.9限制查询结果的行数 109
6.3聚合函数 110
6.3.1最大值函数MAX 110
6.3.2最小值函数MIN 111
6.3.3平均值函数AVG 111
6.3.4求和函数SUM 112
6.3.5计数函数COUNT 112
6.4子查询 113
6.4.1子查询中常用的操作符 113
6.4.2 使用IN的子查询 113
6.4.3使用EXISTS的子查询 115
6.4.4使用ANY的子查询 116
6.5本章小结 116
6.6本章习题 116
第7章 复杂查询(教学视频:43分钟) 118
7.1分组查询 118
7.1.1对单列进行分组查询 118
7.1.2使用HAVING的分组查询 119
7.1.3对多列进行分组查询 120
7.1.4在分组查询中使用ORDER BY 121
7.2多表查询 122
7.2.1等值连接 122
7.2.2笛卡尔积 125
7.2.3外连接 126
7.2.4内连接 127
7.3合并查询结果 129
7.3.1使用UNION关键字合并查询结果 129
7.3.2对合并后的查询结果排序 130
7.3.3限制组合查询结果的行数 131
7.4综合实例 132
7.5本章小结 137
7.6本章习题 138
第8章 函数(教学视频:56分钟) 140
8.1数值类型函数 140
8.1.1绝对值函数abs 140
8.1.2取余数函数mod 141
8.1.3求平方根函数sqrt 141
8.1.4获取随机数的函数rand 142
8.1.5四舍五入函数round 142
8.1.6符号函数sign 142
8.1.7幂运算函数power 143
8.1.8对数运算函数log 143
8.1.9 pi函数 144
8.1.10三角函数 144
8.1.11获取最小整数ceil、ceiling 144
8.2字符串函数 145
8.2.1合并字符串的函数concat 145
8.2.2计算字符串长度的函数length 145
8.2.3字母小写转大写函数upper 146
8.2.4字母大写转小写函数lower 146
8.2.5获取指定长度的字符串的函数left和right 147
8.2.6填充字符串的函数lpad和rpad 147
8.2.7删除指定字符的函数trim 147
8.2.8删除字符串两端空格函数ltrim, rtrim 148
8.2.9重复生成字符串的函数repeat 148
8.2.10空格函数space 149
8.2.11替换函数replace 149
8.2.12替换字符串的函数insert 149
8.2.13比较字符串大小的函数strcmp 149
8.2.14获取子串的函数substring 150
8.2.15 字符串逆序的函数reverse 151
8.2.16返回指定字符串位置的函数field 151
8.3日期和时间函数 151
8.3.1返回指定日期对应的工作日索引dayofweek和weekday 151
8.3.2返回指定日期所在月中的日期索引dayofmonth 152
8.3.3返回指定日期所在年中的日期索引dayofyear 152
8.3.4返回指定日期对应的月份month 153
8.3.5返回指定日期对应的月名称monthname 153
8.3.6返回指定日期对应的工作日名称dayname 154
8.3.7返回指定日期对应的季度quarter 154
8.3.8返回指定日期对应的年份year 154
8.3.9返回指定时间中的小时hour 155
8.3.10返回指定时间中的分钟minute 155
8.3.11返回指定时间中的秒数second 155
8.3.12增加月份函数period add 156
8.3.13取月份差的函数period diff 156
8.3.14返回当前日期函数curdate和current date 157
8.3.15 返回当前时间函数curtime和current time 157
8.3.16获取当前的时间日期函数now和sysdate 157
8.3.17秒转换成时间函数sec to time 158
8.3.18时间转换成秒函数time to sec 158
8.4其他函数 158
8.4.1返回当前用户名函数session user 158
8.4.2返回当前数据库名称函数database 159
8.4.3返回字符串MD5校验和函数MD5 159
8.5本章小结 159
8.6本章习题 160
第3篇 数据库使用进阶 162
第9章 视图(教学视频:23分钟) 162
9.1视图介绍 162
9.2创建视图 162
9.2.1创建视图语法 163
9.2.2单源表视图的创建 163
9.2.3多源表视图的创建 165
9.3修改视图 167
9.3.1修改视图语法 168
9.3.2使用语句更新视图 168
9.3.3使用工具更新视图 168
9.4删除视图 170
9.4.1使用SQL语句删除视图 170
9.4.2使用工具删除视图 170
9.5查看视图 171
9.5.1查看视图的字段信息 171
9.5.2查看创建视图的语句 172
9.6本章小结 173
9.7本章习题 173
第10章 索引(教学视频:21分钟) 175
10.1认识索引 175
10.1.1什么是索引 175
10.1.2索引分类 175
10.1.3索引的作用 176
10.1.4索引注意事项 176
10.2管理索引 176
10.2.1普通索引创建 176
10.2.2唯一索引创建 178
10.2.3主键索引创建 179
10.2.4查看索引 180
10.2.5删除索引 181
10.3本章小结 182
10.4本章习题 182
第11章 自定义函数(教学视频:30分钟) 184
11.1创建自定义函数 184
11.1.1创建函数的语法 184
11.1.2使用语句创建函数 184
11.1.3使用图形界面创建函数 188
11.2函数的管理 189
11.2.1使用命令删除函数 189
11.2.2图形界面下删除函数 190
11.2.3图形界面下修改函数 191
11.3本章小结 193
11.4本章习题 193
第12章 存储过程(教学视频:35分钟) 194
12.1存储过程介绍 194
12.2创建存储过程 195
12.2.1存储过程的语法 195
12.2.2命令行中创建存储过程 195
12.2.3利用工具创建存储过程 196
12.2.4存储过程的参数 198
12.3修改存储过程 201
12.4删除存储过程 202
12.5存储过程中的变量 204
12.6结构控制语句 205
12.6.1 IF条件控制语句 205
12.6.2 CASE条件控制语句 206
12.6.3 LOOP循环控制语句 210
12.6.4 WHILE语句的使用 211
12.7本章小结 213
12.8本章习题 213
第13章 触发器(教学视频:23分钟) 215
13.1触发器介绍 215
13.2创建触发器 215
13.2.1触发器语法 216
13.2.2触发器组成和触发事件 216
13.2.3利用SQL命令创建触发器 216
13.2.4利用图形工具创建触发器 222
13.3管理触发器 225
13.3.1触发器的删除 225
13.3.2触发器的修改 226
13.4本章小结 228
13.5本章习题 228
第14章 数据库的权限与备份(教学视频:27分钟) 229
14.1用户管理 229
14.1.1初始用户 229
14.1.2创建用户 235
14.1.3用户权限 236
14.2数据的备份与恢复 239
14.2.1备份操作 240
14.2.2恢复操作 242
14.3本章小结 243
14.4本章习题 244
第4篇 数据库应用实战 246
第15章 使用C#连接MySQL(教学视频:26分钟) 246
15.1 ADO.NET介绍 246
15.1.1详解5个重要的类 246
15.1.2使用C#语言对MySQL数据库进行操作 249
15.2学员报名系统的实现 250
15.2.1学员报名的数据表设计 250
15.2.2创建项目结构 251
15.2.3添加学员信息 251
15.2.4管理学员信息 253
15.3本章小结 258
第16章 在Java中连接MySQL(教学视频:23分钟) 259
16.1 JDBC简介 259
16.2使用JDBC Driver连接MySQL 260
16.2.1下载连接MySQL数据库的JDBC Driver 260
16.2.2利用JDBC Driver连接MySQL数据库 262
16.3利用JDBC-ODBC桥接数据库 268
16.3.1配置ODBC数据源 268
16.3.2使用JDBC-ODBC桥连接MySQL 271
16.4本章小结 272
第17章 PHP访问MySQL数据库(教学视频:32分钟) 273
17.1 PHP连接MySQL数据库 273
17.1.1 Windows操作系统下配置PHP 273
17.1.2 Linux操作系统下配置PHP 275
17.1.3连接MySQL数据库 276
17.2 PHP操作MySQL数据库 277
17.2.1执行SQL语句 277
17.2.2处理查询结果 278
17.2.3获取查询结果的字段名 279
17.2.4一次执行多个SQL语句 280
17.2.5处理带参数的SQL语句 281
17.2.6关闭创建的对象 282
17.3 PHP备份与还原MySQL数据库 282
17.3.1 PHP备份MySQL数据库 282
17.3.2 PHP还原MySQL数据库 283
17.4本章小结 283
第18章 学员管理系统(教学视频:30分钟) 284
18.1系统概述 284
18.2系统功能 284
18.3数据库设计 285
18.3.1设计表 286
18.3.2设计索引 291
18.3.3设计视图 292
18.3.4设计触发器 292
18.4系统实现 293
18.4.1构建工程 294
18.4.2访问和操作MySQL数据库的代码 294
18.5用户管理模块 296
18.5.1用户登录功能 296
18.5.2修改密码 298
18.6学籍管理模块 299
18.6.1添加学员的学籍信息 299
18.6.2查询学员的学籍信息 300
18.6.3修改学员的学籍信息 301
18.6.4删除学员的学籍信息 301
18.7体检管理模块 301
18.8成绩管理模块 303
18.9证书管理模块 304
18.10本章小结 306
第5篇 拓展技术 308
第19章 MySQL日志(教学视频:22分钟) 308
19.1日志简介 308
19.2二进制日志 309
19.2.1启动和设置二进制日志 309
19.2.2查看二进制日志 310
19.2.3删除二进制日志 310
19.2.4使用二进制日志还原数据库 311
19.2.5暂时停止二进制日志功能 312
19.3错误日志 312
19.3.1启动和设置错误日志 312
19.3.2查看错误日志 313
19.3.3删除错误日志 314
19.4通用查询日志 314
19.4.1启动和设置通用查询日志 314
19.4.2查看通用查询日志 314
19.4.3删除通用查询日志 315
19.5慢查询日志 315
19.5.1启动和设置慢查询日志 316
19.5.2查看慢查询日志 316
19.5.3删除慢查询日志 316
19.6本章实例 317
19.9本章小结 320
第20章 性能优化(教学视频:30分钟) 321
20.1优化简介 321
20.2优化查询 322
20.2.1分析查询语句 322
20.2.2索引对查询速度的影响 323
20.2.3使用索引查询 324
20.2.4优化子查询 327
20.3优化数据库结构 327
20.3.1将字段很多的表分解成多个表 327
20.3.2增加中间表 327
20.3.3增加冗余字段 328
20.3.4优化插入记录的速度 329
20.3.5分析表、检查表和优化表 330
20.4优化MySQL服务器 331
20.4.1优化服务器硬件 331
20.4.2优化MySQL的参数 332
20.5本章实例 333
20.8本章小结 334
附录A MySQL常用命令 335