第一部分 3
第1章 数据库系统概述 3
1.1数据库技术发展史 3
1.1.1数据处理技术 3
1.1.2数据库技术的三个发展阶段 4
1.2数据库系统的组成 6
1.3数据库的体系结构 7
1.3.1数据库的三级模式结构 8
1.3.2数据库的两级映像 9
习题 10
第2章 数据模型 11
2.1信息的三种世界 11
2.2概念模型 12
2.2.1基本概念 12
2.2.2 E-R模型 13
2.3数据模型 15
2.3.1层次模型 15
2.3.2网状模型 16
2.3.3关系模型 17
习题 18
第3章 关系数据库 20
3.1关系数据结构 20
3.1.1关系的定义和性质 20
3.1.2关系数据库 22
3.2关系的完整性 22
3.3关系运算 23
3.3.1传统的集合运算 24
3.3.2专门的关系运算 26
3.4关系的规范化 30
3.4.1函数依赖 30
3.4.2关系规范化的目的 31
3.4.3关系规范化的过程 32
习题 35
第4章 数据库设计 37
4.1数据库设计概述 37
4.2需求分析 37
4.2.1需求分析的任务 38
4.2.2需求分析的方法 38
4.2.3数据流图和数据字典 39
4.3概念结构设计 41
4.3.1概念结构设计的方法 41
4.3.2概念结构设计的步骤 41
4.4逻辑结构设计 43
4.4.1将E-R图转化为关系数据模型 43
4.4.2关系模式的优化 45
4.4.3设计用户外模式 46
4.5物理结构设计 46
4.5.1确定数据库的物理结构 46
4.5.2评价物理结构 47
4.6数据库实施和运行、维护 48
4.6.1数据库实施 48
4.6.2数据库的运行与维护 48
4.7数据库设计实例 49
4.7.1银行卡管理系统数据库设计 49
4.7.2图书借阅管理系统数据库设计 50
4.7.3钢材仓库管理系统设计 52
习题 55
第二部分 59
第5章 SQL Server 2012基础 59
5.1 SQL Server 2012简介 59
5.1.1 SQL Server发展史 59
5.1.2 SQL Server 2012新增功能 60
5.1.3 SQL Server 2012系统架构 62
5.1.4 SQL Server 2012的协议 63
5.2 SQL Server 2012的安装与配置 63
5.2.1 SQL Server 2012的版本 63
5.2.2 SQL Server 2012的环境需求 64
5.2.3 SQL Server 2012的安装过程 65
5.3 SQL Server 2012的管理工具 76
5.3.1 SQL Server Management Studio 76
5.3.2服务器管理 78
5.3.3 SQL Server配置管理器 80
5.3.4其他工具组件 81
5.4 T-SQL基础 83
5.4.1 T-SQL的特点 83
5.4.2 T-SQL的分类 84
5.4.3 T-SQL的基本语法 84
习题 86
第6章 数据库的概念和操作 87
6.1数据库基本概念 87
6.1.1物理数据库 87
6.1.2逻辑数据库 88
6.2数据库操作 89
6.2.1创建数据库 89
6.2.2修改数据库 94
6.2.3删除数据库 96
习题 97
第7章 表的操作 98
7.1创建表 98
7.1.1数据类型 98
7.1.2界面方式创建表 101
7.1.3使用T-SQL语句创建表 103
7.2修改表 105
7.2.1界面方式修改表 105
7.2.2使用T -SQL语句修改表 106
7.3列约束和表约束 106
7.3.1 PRIMARY KEY约束 106
7.3.2 UNIQUE约束 108
7.3.3 FOREIGN KEY约束 109
7.3.4 CHECK约束 113
7.3.5 DEFAULT约束 114
7.4表数据操作 115
7.4.1向表中添加数据 115
7.4.2修改表中数据 118
7.4.3删除表中数据 118
7.5删除表 119
7.6数据的导入/导出 120
7.6.1导出数据 120
7.6.2导入数据 127
习题 133
第8章 数据库查询 135
8.1 SELECT查询语法 135
8.2简单查询 136
8.2.1投影查询 136
8.2.2选择查询 138
8.2.3聚合函数查询 142
8.3分组查询 144
8.3.1简单分组 144
8.3.2 CUBE和ROLLUP的应用 145
8.4连接查询 146
8.4.1内连接 146
8.4.2自连接 148
8.4.3外连接 148
8.4.4交叉连接 150
8.5子查询 151
8.5.1无关子查询 151
8.5.2相关子查询 153
8.6其他查询 154
8.6.1集合运算查询 154
8.6.2对查询结果排序 156
8.6.3存储查询结果 157
8.7数据操作中使用SELECT子句 158
8.7.1 INSERT语句中使用SELECT子句 158
8.7.2 UPDATE语句中使用SELECT子句 159
8.7.3 DELETE语句中使用SELECT子句 159
习题 160
第9章T -SQL编程 162
9.1T -SQL编程基础 162
9.1.1标识符 162
9.1.2变量 162
9.1.3运算符 164
9.1.4批处理 167
9.1.5注释 167
9.2流程控制语句 168
9.2.1 SET语句 168
9.2.2 BEGIN …END语句 169
9.2.3 IF …ELSE语句 169
9.2.4 CASE语句 170
9.2.5 WHILE语句 172
9.2.6 GOTO语句 173
9.2.7 RETURN语句 173
9.3函数 174
9.3.1系统内置函数 174
9.3.2用户定义函数 176
9.4游标 180
9.4.1游标概述 180
9.4.2游标的类型 181
9.4.3游标的操作 182
习题 186
第10章 视图和索引 188
10.1视图 188
10.1.1视图概述 188
10.1.2创建视图 189
10.1.3修改视图 192
10.1.4使用视图 195
10.1.5删除视图 197
10.2索引 198
10.2.1索引简介 198
10.2.2索引类型 199
10.2.3创建索引 200
10.2.4查看索引信息 206
10.2.5删除索引 208
习题 209
第11章 存储过程和触发器 211
11.1存储过程 211
11.1.1存储过程概述 211
11.1.2存储过程的类型 212
11.1.3创建存储过程 213
11.1.4执行存储过程 216
11.1.5查看存储过程 220
11.1.6修改和删除存储过程 222
11.2触发器 223
11.2.1触发器概述 223
11.2.2触发器的分类 224
11.2.3创建触发器 225
11.2.4查看触发器信息及修改触发器 233
11.2.5禁止、启用和删除触发器 235
习题 236
第12章 事务与并发控制 238
12.1事务概述 238
12.2事务的类型 239
12.2.1根据系统的设置分类 239
12.2.2根据运行模式分类 240
12.3事务处理语句 241
12.4事务的并发控制 243
12.4.1并发带来的问题 243
12.4.2锁的基本概念 244
12.4.3锁的类型 245
12.4.4锁的信息 246
12.4.5死锁的产生及解决办法 248
12.4.6手工加锁 248
习题 250
第13章 数据库系统的安全性 251
13.1身份验证 251
13.1.1 SQL Server的身份验证模式 251
13.1.2设置身份验证模式 252
13.2账号管理 254
13.2.1服务器登录账号 254
13.2.2数据库用户账号 258
13.3角色管理 260
13.3.1固定服务器角色 261
13.3.2固定数据库角色 262
13.3.3应用程序角色 265
13.4权限管理 267
13.4.1权限的类别 267
13.4.2权限操作 267
13.5数据加密 273
13.5.1数据加密简介 273
13.5.2数据加密和解密操作 274
习题 279
第14章 数据库的备份与还原 280
14.1数据库备份概述 280
14.1.1数据库备份计划 280
14.1.2数据库备份的类型 281
14.2数据库还原概述 283
14.2.1数据库还原策略 283
14.2.2数据库恢复模式 284
14.3数据库备份操作 286
14.4数据库还原操作 289
14.4.1自动还原 289
14.4.2手动还原 290
14.5数据库分离与附加 292
14.5.1分离数据库 293
14.5.2附加数据库 295
习题 297
第三部分 301
第15章 基于C#.NET的数据库应用系统开发 301
15.1 C#语言简介 301
15.2使用ADO.NET访问SQL Server数据库 302
15.2.1 ADO.NET的对象模型 302
15.2.2利用ADO.NET访问数据库的基本操作 304
15.3数据库应用系统开发实例 306
15.3.1数据库设计 306
15.3.2应用系统设计与实现 312
习题 338
参考文献 339