第1章 数据库基本理论 1
1.1 数据库概述 1
1.1.1 数据与数据处理 1
1.1.2 数据管理的产生与发展 2
1.1.3 数据库、数据库管理系统与数据库系统 6
1.2 数据库系统结构 8
1.2.1 数据库系统的三级模式结构 8
1.2.2 数据库系统的二级映像及数据独立性 10
1.2.3 数据库系统的特点 11
1.3 数据模型 11
1.3.1 数据模型概述 12
1.3.2 概念数据模型 13
1.3.3 结构数据模型 16
1.3.4 E-R模型向关系模型的转换 19
1.4 关系数据库 21
1.4.1 关系运算 21
1.4.2 函数依赖 27
1.4.3 关系的规范化 29
1.4.4 数据库的完整性控制 33
1.4.5 关系数据库设计 36
第2章 SQL Server 2008概述 57
2.1 SQL Server 2008简介 57
2.1.1 Microsoft SQL Server发展简史 57
2.1.2 SQL Server 2008的特点和新增功能 58
2.2 SQL Server 2008的版本和组件 60
2.2.1 SQL Server 2008的版本 60
2.2.2 SQL Server 2008的服务器组件 61
2.3 SQL Server 2008的软、硬件安装环境需求 62
2.4 安装、配置和卸载SQL Server 2008 63
2.4.1 安装SQL Server 2008 63
2.4.2 配置SQL Server 2008 72
2.4.3 卸载SQL Server 2008 74
2.3 SQL Server 2008的常用工具 74
第3章 数据库的创建和管理 78
3.1 SQL Server数据库的存储结构 78
3.1.1 数据库的存储形式 79
3.1.2 数据库文件组 80
3.2 系统数据库 81
3.3 创建数据库 81
3.3.1 在图形界面下创建数据库 82
3.3.2 用T-SQL命令创建数据库 86
3.4 管理数据库 88
3.4.1 查看数据库 88
3.4.2 修改数据库 90
3.4.3 扩大和收缩数据库 92
3.4.4 删除数据库 99
3.4.5 分离和附加数据库 100
第4章 SQL基础 106
4.1 SQL概述 106
4.1.1 SQL的发展 106
4.1.2 SQL的特点 107
4.2 SQL Server数据类型 107
4.3 T-SQL基础知识 114
4.3.1 命名规则和注释 114
4.3.2 批处理 115
4.3.3 脚本 115
4.4 常量和变量 116
4.5 运算符、函数和表达式 118
4.5.1 运算符 118
4.5.2 系统函数 120
4.5.3 表达式 125
4.6 流控制语句 126
4.7 T-SQL中的错误处理 130
第5章 表的创建与管理 132
5.1 表的概述 132
5.2 表结构的创建、修改和删除 133
5.2.1 表结构的创建 133
5.2.2 表结构的修改 140
5.2.3 表结构的删除 144
5.3 表的完整性控制 145
5.3.1 主键(PRIMARY KEY)约束 146
5.3.2 UNIQUE约束 147
5.3.3 CHECK约束 149
5.3.4 DEFAULT约束 151
5.3.5 FOREIGN KEY约束 153
5.3.6 禁用约束 156
5.4 添加、修改和删除表中的数据 157
5.4.1 使用图形界面添加、修改和删除表中的数据 157
5.4.2 使用INSERT语句添加数据 158
5.4.3 使用UPDATE语句更新数据 161
5.4.4 使用DELETE语句删除数据 162
5.4.5 使用MERGE语句插入、更新和删除数据 163
5.5 分区表 169
5.5.1 创建分区表 169
5.5.2 创建分区函数 170
5.5.3 创建分区方案 171
第6章 数据查询与索引 178
6.1 数据基本查询 178
6.1.1 选择列 180
6.1.2 选择行 182
6.1.3 数据的排序 185
6.1.4 使用计算函数汇总数据 186
6.1.5 对查询结果进行分组计算 186
6.1.6 重定向输出(INTO) 189
6.2 子查询 190
6.2.1 单值嵌套查询 190
6.2.2 多值嵌套查询 190
6.3 连接查询 194
6.3.1 自连接 194
6.3.2 内部连接 195
6.3.3 外部连接 197
6.3.4 交叉连接 199
6.4 集合运算 201
6.4.1 并运算 201
6.4.2 交运算 201
6.4.3 差运算 202
6.5 CASE函数 203
6.5.1 简单CASE函数 203
6.5.2 搜索CASE函数 205
6.5.3 CASE函数应用示例 206
6.6 索引 207
6.6.1 索引的存储结构及类型 207
6.6.2 索引的创建 209
6.6.3 索引的管理 213
第7章 视图、存储过程和触发器 220
7.1 视图 220
7.1.1 视图的概述 220
7.1.2 创建视图 222
7.1.3 通过视图查询数据 225
7.1.4 通过视图修改数据 226
7.1.5 查看和重命名视图 230
7.1.6 修改和删除视图 231
7.2 存储过程 237
7.2.1 存储过程的定义、特点和类型 237
7.2.2 存储过程的创建和执行 242
7.2.3 管理存储过程 251
7.3 触发器 253
7.3.1 触发器概述 253
7.3.2 触发器完整性规则 255
7.3.3 创建DML触发器 256
7.3.4 创建触发器 261
7.3.5 管理触发器 264
第8章 用户定义函数、游标和事务 271
8.1 用户定义函数 271
8.1.1 概述 271
8.1.2 SQL Server自带的用户自定义函数 273
8.1.3 创建和调用用户自定义函数 275
8.1.4 管理用户定义函数 282
8.2 游标 286
8.2.1 游标概述 286
8.2.2 游标操作 288
8.3 事务 296
8.3.1 事务的概念 296
8.3.2 事务的控制 298
8.3.3 事务的操作举例 305
第9章 安全管理 311
9.1 安全管理概述 311
9.2 SQL Server 2008的安全机制 313
9.3 SQL Server 2008的安全管理 316
9.3.1 登录管理 316
9.3.2 用户账户管理 331
9.3.3 角色管理 335
9.3.4 架构 346
9.3.5 权限管理 352
第10章 数据库维护 365
10.1 备份数据库 365
10.2 SQL Server的备份机制 366
10.2.1 SQL Server的备份方式 366
10.2.2 备份设备 366
10.2.3 创建备份设备 367
10.2.4 数据库备份 369
10.3 恢复数据库 374
10.3.1 SQL Server还原概述 374
10.3.2 使用SQL Server管理平台还原数据库 375
10.3.3 使用T-SQL语句恢复数据库 376
10.4 数据的导入和导出 377
10.4.1 数据的导入 377
10.4.2 数据的导出 380
第11章 开发数据库应用程序 384
11.1 数据库应用结构介绍 384
11.1.1 集中式结构 384
11.1.2 文件服务器结构 385
11.1.3 客户/服务器结构(Client/Server,简称C/S) 386
11.1.4 互联网应用结构 386
11.2 数据访问接口 387
11.2.1 ODBC 387
11.2.2 OLE DB和ADO 391
11.2.3 ADO.NET对象模型 392
11.3 SQL Server 2008与C#综合开发实例 395
11.3.1 需求分析 395
11.3.2 功能流程设计 395
11.3.3 数据库设计 396
11.3.4 创建数据库 398
11.3.5 Visual C#代码编写与调试 399
11.4 本章小结 424
参考文献 426