图书简介:
目 录
项目1 认识数据库 1
任务1.1 理解数据库的基本概念 1
1.1.1 数据 1
1.1.2 数据库 2
1.1.3 数据库管理系统 2
1.1.4 数据库系统 3
任务1.2 理解数据模型 5
1.2.1 概念模型 5
1.2.2 关系模型 6
任务1.3 了解SQL 11
1.3.1 SQL语句的分类 11
1.3.2 SQL的特点 11
习题一 14
项目2 数据库设计 17
任务2.1 概念结构设计 17
2.1.1 设计局部E-R图 18
2.1.2 设计全局E-R图 18
任务2.2 逻辑结构设计——E-R图转换为关系模型 22
任务2.3 逻辑结构设计——关系模型的优化 23
2.3.1 不好的关系模式 24
2.3.2 函数依赖 25
2.3.3 范式 26
2.3.4 关系模式分解 26
习题二 29
项目3 MySQL环境部署 33
任务3.1 MySQL的安装与配置 33
任务3.2 使用MySQL 45
3.2.1 启动与停止MySQL服务 45
3.2.2 MySQL客户端实用程序 47
习题三 53
项目4 数据库的创建与管理 55
任务4.1 创建与查看数据库 55
4.1.1 创建数据库 55
4.1.2 查看数据库 57
任务4.2 管理数据库 59
4.2.1 修改数据库 59
4.2.2 删除数据库 59
任务4.3 使用Navicat for MySQL创建与管理数据库 60
习题四 66
项目5 数据表的创建与管理 67
任务5.1 理解数据表的基础知识 67
5.1.1 表的命名 67
5.1.2 数据类型 68
任务5.2 创建与查看数据表 71
5.2.1 创建数据表 71
5.2.2 查看数据表 72
任务5.3 管理数据表 75
5.3.1 修改数据表 75
5.3.2 删除数据表 76
任务5.4 实施数据完整性 79
任务5.5 使用Navicat创建与管理数据表 84
习题五 93
项目6 数据更新 99
任务6.1 插入记录 99
任务6.2 修改记录 103
任务6.3 删除记录 106
习题六 111
项目7 简单数据查询 116
任务7.1 单表无条件查询 116
任务7.2 单表有条件查询 121
任务7.3 单表统计查询 126
习题七 131
项目8 高级数据查询 138
任务8.1 交叉连接与内连接 138
任务8.2 外连接与自连接 142
任务8.3 子查询 145
任务8.4 子查询在更新语句中的应用 149
任务8.5 集合查询 153
习题八 157
项目9 查询优化 162
任务9.1 创建与使用视图 162
9.1.1 视图的概念 162
9.1.2 创建视图 163
9.1.3 查看视图 163
9.1.4 使用视图 164
9.1.5 修改视图 164
9.1.6 删除视图 164
任务9.2 创建与使用索引 169
9.2.1 索引的概念 169
9.2.2 创建索引 170
9.2.3 使用索引 171
9.2.4 删除索引 171
习题九 176
项目10 数据库的编程访问 179
任务10.1 掌握MySQL编程基础 179
10.1.1 常量与变量 180
10.1.2 流程控制语句 181
任务10.2 掌握常用的内置函数 185
10.2.1 数学函数 186
10.2.2 字符串函数 186
10.2.3 日期时间函数 186
10.2.4 流程控制函数 187
任务10.3 创建与使用存储过程 195
10.3.1 存储过程的概念 195
10.3.2 创建存储过程 195
10.3.3 调用存储过程 196
10.3.4 查看存储过程 196
10.3.5 删除存储过程 197
任务10.4 创建与使用自定义函数 200
10.4.1 自定义函数概述 200
10.4.2 创建自定义函数 200
习题十 205
项目11 数据库的安全管理 207
任务11.1 用户管理 207
11.1.1 查看用户 208
11.1.2 创建用户 208
11.1.3 修改用户密码 208
11.1.4 删除用户 209
任务11.2 权限管理 211
11.2.1 查看权限 212
11.2.2 授予权限 213
11.2.3 收回权限 214
任务11.3 数据的备份与还原 217
11.3.1 数据备份 217
11.3.2 还原数据 218
习题十一 224
展开
前 言
数据库技术是信息系统的一项核心技术,是一种计算机辅助管理数据的方法,主要研究如何组织和存储数据,如何高效地获取和处理数据。数据库技术是计算机及相关专业学生必备的专业基础知识。从目前各大招聘网站的信息来看,各类计算机人才的技能要求中都要求应聘者至少掌握一种数据库管理系统的操作方法。与其他数据库产品相比,MySQL具有体积小、速度快、使用方便、可移植、费用低等特点,并且开放源代码,因此越来越多的公司开始使用MySQL,尤其在Web开发领域,MySQL占据着举足轻重的地位。
为适应大数据技术的发展,介绍新技术、新成果、新经验,满足当前课程思政建设的需要,结合高等职业院校学生的能力水平和学习特点,我们组织编写了本书,本书的主要特色与创新内容如下。
(1)坚持高等职业教育中“实用为主、够用为度”的教学原则,对教材内容进行合理规划。
本书将数据库原理与数据库应用有机结合,数据库原理部分主要讲解关系数据库的基础知识,以及数据库概念设计与逻辑设计的常用方法;数据库应用部分则突出了软件开发时使用频率最高的数据查询语句的重要性。
(2)突出高等职业教育技能培养为主的特点。
本书以“项目导入、任务驱动”的方式编写,全书分为11个项目,分别是认识数据库、数据库设计、MySQL环境部署、数据库的创建与管理、数据表的创建与管理、数据更新、简单数据查询、高级数据查询、查询优化、数据库的编程访问、数据库的安全管理。每个项目均以数据库设计与开发过程中的子过程为课程内容进行详细讲解,每个项目又分为若干任务,以实际工作任务为背景,通过“任务描述”→“相关知识”(完成任务需要用到的相关知识)→“任务实施”(完成具体的工作任务)三个环节,将知识的学习、技能的练习与任务相结合。以两个案例贯穿全书,构建立体的技能训练体系,选取的两个案例充分考虑了初学者的特点,课堂上以“学生成绩管理”数据库的设计与开发贯穿始终,课后以“员工管理”数据库的设计与开发贯穿始终。每个项目后面的“同步实训”可以强化对学生的技能训练。每个项目后面还附有大量的习题,以客观题为主,可以让学生在课后学习过程中及时巩固知识点;数据库设计、数据查询需要大量的技能训练,在习题中以主观题的形式进行编排。数据查询语句是数据库中使用频率最高的语句,涉及的知识点比较多,故将相关内容安排在两个项目(项目7和项目8)中进行介绍,确保学生能很好地掌握知识点。
(3)设置“知识拓展”环节,介绍新技术、新成果、新经验。
每个项目后面都有“知识拓展”环节,既有“常用的MySQL图形化管理工具”“存储引擎”“MySQL触发器”等在其他教材中比较常见的内容,也有在同类教材中很少见到的内容,具体如下。
①介绍“查询语句的执行顺序”,可以使学生深刻领会查询语句各子句的执行顺序,以及书写顺序的差异。在实际应用中,可以让学生更好地根据需要编写查询代码并正确使用别名。
②介绍MySQL在大数据技术中的解决方案和应用经验,主要包括“MySQL大数据的常用解决方案——分表和分区”“在MySQL中快速删除大量数据”“MySQL千万级大数据查询优化经验”。
③介绍目前在大数据技术中得到应用的数据存储技术,即“NoSQL数据库”。
这些内容为学有余力的学生提供了更多学习资源,拓展了知识的深度和广度。
(4)注重课程思政建设。
本书把数据库相关的、价值观鲜明的思政元素(包括“华为公司发布GaussDB分布式数据库”“我国数据库领域泰斗——萨师煊教授”等)融入“知识拓展”环节,可以让学生了解我国计算机信息行业取得的巨大成就,对学生能起到很好的正面引导作用。
(5)提供丰富的立体化教学资源。
为了方便教师开展教学和学生的个性化学习,本书提供了教学PPT、案例数据库、习题与参考答案、同步实训与参考答案、微课视频等教学资源。其中,微课视频需要读者扫描书中的二维码进行观看,其他资源可以在华信教育资源网(www.hxedu.com.cn)中免费下载。
本书项目中涉及的人名、电话号码、家庭住址等信息均属虚构,如有雷同,实属巧合。
本书由江苏海事职业技术学院的胡巧儿、内蒙古化工职业学院的李慧清、江苏海事职业技术学院的许欢担任主编,由胡巧儿负责内容结构设计和统稿工作。其他参与编写的人员有乌鲁木齐职业大学的吴秀君和赵静、邢台职业技术学院的冯笑雪、江苏海事职业技术学院的张莉。本书在编写过程中得到了江苏海事职业技术学院信息工程学院领导的大力支持,在此表示衷心的感谢。
由于编者水平所限,不妥之处在所难免,敬请广大读者和专家批评指正。
编 者
展开