适读人群 :本书可作为大数据、人工智能、信息安全、物联网等相关专业的本、专科教材,也可以作为自学教材,供从事数据库相关工作的科技人员参考学习。 特色 1:内容设计有“力”有“度”—围绕教学目标,把握技术深度;重构知识点内容,压缩技术广度;开展局部探究,突破技术难度;着眼实践应用,增强技术效度;挖掘技术思想,提升技术高度。
特色 2:配套精品资源课程(www.zjooc.cn,浙江省精品资源课程共享平台,搜索“数据库管理与应用”即可查询到该课程),课程组织基于 5 个维度—内容丰富有厚度,微课视频有效度,学习任务有精度,课外拓展有深度,复合型教学有温度。课程内容包括 16 个模块,围绕一个具体项目的设计与实现逐步展开,涵盖了数据库设计、数据库管理、数据库开发三个环节。线上学习资源主要包括教学微课 54 个,视频总时长为 400 分钟。另外,考虑到代码与正文描述的一致性,全书字母均用正体。
前 言
本书旨在以SQL Server为工具,帮助学生掌握关系型数据库设计、数据库管理、数据库开发等知识与技能。
理论目标:数据库的基本概念、数据模型、数据库设计方法等。
实践目标:管理数据库、管理表、管理表数据、查询数据、数据库的完整性管理、数据库的安全管理、数据库管理系统的日常维护等。
特色 1:内容设计有“力”有“度”—围绕教学目标,把握技术深度;重构知识点内容,压缩技术广度;开展局部探究,突破技术难度;着眼实践应用,增强技术效度;挖掘技术思想,提升技术高度。
特色 2:配套精品资源课程(www.zjooc.cn,浙江省精品资源课程共享平台,搜索“数据库管理与应用”即可查询到该课程),课程组织基于 5 个维度—内容丰富有厚度,微课视频有效度,学习任务有精度,课外拓展有深度,复合型教学有温度。课程内容包括 16 个模块,围绕一个具体项目的设计与实现逐步展开,涵盖了数据库设计、数据库管理、数据库开发三个环节。线上学习资源主要包括教学微课 54 个,视频总时长为 400 分钟。另外,考虑到代码与正文描述的一致性,全书字母均用正体。
本书可作为大数据、人工智能、信息安全、物联网等相关专业的本、专科教材,也可以作为自学教材,供从事数据库相关工作的科技人员参考学习。
本书的编写工作得到了浙江省精品资源共享课程建设项目、温州市数字经济特色专业建设项目、浙江省新形态教材建设项目的资助。
感谢参与本书编撰的所有老师,特别是浙江安防大数据专业的陈锋、傅贤君、张莉、徐自力等老师,感谢兄弟院校的大力支持,感谢睿姐和小贝的鼓励!
张丽娜
2021 年 2 月
目 录
任务1 了解数据库基础知识 1
第一节 基本概念 1
一、数据、信息、数据库 1
二、数据库管理系统(DBMS) 2
三、数据库系统(DataBase System,DBS) 3
四、数据库技术 5
第二节 结构化数据与非结构化数据 7
一、结构化数据 7
二、非结构化数据 7
第三节 数据库系统的结构 9
一、数据库系统的体系结构 9
二、数据库管理系统的功能结构 10
三、数据库系统的模式结构 11
项目实践 13
实训 14
任务2 熟悉SQL Server 16
第一节 SQL Server的发展历史 16
一、SQL的发展 16
二、SQL的常用版本 17
第二节 SQL Server的安装与使用环境 18
一、安装SQL Server 2008 18
二、配置SQL Server 2008 22
第三节 使用SQL Server管理表与表数据 25
一、用SQL Server管理数据库 25
二、用SQL Server管理表 28
三、用SQL Server管理表数据 30
四、SQL Server数据库及其管理工具 30
项目实践 33
实训 33
任务3 单表查询 34
第一节 数据查询的应用 34
一、SQL语句优点及应用 34
二、SQL的主要功能 35
三、查询编辑窗口 36
四、执行SQL语句 36
第二节 单表查询 38
一、select语句基础 38
二、选择列 39
三、选择行 41
项目实践 44
实训 44
任务4 多表查询 45
第一节 关系数据库和关系代数 45
一、关系数据库 45
二、关系代数 49
三、专门的关系运算 51
四、关系代数表示检索的实例 58
第二节 连接查询 59
一、一般连接(内连接) 59
二、外连接 60
第三节 嵌套查询 61
一、in子查询 61
二、比较子查询 63
三、exists子查询 64
项目实践 65
实训 65
任务5 统计查询 67
第一节 排序 67
第二节 聚合函数 68
第三节 分组查询 70
项目实践 72
实训 72
任务6 集合查询和视图 73
第一节 集合查询 73
一、into查询 74
二、union查询 74
三、except查询和intersect查询 75
第二节 视图 75
一、定义视图 76
二、使用和修改视图 77
三、删除视图 78
第三节 游标 79
项目实践 81
实训 81
任务7 SQL方式管理数据库、表、数据 83
第一节 SQL方式管理数据库 83
一、数据库文件 83
二、数据库对象 84
三、创建数据库 85
第二节 SQL方式管理表 86
一、创建表 86
二、修改表 88
三、删除表 89
第三节 SQL方式管理表数据 89
一、插入数据 89
二、删除数据 91
三、修改数据 92
项目实践 92
实训 92
任务8 数据库设计 95
第一节 数据库设计概述 95
一、数据库设计的内容 95
二、数据库设计的基本步骤 96
第二节 系统需求分析 97
一、需求分析的任务 97
二、系统需求分析方法 98
三、数据流图(DFD) 99
四、数据字典 101
第三节 信息的三种世界 103
一、现实世界 103
二、信息世界 103
三、机器世界 104
四、三个世界的关系 104
第四节 概念模型 105
一、概念模型涉及的基本概念 105
二、实体联系的类型 105
三、概念模型的表示方法 107
第五节 数据模型 108
一、数据模型的三要素 108
二、常见的数据模型 109
三、数据抽象方法 110
四、各分E-R图之间的冲突及解决办法 113
第六节 逻辑结构设计 115
一、基本E-R图转换为关系模型的基本方法 117
二、用户子模式的设计 119
实训 120
任务9 T-SQL语言 123
第一节 T-SQL语言基础 123
一、标识符 124
二、数据类型 124
三、常量 124
四、变量 125
五、运算符 128
第二节 流程控制语句 128
一、定义语句块 129
二、条件判断语句 129
三、循环语句 131
四、其他语句 133
五、批处理 134
实训 135
任务10 函数 136
第一节 常用系统内置函数 136
一、字符串函数 137
二、数学函数 138
三、日期和时间函数 139
四、类型转换函数 139
第二节 标量值函数 141
一、定义标量值函数 141
二、修改标量值函数 142
三、删除标量值函数 142
四、标量值函数的应用 142
第三节 表值函数 143
一、定义表值函数 143
二、修改表值函数 144
三、删除表值函数 145
四、表值函数的应用 145
实训 147
任务11 存储过程 149
第一节 了解存储过程 149
第二节 系统存储过程 151
第三节 用户存储过程 152
一、创建存储过程 152
二、执行存储过程 153
三、修改存储过程 153
四、删除存储过程 155
五、界面方式操作存储过程 156
项目实践 157
实训 157
任务12 触发器 159
第一节 触发器概述 159
第二节 DML触发器 161
一、DML触发器基础 161
二、insert触发器 163
三、update触发器 165
四、delete触发器 166
五、instead of触发器 167
第三节 DDL触发器 170
一、语法格式 170
二、使用DDL触发器 170
第四节 修改触发器和删除触发器 171
一、修改触发器 171
二、删除触发器 171
第五节 可视化方式管理触发器 172
实训 173
任务13 安全管理 175
第一节 数据库的备份和恢复 175
一、故障的种类 175
二、数据库恢复技术 176
三、SQL Server 的数据备份和恢复 177
第二节 数据的导入/导出 186
第三节 数据的安全管理 188
一、数据库安全措施 188
二、存取控制 189
三、其他数据库安全性手段 192
四、SQL Server的安全体系结构 193
五、SQL Server的安全认证模式 193
实训 210
任务14 完整性管理 212
第一节 数据库的完整性 212
一、完整性控制机制 212
二、SQL Server的数据库完整性管理 217
第二节 实体完整性 218
一、索引 218
二、primary key约束 219
第三节 域的完整性 220
一、默认值约束 220
二、check约束 221
第四节 参照完整性 222
第五节 数据库的并发控制 224
一、事务 224
二、并发控制 228
实训 231
任务15 关系数据库理论 235
第一节 关系模式及其评价 235
一、关系模式 235
二、关系模式的评价 236
第二节 函数依赖 237
一、数据依赖概述 237
二、函数依赖概述 238
三、函数依赖的几种特例 238
第三节 范式 239
一、第一范式(1NF) 239
二、第二范式(2NF) 240
三、第三范式(3NF) 241
四、BC范式(BCNF) 242
五、多值依赖及4NF 242
六、第五范式(5NF) 244
七、关系模式的规范化 246
实训 246