MySQL数据库基础与实践(第2版) / 面向新工科普通高等教育系列教材
¥79.00定价
作者: 夏辉,杨伟吉,李松平
出版时间:2025-02-25
出版社:机械工业出版社
- 机械工业出版社
- 9787111773030
- 2-1
- 547184
- 平装
- 2025-02-25
- 512
内容简介
本书从数据库基础知识讲起,内容包括数据库设计概述、关系型数据库设计原则、SQL语言基础等,逐步深入介绍MySQL数据库的高级特性和应用技巧,如索引优化、查询优化、事务管理,数据表数据的增、删、改操作,数据查询,常用函数,索引,视图,数据完整性约束,存储过程与存储函数,触发器,事务,事件,备份与恢复等,最后提供了一个综合案例,介绍使用Java和MySQL实现物流管理系统。书中所有知识都结合具体实例进行介绍,涉及的程序代码也给出了详细的注释,帮助读者轻松掌握MySQL的核心概念,快速提高开发技能。
本书提供的资源包括程序的源代码、多媒体教学PPT和课后习题答案。其中,源代码全部经过测试,能够在Windows 10操作系统上编译和运行。
本书既可作为高等学校计算机软件技术课程的教材,也可作为管理信息系统开发人员的技术参考书。
本书提供的资源包括程序的源代码、多媒体教学PPT和课后习题答案。其中,源代码全部经过测试,能够在Windows 10操作系统上编译和运行。
本书既可作为高等学校计算机软件技术课程的教材,也可作为管理信息系统开发人员的技术参考书。
目录
前言
第1章 数据库设计基础1
1.1 数据库设计概述1
1.1.1 关系数据库概述2
1.1.2 结构化查询语言2
1.1.3 数据库设计的基本步骤3
1.2 关系模型5
1.2.1 数据库和表6
1.2.2 列和行6
1.2.3 主键与外键6
1.2.4 约束7
1.3 E-R图9
1.3.1 实体和属性9
1.3.2 实体与属性之间的关系10
1.3.3 E-R图的设计原则11
本章小结12
实践与练习12
实验指导:E-R图的设计与画法13
第2章 MySQL数据库基础16
2.1 MySQL数据库概述16
2.1.1 MySQL概述16
2.1.2 MySQL体系结构17
2.2 MySQL数据库安装和配置18
2.2.1 MySQL的安装18
2.2.2 启动和停止服务25
2.2.3 将MySQL加入环境变量26
2.2.4 连接MySQL服务器27
2.2.5 MySQL可视化操作工具28
2.3 MySQL数据库的基本操作30
2.3.1 创建数据库30
2.3.2 查看数据库31
2.3.3 显示数据库31
2.3.4 选择当前数据库32
2.3.5 删除数据库32
2.4 MySQL表结构的操作32
2.4.1 创建数据表32
2.4.2 查看表结构34
2.4.3 修改表结构35
2.4.4 删除数据库表38
2.5 MySQL存储引擎38
2.5.1 InnoDB存储引擎39
2.5.2 MyISAM存储引擎39
2.5.3 存储引擎的选择39
2.6 案例:网上书店系统40
本章小结43
实践与练习43
实验指导:学生选课系统数据库设计44
第3章 MySQL管理表记录47
3.1 MySQL基本数据类型47
3.1.1 整数类型48
3.1.2 小数类型50
3.1.3 字符串类型51
3.1.4 日期时间类型52
3.1.5 复合类型55
3.1.6 二进制类型56
3.2 MySQL运算符56
3.2.1 算术运算符57
3.2.2 比较运算符58
3.2.3 逻辑运算符59
3.2.4 位运算符60
3.2.5 运算符优先级61
3.3 字符集设置61
3.3.1 MySQL字符集与字符排序规则61
3.3.2 MySQL字符集的设置63
3.4 增添表记录64
3.4.1 INSERT语句64
3.4.2 REPLACE语句68
3.5 修改表记录69
3.6 删除表记录69
3.6.1 DELETE—删除表记录69
3.6.2 TRUNCATE—清空表记录70
3.7 案例:图书管理系统中表记录的操作72
本章小结76
实践与练习76
实验指导:MySQL数据库基本操作78
第4章 检索表记录81
4.1 SELECT基本查询81
4.1.1 SELECT…FROM查询语句81
4.1.2 查询指定字段信息82
4.1.3 关键字DISTINCT的使用83
4.1.4 ORDER BY子句的使用84
4.1.5 LIMIT子句的使用84
4.2 条件查询85
4.2.1 使用关系表达式查询85
4.2.2 使用逻辑表达式查询86
4.2.3 设置取值范围的查询87
4.2.4 空值查询87
4.2.5 模糊查询87
4.3 分组查询88
4.3.1 GROUP BY子句89
4.3.2 HAVING子句90
4.4 表的连接91
4.4.1 内连接91
4.4.2 外连接93
4.4.3 自连接94
4.4.4 交叉连接95
4.5 子查询95
4.5.1 返回单行的子查询95
4.5.2 返回多行的子查询96
4.5.3 子查询与数据更新98
4.6 联合查询100
4.7 案例:网上书店系统综合查询101
本章小结103
实践与练习103
实验指导:学生选课系统数据库检索104
第5章 视图和触发器106
5.1 视图107
5.1.1 创建视图108
5.1.2 查看视图113
5.1.3 管理视图115
5.1.4 使用视图116
5.2 触发器119
5.2.1 创建并使用触发器120
5.2.2 查看触发器122
5.2.3 删除触发器123
5.2.4 触发器的应用123
5.3 案例:在删除分类时自动删除分类对应的消息记录127
本章小结132
实践与练习132
实验指导:视图、触发器的创建与管理133
第6章 事务管理136
6.1 事务机制概述136
6.2 事务的提交和回滚138
6.2.1 事务的提交138
6.2.2 事务的回滚140
6.3 事务的四大特性和隔离级别142
6.3.1 事务的四大特性142
6.3.2 事务的隔离级别144
6.4 解决多用户使用问题145
6.4.1 脏读145
6.4.2 不可重复读147
6.4.3 幻读148
6.5 案例:银行转账业务的事务处理149
本章小结151
实践与练习152
实验指导:MySQL中的事务管理153
第7章 MySQL连接器JDBC和连接池155
7.1 JDBC概述155
7.2 JDBC连接过程156
7.3 JDBC对象的数据库操作161
7.3.1 增加数据161
7.3.2 修改数据163
7.3.3 删除数据163
7.3.4 查询数据164
7.3.5 批处理165
7.4 开源连接池167
7.5 案例:分页查询大型数据库169
本章小结172
实践与练习173
实验指导:学生选课系统数据库操作174
第8章 Hibernate框架177
8.1 Hibernate概述177
8.2 Hibernate原理和工作流程178
8.3 Hibernate的核心组件180
8.3.1 Configuration接口180
8.3.2 sessionFactory接口181
8.3.3 Session接口181
8.3.4 Transaction接口182
8.3.5 Query接口183
8.3.6 Criteria接口185
8.4 Hibernate框架的配置过程187
8.4.1 导入相关jar包187
8.4.2 创建数据库及表187
8.4.3 创建实体类(持久化类)188
8.4.4 配置映射文件189
8.4.5 配置主配置文件190
8.4.6 编写数据库操作191
8.5 Hibernate的关系映射199
8.6 案例:人事管理系统数据库203
本章小结210
实践与练习210
实验指导:Hibernate框架的持久层数据操作211
第9章 事件和数据管理214
9.1 事件概述214
9.1.1 查看事件是否开启215
9.1.2 开启事件216
9.1.3 创建事件217
9.1.4 查看事件219
9.1.5 修改事件220
9.1.6 删除事件222
9.2 数据库备份与还原223
9.2.1 数据的备份223
9.2.2 数据的还原225
9.3 MySQL的用户管理227
9.3.1 数据库用户管理227
9.3.2 用户权限设置230
9.4 案例:数据库备份与恢复233
本章小结241
实践与练习241
实验指导:数据库安全管理242
第10章 常见函数和存储过程244
10.1 常见函数244
10.1.1 数学函数244
10.1.2 字符串函数249
10.1.3 时间日期函数254
10.1.4 数据类型转换函数257
10.1.5 流程控制函数258
10.1.6 系统信息函数259
10.2 存储过程259
10.2.1 存储过程的优点和缺点259
10.2.2 存储过程的用法260
本章小结262
实践与练习262
实验指导:数据库的内置函数和存储过程264
第11章 物流管理系统266
11.1 系统需求分析266
11.2 相关技术267
11.2.1 需求工程267
11.2.2 ARIS模型267
11.2.3 多层软件结构体系268
11.2.4 Hibernate框架269
11.3 持久层的实现270
11.3.1 持久化类文件270
11.3.2 基础配置文件271
11.4 业务逻辑层的实现272
11.4.1 逻辑对象封装272
11.4.2 逻辑接口272
11.4.3 逻辑组件配置273
11.5 表示层的实现273
11.5.1 过滤器设置273
11.5.2 实现过程274
11.6 数据表设计274
11.7 数据库表创建278
11.8 系统实现
11.8.1 业务流程
11.8.2 系统登录
11.8.3 托运方平台
11.8.4 承运方平台
本章小结
参考文献
第1章 数据库设计基础1
1.1 数据库设计概述1
1.1.1 关系数据库概述2
1.1.2 结构化查询语言2
1.1.3 数据库设计的基本步骤3
1.2 关系模型5
1.2.1 数据库和表6
1.2.2 列和行6
1.2.3 主键与外键6
1.2.4 约束7
1.3 E-R图9
1.3.1 实体和属性9
1.3.2 实体与属性之间的关系10
1.3.3 E-R图的设计原则11
本章小结12
实践与练习12
实验指导:E-R图的设计与画法13
第2章 MySQL数据库基础16
2.1 MySQL数据库概述16
2.1.1 MySQL概述16
2.1.2 MySQL体系结构17
2.2 MySQL数据库安装和配置18
2.2.1 MySQL的安装18
2.2.2 启动和停止服务25
2.2.3 将MySQL加入环境变量26
2.2.4 连接MySQL服务器27
2.2.5 MySQL可视化操作工具28
2.3 MySQL数据库的基本操作30
2.3.1 创建数据库30
2.3.2 查看数据库31
2.3.3 显示数据库31
2.3.4 选择当前数据库32
2.3.5 删除数据库32
2.4 MySQL表结构的操作32
2.4.1 创建数据表32
2.4.2 查看表结构34
2.4.3 修改表结构35
2.4.4 删除数据库表38
2.5 MySQL存储引擎38
2.5.1 InnoDB存储引擎39
2.5.2 MyISAM存储引擎39
2.5.3 存储引擎的选择39
2.6 案例:网上书店系统40
本章小结43
实践与练习43
实验指导:学生选课系统数据库设计44
第3章 MySQL管理表记录47
3.1 MySQL基本数据类型47
3.1.1 整数类型48
3.1.2 小数类型50
3.1.3 字符串类型51
3.1.4 日期时间类型52
3.1.5 复合类型55
3.1.6 二进制类型56
3.2 MySQL运算符56
3.2.1 算术运算符57
3.2.2 比较运算符58
3.2.3 逻辑运算符59
3.2.4 位运算符60
3.2.5 运算符优先级61
3.3 字符集设置61
3.3.1 MySQL字符集与字符排序规则61
3.3.2 MySQL字符集的设置63
3.4 增添表记录64
3.4.1 INSERT语句64
3.4.2 REPLACE语句68
3.5 修改表记录69
3.6 删除表记录69
3.6.1 DELETE—删除表记录69
3.6.2 TRUNCATE—清空表记录70
3.7 案例:图书管理系统中表记录的操作72
本章小结76
实践与练习76
实验指导:MySQL数据库基本操作78
第4章 检索表记录81
4.1 SELECT基本查询81
4.1.1 SELECT…FROM查询语句81
4.1.2 查询指定字段信息82
4.1.3 关键字DISTINCT的使用83
4.1.4 ORDER BY子句的使用84
4.1.5 LIMIT子句的使用84
4.2 条件查询85
4.2.1 使用关系表达式查询85
4.2.2 使用逻辑表达式查询86
4.2.3 设置取值范围的查询87
4.2.4 空值查询87
4.2.5 模糊查询87
4.3 分组查询88
4.3.1 GROUP BY子句89
4.3.2 HAVING子句90
4.4 表的连接91
4.4.1 内连接91
4.4.2 外连接93
4.4.3 自连接94
4.4.4 交叉连接95
4.5 子查询95
4.5.1 返回单行的子查询95
4.5.2 返回多行的子查询96
4.5.3 子查询与数据更新98
4.6 联合查询100
4.7 案例:网上书店系统综合查询101
本章小结103
实践与练习103
实验指导:学生选课系统数据库检索104
第5章 视图和触发器106
5.1 视图107
5.1.1 创建视图108
5.1.2 查看视图113
5.1.3 管理视图115
5.1.4 使用视图116
5.2 触发器119
5.2.1 创建并使用触发器120
5.2.2 查看触发器122
5.2.3 删除触发器123
5.2.4 触发器的应用123
5.3 案例:在删除分类时自动删除分类对应的消息记录127
本章小结132
实践与练习132
实验指导:视图、触发器的创建与管理133
第6章 事务管理136
6.1 事务机制概述136
6.2 事务的提交和回滚138
6.2.1 事务的提交138
6.2.2 事务的回滚140
6.3 事务的四大特性和隔离级别142
6.3.1 事务的四大特性142
6.3.2 事务的隔离级别144
6.4 解决多用户使用问题145
6.4.1 脏读145
6.4.2 不可重复读147
6.4.3 幻读148
6.5 案例:银行转账业务的事务处理149
本章小结151
实践与练习152
实验指导:MySQL中的事务管理153
第7章 MySQL连接器JDBC和连接池155
7.1 JDBC概述155
7.2 JDBC连接过程156
7.3 JDBC对象的数据库操作161
7.3.1 增加数据161
7.3.2 修改数据163
7.3.3 删除数据163
7.3.4 查询数据164
7.3.5 批处理165
7.4 开源连接池167
7.5 案例:分页查询大型数据库169
本章小结172
实践与练习173
实验指导:学生选课系统数据库操作174
第8章 Hibernate框架177
8.1 Hibernate概述177
8.2 Hibernate原理和工作流程178
8.3 Hibernate的核心组件180
8.3.1 Configuration接口180
8.3.2 sessionFactory接口181
8.3.3 Session接口181
8.3.4 Transaction接口182
8.3.5 Query接口183
8.3.6 Criteria接口185
8.4 Hibernate框架的配置过程187
8.4.1 导入相关jar包187
8.4.2 创建数据库及表187
8.4.3 创建实体类(持久化类)188
8.4.4 配置映射文件189
8.4.5 配置主配置文件190
8.4.6 编写数据库操作191
8.5 Hibernate的关系映射199
8.6 案例:人事管理系统数据库203
本章小结210
实践与练习210
实验指导:Hibernate框架的持久层数据操作211
第9章 事件和数据管理214
9.1 事件概述214
9.1.1 查看事件是否开启215
9.1.2 开启事件216
9.1.3 创建事件217
9.1.4 查看事件219
9.1.5 修改事件220
9.1.6 删除事件222
9.2 数据库备份与还原223
9.2.1 数据的备份223
9.2.2 数据的还原225
9.3 MySQL的用户管理227
9.3.1 数据库用户管理227
9.3.2 用户权限设置230
9.4 案例:数据库备份与恢复233
本章小结241
实践与练习241
实验指导:数据库安全管理242
第10章 常见函数和存储过程244
10.1 常见函数244
10.1.1 数学函数244
10.1.2 字符串函数249
10.1.3 时间日期函数254
10.1.4 数据类型转换函数257
10.1.5 流程控制函数258
10.1.6 系统信息函数259
10.2 存储过程259
10.2.1 存储过程的优点和缺点259
10.2.2 存储过程的用法260
本章小结262
实践与练习262
实验指导:数据库的内置函数和存储过程264
第11章 物流管理系统266
11.1 系统需求分析266
11.2 相关技术267
11.2.1 需求工程267
11.2.2 ARIS模型267
11.2.3 多层软件结构体系268
11.2.4 Hibernate框架269
11.3 持久层的实现270
11.3.1 持久化类文件270
11.3.2 基础配置文件271
11.4 业务逻辑层的实现272
11.4.1 逻辑对象封装272
11.4.2 逻辑接口272
11.4.3 逻辑组件配置273
11.5 表示层的实现273
11.5.1 过滤器设置273
11.5.2 实现过程274
11.6 数据表设计274
11.7 数据库表创建278
11.8 系统实现
11.8.1 业务流程
11.8.2 系统登录
11.8.3 托运方平台
11.8.4 承运方平台
本章小结
参考文献