目录
第1章数据库系统概述1
1.1数据库技术发展史1
1.1.1数据处理技术1
1.1.2数据库技术的3个发展阶段2
1.2数据库系统组成4
1.3数据库的体系结构6
1.3.1数据库的三级模式结构6
1.3.2数据库的两级映像7
习题18
第2章数据库的数据模型9
2.1信息的3种世界9
2.2概念模型10
2.2.1基本概念10
2.2.2ER模型11
2.3数据模型12
2.3.1层次模型13
2.3.2网状模型14
2.3.3关系模型14
习题216
第3章关系数据库系统17
3.1关系数据结构17
3.1.1关系的定义和性质 17
3.1.2关系数据库19
3.2关系的完整性19
3.3关系运算21
3.3.1传统的集合运算21
3.3.2专门的关系运算23
3.4关系的规范化27
3.4.1函数依赖27
3.4.2关系规范化的目的28
3.4.3关系规范化的过程30
习题333
第4章数据库设计34
4.1数据库设计简介34
4.2需求分析34
4.2.1需求分析的任务35
4.2.2需求分析的方法35
4.2.3数据流图和数据字典36
4.3概念结构设计38
4.3.1概念结构设计的方法38
4.3.2概念结构设计的步骤39
4.4逻辑结构设计40
4.4.1将ER图转换为关系数据模型 40
4.4.2关系模式的优化 42
4.4.3设计用户外模式43
4.5物理结构设计43
4.5.1确定数据库的物理结构43
4.5.2评价物理结构45
4.6数据库实施和运行、维护45
4.6.1数据库实施45
4.6.2数据库的运行与维护 46
4.7数据库设计实例46
4.7.1银行卡管理系统数据库设计46
4.7.2图书借阅管理系统数据库设计47
4.7.3钢材仓库管理系统数据库设计49
习题452
第5章SQL Server 2019基础53
5.1SQL Server 2019简介53
5.1.1SQL Server的发展史53
5.1.2SQL Server 2019新增功能54
5.1.3SQL Server 2019的协议59
5.2SQL Server 2019的安装与配置60
5.2.1SQL Server 2019的版本60
5.2.2SQL Server 2019的环境需求61
5.2.3SQL Server 2019的安装过程62
5.2.4SQL Server Management Studio的安装过程68
5.3SQL Server 2019的管理工具70
5.3.1SQL Server Management Studio70
5.3.2SQL Server配置管理器71
5.3.3SQL Server Profiler跟踪工具72
5.4TSQL基础74
5.4.1TSQL的特点74
5.4.2TSQL的分类75
5.4.3TSQL的基本语法75
习题577
第6章数据库的概念和操作78
6.1数据库基本概念78
6.1.1物理数据库78
6.1.2逻辑数据库79
6.2数据库操作80
6.2.1创建数据库80
6.2.2修改数据库85
6.2.3删除数据库87
习题687
第7章表的操作88
7.1创建表88
7.1.1数据类型88
7.1.2使用界面方式创建表91
7.1.3使用TSQL语句创建表93
7.2修改表95
7.2.1使用界面方式修改表95
7.2.2使用TSQL语句修改表95
7.3列约束和表约束96
7.3.1PRIMARY KEY约束96
7.3.2UNIQUE约束97
7.3.3FOREIGN KEY约束98
7.3.4CHECK约束102
7.3.5DEFAULT约束103
7.4表数据操作104
7.4.1向表中添加数据104
7.4.2修改表中数据106
7.4.3删除表中数据107
7.5删除表108
7.6数据的导出/导入109
7.6.1导出数据109
7.6.2导入数据114
习题7118
第8章数据库查询119
8.1SELECT查询语法119
8.2简单查询120
8.2.1投影查询120
8.2.2选择查询122
8.2.3聚合函数查询126
8.3分组查询127
8.3.1简单分组127
8.3.2CUBE和ROLLUP 的应用128
8.4连接查询130
8.4.1内连接 130
8.4.2自连接131
8.4.3外连接132
8.4.4交叉连接133
8.5子查询134
8.5.1无关子查询134
8.5.2相关子查询136
8.6其他查询138
8.6.1集合运算查询138
8.6.2对查询结果排序139
8.6.3存储查询结果140
8.7在数据操作中使用SELECT子句141
8.7.1在INSERT语句中使用SELECT子句141
8.7.2在UPDATE语句中使用SELECT子句142
8.7.3在DELETE语句中使用SELECT子句142
习题8143
第9章TSQL编程144
9.1TSQL编程基础144
9.1.1标识符144
9.1.2变量145
9.1.3运算符146
9.1.4批处理149
9.1.5注释149
9.2流程控制语句150
9.2.1SET语句150
9.2.2BEGIN…END语句150
9.2.3IF… ELSE语句150
9.2.4CASE语句151
9.2.5WHILE语句154
9.2.6GOTO语句154
9.2.7RETURN语句155
9.3函数156
9.3.1系统内置函数156
9.3.2用户定义函数158
9.4游标161
9.4.1游标简介162
9.4.2游标的类型162
9.4.3游标的操作163
习题9167
第10章视图和索引168
10.1视图168
10.1.1视图简介168
10.1.2创建视图169
10.1.3修改视图172
10.1.4使用视图174
10.1.5删除视图177
10.2索引177
10.2.1索引简介177
10.2.2索引类型178
10.2.3创建索引179
10.2.4查看索引信息184
10.2.5删除索引186
习题10187
第11章存储过程和触发器188
11.1存储过程188
11.1.1存储过程简介188
11.1.2存储过程的类型189
11.1.3创建存储过程190
11.1.4执行存储过程194
11.1.5查看存储过程196
11.1.6修改和删除存储过程198
11.2触发器199
11.2.1触发器简介199
11.2.2触发器的分类200
11.2.3创建触发器201
11.2.4查看触发器信息及修改触发器209
11.2.5禁止、启用和删除触发器211
习题11212
第12章事务与并发控制213
12.1事务简介213
12.2事务的类型214
12.2.1根据系统的设置分类214
12.2.2根据运行模式分类215
12.3事务处理语句216
12.4事务的并发控制218
12.4.1并发带来的问题218
12.4.2锁的基本概念219
12.4.3锁的类型220
12.4.4锁的信息221
12.4.5死锁的产生及解决办法222
12.4.6手工加锁223
习题12225
第13章数据库系统的安全性226
13.1身份验证226
13.1.1SQL Server的身份验证模式226
13.1.2设置身份验证模式227
13.2账号管理229
13.2.1服务器登录账号229
13.2.2数据库用户账号233
13.3角色管理235
13.3.1固定服务器角色 235
13.3.2数据库角色236
13.3.3应用程序角色240
13.4权限管理241
13.4.1权限的类别241
13.4.2权限操作241
13.5数据加密247
13.5.1数据加密简介247
13.5.2数据加密和解密操作248
习题13253
第14章数据库的备份与还原254
14.1数据库备份简介254
14.1.1数据库备份计划254
14.1.2数据库备份的类型256
14.2数据库还原简介257
14.2.1数据库还原策略257
14.2.2数据库恢复模式258
14.3数据库备份操作260
14.4数据库还原操作264
14.4.1自动还原264
14.4.2手动还原264
14.5数据库分离与附加267
14.5.1分离数据库267
14.5.2附加数据库269
习题14271
第15章基于C# .NET的数据库应用系统开发272
15.1C#语言简介272
15.2使用ADO.NET访问SQL Server数据库273
15.2.1ADO.NET的对象模型273
15.2.2使用ADO.NET访问数据库的基本操作275
15.3LINQ to SQL数据库技术277
15.3.1使用LINQ 技术查询数据277
15.3.2使用LINQ 技术插入数据279
15.3.3使用LINQ技术删除数据280
15.3.4使用LINQ 技术更新数据283
15.4基于C# .NET的数据库应用系统开发实例284
15.4.1数据库设计285
15.4.2应用系统设计与实现290
习题15316
附录A实验317
参考文献318