本书内容主要包括MySQL数据库系统、MySQL语言结构、数据定义语言、数据操纵语言、数据查询语言、视图和索引、完整性约束、存储过程和存储函数、触发器和事件、权限管理和安全控制、备份和恢复、事务和并发控制、PHP和MySQL学生成绩管理系统开发。在相应章后附有相关实验。本书理论与实践相结合。 本书既可以作为高等院校相关专业学生的教材,也可以作为数据库考试人员、数据库应用系统开发设计人员、工程技术人员和其他相关人员的参考用书。
赵明渊,男,电子科技大学计算机应用技术专业博士,教授,中国农业银行四川省分行计算机高级工程师,国务院颁发证书的享受政府特殊津贴的专家。
目录
第1章 MySQL数据库系统\t1
1.1 数据库的应用\t1
1.2 数据库的基本概念\t1
1.2.1 数据库\t2
1.2.2 数据库管理系统\t2
1.2.3 数据库系统\t2
1.3 数据模型\t4
1.3.1 数据模型的概念和类型\t4
1.3.2 概念模型的概念和表示方法\t5
1.3.3 逻辑模型概述\t6
1.4 关系数据库\t8
1.4.1 关系数据库的基本概念\t8
1.4.2 关系运算\t9
1.4.3 概念结构设计和逻辑结构设计\t10
1.5 MySQL数据库管理系统\t13
1.5.1 MySQL的特点\t13
1.5.2 MySQL 8.0的新特性\t14
1.5.3 MySQL 8.0安装\t15
1.5.4 MySQL 8.0配置\t17
1.6 启动、关闭和登录MySQL服务器\t21
1.6.1 启动和关闭MySQL服务器\t22
1.6.2 登录MySQL服务器\t23
1.7 大数据简介\t24
1.7.1 大数据的基本概念\t24
1.7.2 大数据的处理过程\t26
1.7.3 NoSQL数据库\t27
小结\t29
习题1\t30
实验1\t32
?
第2章 MySQL语言结构\t37
2.1 SQL简介\t37
2.1.1 SQL的特点\t37
2.1.2 SQL的分类\t38
2.2 MySQL组成\t39
2.3 数据类型\t39
2.3.1 数值类型\t39
2.3.2 字符串类型\t41
2.3.3 日期和时间类型\t41
2.3.4 二进制数据类型\t41
2.3.5 其他数据类型\t42
2.3.6 数据类型的选择\t42
2.4 常量和变量\t42
2.4.1 常量\t42
2.4.2 变量\t45
2.5 运算符和表达式\t48
2.5.1 算术运算符\t48
2.5.2 比较运算符\t49
2.5.3 逻辑运算符\t50
2.5.4 位运算符\t51
2.5.5 运算符的优先级\t51
2.5.6 表达式\t52
2.6 MySQL函数\t52
2.6.1 数学函数\t52
2.6.2 字符串函数\t54
2.6.3 日期和时间函数\t56
2.6.4 其他函数\t57
小结\t58
习题2\t59
实验2\t60
第3章 数据定义语言\t62
3.1 数据定义语言概述\t62
3.2 MySQL数据库的基本概念\t62
3.3 创建MySQL数据库\t63
3.3.1 创建数据库\t63
3.3.2 选择数据库\t64
3.3.3 修改数据库\t65
3.3.4 删除数据库\t65
3.4 表的基本概念\t66
3.4.1 表和表结构\t66
3.4.2 表结构设计\t67
3.5 创建MySQL表\t68
3.5.1 创建表\t68
3.5.2 查看表\t70
3.5.3 修改表\t71
3.5.4 删除表\t74
3.6 存储引擎\t75
3.6.1 存储引擎概述\t75
3.6.2 常用存储引擎\t75
3.6.3 选择存储引擎\t76
小结\t77
习题3\t78
实验3\t80
第4章 数据操纵语言\t86
4.1 数据操纵语言概述\t86
4.2 使用INSERT语句插入数据\t86
4.2.1 向表中的所有列插入数据\t86
4.2.2 向表中的指定列插入数据\t88
4.2.3 插入多条记录\t88
4.2.4 REPLACE语句\t89
4.2.5 插入查询结果语句\t89
4.3 使用UPDATE语句修改数据\t90
4.3.1 修改指定记录\t90
4.3.2 修改全部记录\t91
4.4 使用DELETE语句删除数据\t91
4.4.1 删除指定记录\t92
4.4.2 删除全部记录\t92
小结\t93
习题4\t94
实验4\t95
第5章 数据查询语言\t100
5.1 数据查询语言概述\t100
5.2 单表查询\t101
5.2.1 SELECT子句的使用\t101
5.2.2 WHERE子句的使用\t103
5.2.3 GROUP BY子句和HAVING子句的使用\t108
5.2.4 ORDER BY子句和LIMIT子句的使用\t111
5.3 多表查询\t113
5.3.1 连接查询\t113
5.3.2 子查询\t119
5.3.3 联合查询\t122
小结\t123
习题5\t124
实验5\t126
第6章 视图和索引\t132
6.1 视图的功能\t132
6.2 视图操作\t132
6.2.1 创建视图\t132
6.2.2 修改视图定义\t134
6.2.3 删除视图\t134
6.3 视图的应用\t135
6.3.1 查询视图\t135
6.3.2 更新视图数据\t136
6.4 索引的功能、分类和使用\t139
6.5 索引操作\t141
6.5.1 创建索引\t141
6.5.2 查看表上创建的索引\t143
6.5.3 删除索引\t145
小结\t145
习题6\t146
实验6\t148
第7章 完整性约束\t151
7.1 数据完整性的基本概念\t151
7.2 PRIMARY KEY约束\t153
7.3 UNIQUE约束\t155
7.4 FOREIGN KEY约束\t157
7.5 CHECK约束\t160
7.6 NOT NULL约束\t162
小结\t162
习题7\t163
实验7\t164
第8章 存储过程和存储函数\t168
8.1 存储过程的基本概念\t168
8.2 存储过程操作\t169
8.2.1 创建存储过程\t169
8.2.2 DELIMITER命令\t170
8.2.3 局部变量\t171
8.2.4 流程控制\t172
8.2.5 游标的使用\t178
8.2.6 存储过程的调用\t180
8.2.7 存储过程的删除\t182
8.3 存储函数的基本概念\t182
8.4 存储函数操作\t182
8.4.1 创建存储函数\t183
8.4.2 调用存储函数\t183
8.4.3 删除存储函数\t184
小结\t184
习题8\t185
实验8\t186
第9章 触发器和事件\t191
9.1 触发器的基本概念\t191
9.2 触发器操作\t191
9.2.1 创建触发器\t191
9.2.2 使用触发器\t192
9.2.3 删除触发器\t195
9.3 事件的基本概念\t195
9.4 事件操作\t196
9.4.1 创建事件\t196
9.4.2 修改事件\t198
9.4.3 删除事件\t198
小结\t199
习题9\t199
实验9\t200
第10章 权限管理和安全控制\t204
10.1 MySQL权限系统\t204
10.1.1 MySQL权限系统工作过程\t204
10.1.2 MySQL权限表\t205
10.2 用户管理\t205
10.2.1 创建用户\t206
10.2.2 删除用户\t207
10.2.3 修改用户账号\t207
10.2.4 修改用户口令\t207
10.3 权限管理\t208
10.3.1 授予权限\t208
10.3.2 权限的撤销\t212
小结\t213
习题10\t214
实验10\t215
第11章 备份和恢复\t217
11.1 备份和恢复的基本概念\t217
11.2 导出表数据和备份数据\t217
11.2.1 导出表数据\t218
11.2.2 mysqldump命令用于备份数据\t219
11.3 导入表数据和恢复数据\t223
11.3.1 导入表数据\t223
11.3.2 mysql命令用于恢复数据\t225
小结\t225
习题11\t226
实验11\t227
第12章 事务和并发控制\t229
12.1 事务的概念和特性\t229
12.1.1 事务的概念\t229
12.1.2 事务的特性\t229
12.2 事务控制语句\t230
12.3 事务的并发处理\t234
12.4 管理锁\t235
12.4.1 锁机制\t235
12.4.2 锁的级别\t236
12.4.3 死锁\t237
小结\t238
习题12\t239
第13章 PHP和MySQL学生成绩管理系统开发\t240
13.1 PHP简介\t240
13.1.1 PHP的基本概念和特点\t240
13.1.2 PHP的运行环境\t241
13.1.3 PHP的运行过程\t242
13.2 创建学生成绩管理系统数据库\t243
13.3 搭建PHP开发环境\t244
13.3.1 PHP集成软件开发环境的搭建\t244
13.3.2 PHP开发工具\t246
13.4 学生成绩管理系统开发\t251
13.4.1 主界面开发\t251
13.4.2 学生管理界面和功能实现\t253
13.4.3 课程管理界面和功能实现\t258
13.4.4 成绩管理界面和功能实现\t262
小结\t268
习题13\t269
附录A 销售数据库sales的表结构和样本数据\t270
附录B 习题参考答案\t273
参考文献\t274