第1章 关系数据库原理 1
1.1 数据库系统的基本概念 1
1.1.1 数据、数据库、数据库管理系统、数据库系统 1
1.1.2 数据库系统的特点 3
1.2 E-R概念模型 4
1.2.1 实体(Entity) 5
1.2.2 属性(Attribute) 5
1.2.3 联系(Relationship) 5
1.2.4 E-R图的绘制 6
1.3 关系数据模型 8
1.3.1 关系数据模型的基本概念 8
1.3.2 E-R图转化为关系数据模型 10
1.4 基本关系运算 12
1.4.1 选择 12
1.4.2 投影 13
1.4.3 连接 13
1.5 关系的完整性规则 15
1.5.1 实体完整性 15
1.5.2 参照完整性 15
1.5.3 域完整性 15
1.6 关系的规范化 16
1.6.1 第一范式(1NF) 16
1.6.2 第二范式(2NF) 17
1.6.3 第三范式(3NF) 17
1.6.4 Boyce-Codd范式(BCNF) 18
【课后习题】 19
【课外实践】 21
第2章 SQL Server 2012基础 24
2.1 SQL Server 2012介绍 24
2.2 SQL Server 2012的安装 25
2.2.1 安装前的准备 25
2.2.2 安装配置过程 25
2.3 SQL Server 2012的配置 30
2.3.1 SQL Server 2012服务管理 30
2.3.2 SQL Server 2012的网络配置 32
2.4 SQL Server 2012 工具和实用程序 42
2.4.1 SQL Server Management Studio 42
2.4.2 性能工具 43
2.4.3 PowerShell 47
【课后习题】 48
【课外实践】 48
第3章 数据库的创建与管理 49
3.1 SQL Server 2012数据库概述 49
3.1.1 数据库文件 49
3.1.2 数据库文件组 50
3.1.3 数据库对象 50
3.1.4 系统数据库 51
3.2 创建数据库 52
3.2.1 在“对象资源管理器”中创建数据库 52
3.2.2 使用CREATE DATABASE语句创建数据库 54
3.3 修改数据库 56
3.3.1 在“对象资源管理器”中修改数据库 56
3.3.2 使用ALTER DATABASE语句修改数据库 58
3.4 删除数据库 60
3.4.1 在“对象资源管理器”中删除数据库 60
3.4.2 使用DROP DATABASE语句删除数据库 61
3.5 查看数据库信息 62
3.5.1 在“对象资源管理器”中查看数据库信息 62
3.5.2 用T-SQL语句查看数据库信息 62
3.6 备份与还原数据库 63
3.6.1 备份数据库 63
3.6.2 还原数据库 67
3.7 分离与附加数据库 70
3.7.1 分离数据库 70
3.7.2 附加数据库 71
【课后习题】 73
【课外实践】 74
第4章 数据表的创建与管理 76
4.1 SQL Server 2012表概述 76
4.1.1 数据类型 76
4.1.2 列的属性 78
4.1.3 表约束 78
4.2 创建数据表和表约束 79
4.2.1 在“对象资源管理器”中创建表和表约束 79
4.2.2 使用CREATE TABLE语句创建表和表约束 82
4.3 修改数据表和表约束 87
4.3.1 在“对象资源管理器”中修改表和表约束 87
4.3.2 使用ALTER TABLE语句修改表和表约束 88
4.4 管理表中的数据 90
4.4.1 添加记录 90
4.4.2 更新表中的记录 94
4.4.3 删除表中的记录 94
4.5 删除数据表 95
4.5.1 在“对象资源管理器”中删除数据表 95
4.5.2 使用DROP TABLE语句删除数据表 96
4.6 查看表信息 96
4.6.1 查看表的定义信息 96
4.6.2 查看表约束 97
4.6.3 查看表的依赖关系 97
4.7 数据库关系图 99
【课后习题】 100
【课外实践】 101
第5章 数据查询 103
5.1 SELECT语句的基本语法格式 103
5.2 简单查询 103
5.2.1 使用SELECT子句选择列 103
5.2.2 使用WHERE子句选择行 108
5.2.3 使用FROM子句选择数据源 115
5.2.4 使用ORDER BY子句排序查询结果 115
5.2.5 使用INTO子句保存查询结果 116
5.3 汇总查询 117
5.3.1 使用聚合函数汇总 117
5.3.2 使用GROUP BY子句分类汇总 119
5.4 连接查询 122
5.4.1 内连接 122
5.4.2 外连接 123
5.4.3 自连接 125
5.5 子查询 126
5.5.1 使用比较运算符进行子查询 126
5.5.2 使用ALL、 ANY关键字进行子查询 127
5.5.3 使用IN关键字进行子查询 128
5.5.4 使用EXISTS关键字进行子查询 129
【课后习题】 129
【课外实践】 131
第6章 视图与索引 132
6.1 视图 132
6.1.1 视图概述 132
6.1.2 创建视图 133
6.1.3 查看视图信息 137
6.1.4 修改视图 138
6.1.5 通过视图添加、更新、删除表数据 140
6.1.6 删除视图 144
6.2 索引 145
6.2.1 索引概述 145
6.2.2 创建索引 147
6.2.3 查看索引信息 151
6.2.4 修改索引 153
6.2.5 删除索引 154
6.2.6 建立全文索引 155
【课后习题】 163
【课外实践】 164
第7章 规则与默认值 165
7.1 规则 165
7.1.1 创建规则 165
7.1.2 绑定和解绑规则 166
7.1.3 删除规则 168
7.2 默认值 168
7.2.1 创建默认值 168
7.2.2 绑定和解绑默认值 169
7.2.3 删除默认值 170
【课后习题】 171
【课外实践】 171
第8章 T-SQL编程 172
8.1 T-SQL基础 172
8.1.1 T-SQL的特点 172
8.1.2 标识符 173
8.1.3 对象命名规则 173
8.1.4 T-SQL语法格式约定 174
8.2 T-SQL表达式 174
8.2.1 常量、变量 174
8.2.2 函数 178
8.2.3 运算符 185
8.3 T-SQL语句 187
8.3.1 批处理 187
8.3.2 流程控制语句 187
【课后习题】 191
【课外实践】 192
第9章 存储过程与触发器 193
9.1 存储过程 193
9.1.1 存储过程概述 193
9.1.2 创建和执行存储过程 194
9.1.3 修改存储过程 197
9.1.4 查看存储过程信息 198
9.1.5 删除存储过程 201
9.2 触发器 202
9.2.1 触发器概述 202
9.2.2 创建和激活触发器 202
9.2.3 修改触发器 208
9.2.4 查看触发器信息 209
9.2.5 删除触发器 212
9.2.6 禁用触发器 212
【课后习题】 213
【课外实践】 214
第10章 SQL Server 2012安全管理 215
10.1 SQL Server 2012的安全等级 215
10.1.1 服务器级的安全性 215
10.1.2 数据库级的安全性 215
10.1.3 数据库对象级的安全性 216
10.2 SQL Server 2012的身份验证模式 216
10.2.1 Windows身份验证 216
10.2.2 混合模式 217
10.2.3 配置身份验证模式 217
10.3 SQL Server 2012登录 218
10.3.1 服务器登录 218
10.3.2 创建登录名 221
10.4 数据库用户 226
10.4.1 默认的数据库用户 226
10.4.2 创建数据库用户 227
10.5 权限管理 231
10.5.1 权限类型 231
10.5.2 操作权限 232
10.6 角色管理 233
10.6.1 服务器角色 233
10.6.2 数据库角色 236
【课后习题】 244
【课外实践】 244
第11章 SQL Server 2012综合应用实例 245
11.1 客户管理系统的需求分析 245
11.2 客户管理系统的设计 245
11.3 客户管理系统的实现 246
11.3.1 数据库的实现 247
11.3.2 数据库连接类的实现 247
11.3.3 登录界面功能的实现 251
11.3.4 主界面功能的实现 252
【课后习题】 261
【课外实践】 261
参考文献 262