第1章 关系式数据库管理系统 1
1.1 数据库管理系统 1
1.1.1 数据的独立性 1
1.1.2 数据完整性 1
1.1.3 安全恢复与备份 2
1.1.4 查询优化 3
1.1.5 并发控制 3
1.2 关系式数据库管理系统 3
1.2.1 表 3
1.2.2 其他数据库对象 5
1.3 客户端/服务器方式 6
1.3.1 理解客户端/服务器模型 6
1.3.2 客户端/服务器数据库体系结构 7
1.3.3 客户端与服务器端的典型作用 7
1.3.4 SQL Server的设计方式 8
1.4 SQL Server 9
第2章 SQL Server 7.0新特性和管理工具 10
2.1 体系结构上的增强 10
2.1.1 数据库和文件 10
2.1.2 页面、行和列 11
2.1.3 索引 11
2.1.4 text和image数据 11
2.1.5 行级锁定 11
2.1.6 事务日志 11
2.1.7 tempdb数据库 12
2.1.8 查询处理器 12
2.1.9 分布式查询 12
2.2 服务器功能的增强 12
2.2.1 配置选项 13
2.2.2 备份、恢复、DBCC和块拷贝 13
2.2.3 并行的查询执行 13
2.2.4 安全性 13
2.2.5 存储过程 14
2.2.6 一致性和标准遵循性 14
2.2.7 复制 14
2.2.8 数据仓库 14
2.2.9 OLAP服务 15
2.2.10 PivotTable服务 15
2.2.11 Micorsoft Proxy Server(代理服务器) 15
2.2.12 SQL Server Enterprise Manager 15
2.2.13 SQL Server Agent 16
2.2.14 SQL Server Service Manager 16
2.3 在开发方面的增强 16
2.3.1 English Query 17
2.3.2 Transact-SQL 17
2.3.3 OLE DB 18
2.3.4 ODBC 18
2.4 应用程序类型 19
2.4.1 数据仓库应用程序 19
2.4.2 复制应用程序 19
2.4.3 Internet和Intranet应用程序 20
2.4.4 分布式应用程序 20
2.4.5 管理工具 20
2.4.6 原型、跟踪分析和调试 20
2.4.7 其他程序设计接口 20
2.5 SQL Server 7.0管理工具 21
2.5.1 Microsoft SQL Enterprise Manager 21
2.5.2 SQL Server Query Analyzer(查询分析器) 26
2.5.3 SQL Server Client Nerwork Utility 27
2.5.4 SQL Server Service Manager 28
2.5.5 SQL Server Profiler 29
2.5.6 SQL Server Performance Monitor 30
2.5.7 SQL Server Books Online 30
2.5.8 Microsoft DTC Administrative Console 31
2.5.9 SQL Server Network Utility 32
第3章 SQL Server 7.0的安装与配置 33
3.1 概述 33
3.2 硬件与软件的需求 33
3.2.1 硬件需求 33
3.2.2 网络要求 33
3.2.3 软件需求 34
3.2.4 其他 34
3.3 SQL Server 7.0的安装 35
3.4 SQL Server 7.0的环境 50
3.4.1 目录及文件内容 50
3.4.2 自动创建的数据库 50
3.5 启动、暂停与停止SQL Server 51
3.6 注册SQL Server 55
3.7 SQL Server 7.0的配置 56
3.8 SQL Server 7.0的卸载 57
3.9 SQL Server 7.0的自动升级与数据库移植 57
3.10 客户端管理程序的安装与卸载 60
3.11 SQL Server 7.0性能 62
第4章 数据库管理 64
4.1 系统数据库与数据 64
4.2 数据存储结构 66
4.3 物理数据库文件和文件组 67
4.3.1 文件 68
4.3.2 文件组 68
4.4 管理数据库 69
4.4.1 创建SQL Server数据库 69
4.4.2 设置SQL Server数据库选项 73
4.4.3 修改数据库 76
4.4.4 删除SQL Server数据库 77
第5章 数据库对象 78
5.1 数据库对象 78
5.1.1 数据类型 78
5.1.2 约束 79
5.1.3 规则 85
5.1.4 默认 86
5.1.5 触发器 87
5.1.6 索引 88
5.1.7 全文目录与索引 90
5.1.8 Diagram 90
5.1.9 存储过程 97
5.2 表的规划 103
5.2.1 规划表 103
5.2.2 建立表 103
5.2.3 删除表 104
5.2.4 重新命名表 104
5.2.5 更改表的结构 104
5.2.6 处理表 104
5.2.7 视图 105
第6章 查询和存取SQL数据 107
6.1 建立基本查询 107
6.2 建立多表查询 109
6.2.1 利用表间的连接操作 109
6.2.2 利用子查询 111
6.3 使用汇总查询 113
6.3.1 GROUP BY子句 114
6.3.2 HAVING子句 114
6.3.3 ORDER BY子句 114
6.3.4 集合函数 115
6.3.5 COMPUTE子句 116
6.3.6 操作符CUBE和ROLLUP 116
6.3.7 TOPn子句 118
6.3.8 集合操作符 118
6.3.9 CASE表达式 118
6.4 建立并行查询 119
6.5 分布式查询 119
第7章 远程连接与访问 121
7.1 概述 121
7.2 开放式数据库连接(ODBC)接口 122
7.3 数据源设置和连接 123
7.4 一个通过前端产品访问SQL Server的典型例子 126
7.4.1 建立连接 126
7.4.2 理解Delphi的数据库访问操作 126
7.4.3 实现SQL查询语句 128
第8章 用户及权限管理 129
8.1 基本概念 129
8.1.1 认证方法 129
8.1.2 认证模式 129
8.1.3 数据库用户 130
8.1.4 角色 130
8.1.5 对象权限和语句权限 131
8.2 用户访问SQL Server的数据要通过的四层校验 132
8.3 使用SQL Enterprise Manager来执行各种操作 133
8.3.1 配置SQL Server采用Windows NT认证模式或SQL Server Windows NT混合认证模式 133
8.3.2 添加新的SQL Server用户 134
8.3.3 浏览SQL Server用户 139
8.3.4 修改用户属性、删除用户 139
8.3.5 建立数据库用户 140
8.3.6 创建自定义数据库角色 141
8.3.7 分配语句权限与对象权限 142
第9章 使用SQL Server Agent服务 144
9.1 SQL Server Agent的配置 144
9.2 作业管理 147
9.2.1 新建作业 148
9.2.2 查看已存在的作业 153
9.3 管理操作员 153
9.3.1 新建操作员 153
9.3.2 查看操作员 154
9.4 管理告警 155
9.4.1 新建告警 155
9.4.2 查看告警 157
9.5 配置SQL Mail 157
9.5.1 为SQL Server创建一个邮件帐号 158
9.5.2 配置SQL Server用一Windows NT用户Windows NT Server而非System Account 158
9.5.3 在运行SQL Server的Windows NT上安装电子邮件客户程序 159
9.5.4 配置SQL Server和SQL Server Agent的电子邮件信息 159
9.5.5 启动SQL Mail 159
第10章 数据备份与恢复 160
10.1 SQL Server提供的四种数据库备份方法 160
10.1.1 完全数据库备份 160
10.1.2 差异备份 160
10.1.3 事务日志备份 160
10.1.4 数据库文件备份 160
10.2 常用的备份技术及对应的恢复方法 160
10.2.1 只采用完全数据库备份与差异备份 160
10.2.2 只采用完全数据库备份与事务日志备份 161
10.2.3 综合采用完全数据库备份、差异备份与日志备份 161
10.3 一般备份策略与原则 162
10.4 备份策略范例 162
10.4.1 情况一:数据量较小(少于500M),且修改较少 162
10.4.2 情况二:数据量较大(大于2G以上),在白天数据受到频繁修改与添加 162
10.5 使用Enterprise Manager来进行数据库备份与恢复 163
10.5.1 创建备份设备 163
10.5.2 执行立即备份 163
10.5.3 安排自动备份 167
10.5.4 恢复数据库 170
10.5.5 恢复master数据库 176
第11章 数据交换 178
11.1 数据转换服务DTS 178
11.1.1 概述 178
11.1.2 使用Enterprise Manager与脚本编程来实现DTS的一个例子 179
11.2 可移动数据库 185
11.2.1 创建可移动数据库 185
11.2.2 配置可移动数据库 186
11.2.3 安装可移动数据库 187
11.3 BCP 187
11.3.1 BCP的工作方式 188
11.3.2 BCP的运行选项 188
11.3.3 格式文件 189
11.3.4 /h参数 192
11.3.5 并行加载 193
11.3.6 加载过程中的事务提交 193
11.3.7 改善加载性能 194
11.4 BULK INSERT 194
11.5 数据同步复制 195
11.5.1 出版商、订阅者模型 195
11.5.2 拉出和推出订阅 196
11.5.3 匿名订阅 196
11.5.4 同步 196
11.5.5 三种同步复制方式 196
11.5.6 使用Enterprise Manager配置数据同步复制 196
第12章 事务日志管理 204
12.1 与事务日志相关的几个概念 204
12.1.1 事务 204
12.1.2 事务日志 206
12.1.3 前写事务日志 206
12.1.4 数据缓冲区页面的刷新 207
12.1.5 缓冲区修订页 207
12.1.6 活动事务 207
12.1.7 检查点(CHECK POINT) 207
12.1.8 事务日志的活动区 208
12.2 截短事务日志 208
第13章 数据仓库 210
13.1 概述 210
13.1.1 什么是数据仓库 210
13.1.2 数据仓库的特征 210
13.1.3 数据粒度(Data Granularity) 211
13.1.4 数据站场(Data Marts) 212
13.2 设计与创建数据仓库 213
13.3 数据仓库的使用 214
13.4 数据仓库与OLTP 214
13.4.1 OLTP 214
13.4.2 数据仓库与OLTP的比较 215
13.5 在线分析处理(OLAP) 216
13.5.1 功能简介 216
13.5.2 体系结构 217
13.5.3 安装 218
13.5.4 工具 225
13.5.5 OLAP Manager的使用 232
13.6 English Query 234
13.6.1 安装与卸载 234
13.6.2 主要概念 238
13.6.3 English Query的使用 238
第14章 服务器与客户端管理 242
14.1 服务器管理 242
14.1.1 注册服务器 242
14.1.2 网络连接管理 247
14.1.3 配置远程服务器 248
14.1.4 配置链接服务器 249
14.2 客户端管理 251
14.2.1 网络连接管理 251
14.2.2 配置ODBC数据源 252
14.3 使用Makepipe和Readpipe进行网络连接测试 252
第15章 SQL Server的监控与优化 254
15.1 监控的目的 254
15.2 监控SQL Server的工具 254
15.2.1 使用Profiler 254
15.2.2 使用NT事件查看器 261
15.2.3 使用SQL Server性能监视器(Performance Monitor) 263
15.3 监控错误日志 266
15.4 SQL Server的优化 268
15.4.1 存储过程 268
15.4.2 tempdb数据库 268
15.4.3 RAID 269
15.4.4 内存管理 269
15.4.5 其他 270
第16章 SQL Server故障排除 271
16.1 SQL Server信息资源及监测方法 271
16.2 SQL Server错误信息与分类 272
16.3 使用DBCC(DataBase Consistency Checker) 273
16.4 对于一些实际情况的判断与处理 275
附录A 关键词 277
附录B 常用Transact SQL语句快速参考 294