MySQL数据库设计与应用
书 号:9787113274269
丛 书 名:“十四五”高等职业教育规划教材
作 者:张成叔
译 者:
开 本:16开
装 帧:平装
正文语种:汉文
出 版 社:中国铁道出版社有限公司
定 价:49.8元
-
内容简介
本书以数据库设计为主线,以“增、删、改、查”为核心技能,通过“教学做一体化”的内容体系、“项目案例一体化”的技能体系和“新形态一体化”的展示形式,将“理论+实训”高度融合,实现了“教—学—做”的有机结合,进一步提高学生学习的积极性。
本书以MySQL数据库为平台,内容共分3个部分:基础技能部分(第1~6章)、提升技能部分(第8~11章)和综合技能部分(第7章和第12章)。本书主要内容包括认识数据库和部署MySQL环境,创建和管理数据库,创建和管理数据表,用SQL语句操作数据表,单表查询和模糊查询,分组查询和多表查询,阶段项目——QQ数据库管理,索引、视图和事务,存储过程,管理和维护数据库,数据库设计与优化,课程项目——银行ATM系统数据库的设计与实现。
本书配套有微课视频、课程标准、授课计划、电子教案、授课用PPT、课后习题解析、项目案例及源代码等数字化资源,本书配套的大规模在线开放课程将在“智慧职教MOOC学院”(网址:https://mooc.icve.com.cn)上线,授课教师可以通过本课程构建符合自身教学特点和要求的SPOC课程,各位读者可以通过链接或者在“智慧职教MOOC学院”中搜索课程名称学习。
本书参考了“1+X”职业技能等级证书“Web前端开发”标准,适合作为高等职业院校数据库类课程的教材,也适合作为“Web前端开发”职业技能等级证书的考证培训用书。 -
前言
-
目录
第1章?认识数据库和部署MySQL
环境 1
1.1 认识数据库系统 2
1.1.1 数据库基本概念 2
1.1.2 常用数据库 3
1.2 认识MySQL 4
1.2.1 MySQL简介 4
1.2.2 MySQL版本 4
1.3 安装和配置MySQL服务器 5
1.3.1 下载MySQL 5
1.3.2 安装MySQL 6
1.3.3 配置MySQL 10
【技能训练1-1】在自己的计算机
上下载、安装和配置MySQL 17
1.4 MySQL图形化管理工具 18
1.4.1 MySQL Workbench 18
1.4.2 Navicat for MySQL 19
1.4.3 SQLyog 20
1.4.4 phpMyAdmin 20
小结 20
习题 21
第2章?创建和管理数据库 23
2.1 连接MySQL服务器 24
2.1.1 字符集和校对规则 24
2.1.2 启动MySQL服务 24
2.1.3 连接MySQL服务器 27
2.1.4 设置MySQL字符集 27
【技能训练2-1】在自己计算机上启动
和连接服务器并修改字符集 29
2.2 使用Workbench连接登录
MySQL服务器 29
【技能训练2-2】使用Workbench登录
到自己计算机的MySQL服务器 33
2.3 创建和管理SchoolDB数据库 34
2.3.1 创建数据库 34
【技能训练2-3】创建SchoolDB
数据库 39
2.3.2 管理数据库 40
【技能训练2-4】管理SchoolDB
数据库 41
小结 42
习题 42
第3章?创建和管理数据表 44
3.1 数据表的完整性 45
3.1.1 实体和记录 45
3.1.2 数据完整性 46
3.1.3 主键和外键 47
3.2 创建和管理数据表 47
3.2.1 数据类型 47
3.2.2 创建数据表 51
【技能训练3-1】创建SchoolDB数据库
中的数据表 56
3.2.3 管理数据表 57
3.3 完善数据表的结构设计 60
3.3.1 非空约束 61
3.3.2 唯一约束 61
3.3.3 主键约束 63
【技能训练3-2】为SchoolDB数据库中的
3张数据表设置非空、唯一和主键约束 65
3.3.4 默认值约束 66
3.3.5 检查约束 66
【技能训练3-3】为SchoolDB数据库中的
两张数据表设置检查约束 68
3.4 建立数据表间关系 68
3.4.1 数据表间的关系图和关系表 68
3.4.2 设置外键约束 69
【技能训练3-4】为SchoolDB数据库中的
3张数据表设置外键约束 71
小结 72
习题 72
第4章?用SQL语句操作数据表 75
4.1 SQL概述 76
4.1.1 SQL简介 76
4.1.2 SQL组成 76
4.2 MySQL运算符 77
4.2.1 算术运算符 77
4.2.2 关系运算符 78
4.2.3 逻辑运算符 79
4.2.4 赋值运算符 80
4.3 插入数据 80
4.3.1 插入单条记录 80
【技能训练4-1】在SchoolDB数据库中,
为课程表Subject插入数据 82
4.3.2 插入多条记录 84
【技能训练4-2】在SchoolDB数据库中,
为成绩表Result插入数据 86
4.3.3 插入查询的结果 89
4.4 使用UPDATE语句修改数据 90
【技能训练4-3】在SchoolDB数据库中,
修改数据表中的数据 91
4.5 删除数据 93
4.5.1 使用DELETE语句删除表中记录 93
4.5.2 使用TRUNCATE语句清空数据表 95
【技能训练4-4】在SchoolDB的数据表中,
删除不需要的学生记录 95
小结 95
习题 96
第5章?单表查询和模糊查询 100
5.1 查询基础 101
5.1.1 使用SELECT语句进行查询 101
【技能训练5-1】对数据库SchoolDB的
数据表进行简单查询 106
5.1.2 使用ORDER BY子句进行
查询排序 107
【技能训练5-2】对数据库SchoolDB的
数据表进行简单查询并排序 108
5.2 使用函数查询数据 109
5.2.1 字符串函数 109
5.2.2 日期函数 112
5.2.3 数学函数 113
【技能训练5-3】对数据库SchoolDB的
数据表进行简单查询并使用函数 114
【技能训练5-4】函数综合技能训练 115
5.3 模糊查询 117
5.3.1 通配符和模糊查询 117
5.3.2 使用LIKE进行模糊查询 117
【技能训练5-5】使用LIKE对SchoolDB
的数据表进行模糊查询 117
5.3.3 使用BETWEEN在某个范围内
进行查询 118
5.3.4 使用IN在列举值内进行查询 120
5.4 使用聚合函数进行数据的统计 120
5.4.1 SUM( )函数 120
5.4.2 AVG( )函数 121
5.4.3 MAX( )函数和MIN( )函数 122
5.4.4 COUNT( )函数 122
【技能训练5-6】使用聚合函数对
SchoolDB的数据表进行汇总查询 123
小结 124
习题 125
第6章?分组查询和多表查询 129
6.1 分组查询 130
6.1.1 使用GROUP BY进行分组查询 130
【技能训练6-1】使用GROUP BY对
SchoolDB的数据表进行分组查询 132
6.1.2 使用HAVING子句进行分组筛选 134
【技能训练6-2】使用HAVING对
SchoolDB的数据表进行分组筛选 136
6.2 多表查询 137
6.2.1 内连接查询 137
【技能训练6-3】使用内连接对
SchoolDB的数据表进行多表查询 141
6.2.2 外连接查询 143
【技能训练6-4】使用外连接对
SchoolDB的数据表进行多表查询 145
6.3 子查询 146
6.3.1 简单子查询 146
【技能训练6-5】使用子查询对
SchoolDB的数据表进行查询 149
6.3.2 IN子查询 149
【技能训练6-6】使用IN子查询对
SchoolDB的数据表进行查询 150
6.3.3 EXISTS子查询 151
【技能训练6-7】使用EXISTS子查询对
SchoolDB的数据表进行查询 153
小结 153
习题 154
第7章?阶段项目——QQ数据库
管理 159
7.1 项目分析 160
7.1.1 项目概述 160
7.1.2 开发环境 160
7.1.3 项目覆盖的技能要点 160
7.1.4 项目数据表设计 160
7.2 项目需求及实现 162
7.2.1 创建QQ数据库 162
7.2.2 创建数据表 162
7.2.3 添加约束 162
7.2.4 建立表间关系 162
7.2.5 插入测试数据 163
7.2.6 查询数据 164
7.2.7 修改数据 167
7.2.8 删除数据 168
7.3 进度记录 168
小结 168
习题 169
第8章?索引、视图和事务 172
8.1 索引 173
8.1.1 索引的定义 173
8.1.2 索引分类 173
8.1.3 创建和应用索引 174
【技能训练8-1】在QQ数据库QQDB
上,创建和应用索引 177
8.1.4 管理索引 178
【技能训练8-2】管理SchoolDB
数据库和QQDB数据库中的索引 179
8.2 视图 179
8.2.1 视图概述 179
8.2.2 创建和应用视图 180
8.2.3 管理视图 183
【技能训练8-3】在数据库SchoolDB中,
创建和应用视图 184
8.3 事务 185
8.3.1 事务概述 185
8.3.2 事务的价值 186
8.3.3 事务的处理 188
【技能训练8-4】在数据库SchoolDB中,
使用事务批量插入学生考试成绩,并处理
毕业的学生办理离校手续 191
小结 193
习题 193
第9章?存储过程 196
9.1 MySQL编程基础 197
9.1.1 常量和变量 197
9.1.2 流程控制语句 199
9.2 存储过程 200
9.2.1 存储过程概述 200
9.2.2 创建和管理存储过程 201
【技能训练9-1】在SchoolDB数据库中,
通过存储过程实现查询学习了“C语言
程序设计”课程所有学生的成绩 203
【技能训练9-2】在SchoolDB数据库中,
通过带输入参数的存储过程实现查询学习
了某一门课程所有学生的成绩 206
【技能训练9-3】在SchoolDB数据库中,
通过带输入参数和输出参数的存储过程,
实现查询任意一门课程所有学生的成绩,
并带回该课程的平均分 208
9.3 触发器 209
9.3.1 创建触发器 209
【技能训练9- 4】在SchoolDB数据库中,
创建一个删除课程表Subject中某门课程
的触发器,并验证有效性 212
9.3.2 管理触发器 213
小结 213
习题 214
第10章?管理和维护数据库 216
10.1 数据库的安全管理 217
10.1.1 用户管理 217
10.1.2 权限管理 219
【技能训练10-1】管理SchoolDB数据库
的用户和权限 224
10.2 备份和恢复数据库 224
10.2.1 备份数据 224
10.2.2 恢复数据 228
【技能训练10-2】备份和恢复SchoolDB
数据库中的数据 230
小结 231
习题 231
第11章?数据库设计与优化 233
11.1 数据库设计概述 234
11.1.1 为什么需要数据库设计 234
11.1.2 数据库设计步骤 235
11.2 宾馆管理系统的概念设计 237
11.2.1 实体-关系模型 237
11.2.2 关系数据库模式 240
【技能训练11-1】为图书管理系统绘制
实体-联系图(E-R图) 240
11.3 宾馆管理系统的逻辑设计 240
11.3.1 E-R图向关系模型的转换 240
11.3.2 绘制数据库模型图 242
【技能训练11-2】绘制图书管理系统
数据库模型图 244
11.4 宾馆管理系统的数据规范化 244
11.4.1 设计问题 244
11.4.2 规范设计 245
【技能训练11-3】以3NF为目标规范化
图书管理系统数据库设计 249
小结 250
习题 250
第12章?课程项目——银行ATM系统
数据库的设计与实现 252
12.1 项目分析 253
12.1.1 需求概述 253
12.1.2 开发环境 253
12.1.3 项目覆盖的技能要点 253
12.1.4 需求分析 254
12.2 项目需求实现 256
12.2.1 数据库设计 256
12.2.2 创建数据库和登录用户并授权 257
12.2.3 创建数据表并添加约束 257
12.2.4 插入测试数据 258
12.2.5 模拟常规业务 260
12.2.6 创建和使用视图以中文标题查询
输出各表信息 263
12.2.7 使用存储过程实现开户处理 264
12.2.8 使用事务实现转账功能 265
12.3 进度记录 267
小结 268
习题 268
参考文献…… 270 -
作者介绍
-
编辑推荐
-
书评书荐
-
附件下载
图书推荐