第一部分 Microsoft SQL Server入门 2
第1章 Microsoft SQL Server的环境 2
1.1 客户机/服务器概述 2
1.2 SQL Server数据库引擎 4
1.3 SQL Server Enterprise Manager 6
1.4 SQL Service Manager 7
1.5 SQL Server Agent 7
1.6 SQL Query Analyzer 8
1.7 SQL Profiler 9
1.8 数据转换服务 10
1.9 复制 11
1.10 Microsoft Search Server(全文查找) 12
1.11 Analysis Services(0LAP Server) 13
1.12 小结 14
第2章 SQL Server 2000的环境与版本 15
2.1 SQL Server 2000的环境 15
2.2 SQL Server 2000的版本 17
2.3 SQL Server 2000的许可证模型 21
2.4 小结 23
第3章 SQL Server2000的新特性 24
3.1 SQL Server 2000的新特性 24
3.2 SQL Server 2000的改进 27
3.3 小结 29
第二部分 安装与升级 32
第4章 安装新SQL Server实例 32
4.1 选择SQL Server版本 32
4.2 硬件要求 33
4.3 软件要求 35
4.4 选择安装配置选项 36
4.5 验证安装 40
4.6 启动、停止与暂停SQL Server 40
4.7 安装后配置 41
4.8 安装查错 42
4.9 远程安装 42
4.10 非现场安装 43
4.11 安装命名实例 43
4.12 从旧版升级 44
4.13 小结 44
第5章 客户机安装与配置 45
5.1 SQL Server客户机的体系结构 45
5.2 安装客户机工具 46
5.3 客户机配置 48
5.4 网络协议支持 50
5.5 安装ODBC 55
5.6 通过Internet连接SQL Server 56
5.7 小结 57
第三部分 SQL Server管理任务与工具 60
第6章 SQL Server系统与数据库管理 60
6.1 系统管理员的责任 60
6.2 系统数据库 61
6.3 系统表 62
6.4 系统存储过程 64
6.5 常用的系统过程 65
6.6 查询系统表的其他方法 65
6.7 小结 66
7.1 建立服务器组并在Enterprise Manager中注册SQL Server 67
第7章 SQL Server Enterprise Manager 67
7.2 服务器配置 69
7.3 数据库 71
7.4 安全性 74
7.5 服务器管理 75
7.6 DTS 78
7.7 Support Services 78
7.8 系统工具 79
7.9 复制 81
7.10 使用数据库Taskpad 82
7.11 使用Query Designer 83
7.12 对象脚本 84
7.14 小结 86
7.13 取得帮助 86
第8章 SQL Servet命令行实用程序 87
8.1 BCP 87
8.2 Data Transformation Services实用程序 88
8.3 ISQL/OSQL 89
8.4 makepipe与readpipe 89
8.5 ODBCcmpt 90
8.6 odbcping 90
8.7 rebuildm 91
8.8 regrebld 92
8.9 复制实用程序 92
8.10 SQLDiag 93
8.11 SQLMaint 94
8.13 VSwitch 95
8.12 SQLServr 95
8.14 小结 96
第9章 生成与管理数据库 97
9.1 SQL Server数据库的构成 97
9.2 SQL Server中的数据存储 97
9.3 数据库文件 98
9.4 生成数据库 100
9.5 管理数据库 103
9.6 设置数据库选项 106
9.7 小结 110
第10章 在SQL Server中生成与管理表格 111
10.1 数据类型 112
10.2 数字数据类型 114
10.4 用户定义数据类型 116
10.3 数据类型同义词 116
10.5 生成表格 117
10.6 用T-SQL生成表格 118
10.7 用Table Designer生成表格 123
10.8 在Enterprise Manager中浏览表格属性与数据 125
10.9 限制表格长度与维度 126
10.10 删除表格 126
10.11 临时表 127
10.12 小结 127
第11章 在SQL Server 中生成与管理索引 128
11.1 索引类型 128
11.2 用T-SQL生成索引 129
11.3 用Enterprise Manager生成索引 131
11.5 删除索引 132
11.6 小结 132
11.4 管理索引 132
第12章 数据完整性 133
12.1 数据完整性类型 133
12.2 保证数据完整性 134
12.3 限制 134
12.4 规则 141
12.5 默认 142
12.6 小结 145
第13章 在SQL Server 中生成与管理视图 146
13.1 定义视图 146
13.2 用视图简化数据读取 146
13.3 视图作为安全机制 148
13.4 数据修改与视图 148
13.5 生成视图 149
13.6 改变与删除视图 152
13.7 分区视图 153
13.8 索引视图 155
13.9 小结 156
第14章 生成与管理存储过程 157
14.1 存储过程的优点 157
14.2 生成与执行存储过程 158
14.3 延迟名称解析 161
14.4 浏览与修改存储过程 163
14.5 使用输入参数 167
14.6 使用输出参数 172
14.7 返回过程状态 172
14.8 存储过程中的临时表 174
14.9 嵌套存储过程 177
14.10 在存储过程中使用临时表 181
14.11 使用table数据类型 186
14.12 远程存储过程 188
14.13 使用Query Analyzer调试存储过程 188
14.14 使用Microsoft Visual Studio与Visual BASIC调试存储过程 190
14.15 系统存储过程 190
14.16 存储过程的性能 195
14.17 在存储过程中使用动态SQL 204
14.18 自动启动过程 208
14.19 扩展存储过程 211
14.20 存储过程编码准则与限制 215
14.21 小结 218
15.1 触发器的好处与用途 219
第15章 生成与管理触发器 219
15.2 生成触发器 220
15.3 AFTER触发器 222
15.4 inserted与deleted表 225
15.5 检查列更新 226
15.6 嵌套触发器 228
15.7 递归触发器 228
15.8 用触发器保证参照完整性 229
15.9 INSTEAD OF触发器 233
15.10 小结 239
第16章 用户定义函数 240
16.1 为什么使用用户定义函数 240
16.2 函数类型 242
16.3 生成与管理函数 245
16.5 系统级表格值函数 256
16.4 调用用户定义函数 256
16.6 将存储过程改写为函数 257
16.7 小结 257
第17章 安全与用户管理 258
17.1 SQL Server安全概述 258
17.2 验证方法 258
17.3 SQL Server安全:登录 260
17.4 SQL Server安全:用户 260
17.5 SQL Server安全:角色 261
17.6 管理SQL Server登录 264
17.7 管理SQL Server用户 267
17.8 管理数据库角色 268
17.9 管理SQL Server权限 269
17.11 对象拥有者 272
17.10 SQL Server权限方法 272
17.12 使用加密 273
17.13 小结 273
第18章 数据库备份与恢复 274
18.1 开发备份与恢复计划 274
18.2 为何备份数据库 275
18.3 典型备份与恢复情况 275
18.4 备份类型 276
18.5 设置恢复方式 278
18.6 备份设备 279
18.7 媒介集与系列 280
18.8 用Transact-SQL生成备份设备 280
18.9 用SQL Enterprise Manager生成备份设备 283
18.10 备份数据库 283
18.11 备份事务日志 288
18.12 恢复数据库 291
18.13 Transact-SQL恢复示例 294
18.14 恢复到另一数据库 297
18.15 恢复文件或文件组 297
18.16 恢复到某一时刻 297
18.17 进行部分数据库恢复 298
18.18 恢复系统数据库 298
18.19 其他备份考虑的因素 299
18.20 小结 300
第19章 数据库维护 301
19.1 维护什么 301
19.2 Database Maintenance Plan Wizard 301
19.3 设置维护任务 307
19.4 数据库控制台命令 308
19.6 小结 309
19.5 用SQLMAINT.EXE进行数据库维护 309
第20章 SQL Server的计划与通知 310
20.1 SQL Server Agent概述 310
20.2 配置SQL Server Agent 310
20.3 浏览SQL Server Agent错误日志 312
20.4 Operators账号 313
20.5 作业 313
20.6 警报 316
20.7 作业与警报脚本 318
20.8 多服务器作业管理 319
20.9 事件转发 319
20.10 小结 320
第21章 管理链接与远程服务器 321
21.1 远程服务器 321
21.2 链接服务器 325
21.3 增加、删除与配置链接服务器 327
21.4 映射本地登录到链接服务器上的登录 332
21.5 取得链接服务器一般信息 335
21.6 通过链接服务器执行存储过程 336
21.7 通过Enterprise Manager设置链接服务器 337
21.8 小结 339
第22章 用BCP导入与导出SQL Server数据 340
22.1 批量复制程序 345
22.2 登记与非登记操作 358
22.3 BULK INSERT语句(Transact-SQL) 362
22.4 改进装入性能 363
22.5 BCP之类 364
22.6 小结 367
第23章 用DTS导入与导出SQL Server数据 368
23.1 DTS体系结构与概念 371
23.2 包执行实用程序 374
23.3 运行DTS Wizard 377
23.4 DTS Designer 380
23.5 再谈元数据 385
23.6 小结 385
第24章 管理超大SQL Server数据库 386
24.1 何为超大数据库 386
24.2 VLDB的维护问题 386
24.3 数据分区 388
24.4 小结 389
第25章 数据复制 390
25.1 何谓复制 390
25.2 发表者、分配者与预订者 391
25.3 复制方案 396
25.4 复制代理 402
25.5 规划SQL Server数据复制 407
25.6 SQL Server复制类型 408
25.7 用户要求驱动复制设计 410
25.8 设置复制 411
25.9 复制脚本 418
25.10 监视复制 420
25.11 小结 431
第26章 定义SQL Server环境与命名标准 432
26.1 SQL Server环境方法 432
26.2 SQL Server命名标准 438
26.3 小结 447
27.1 T-SQL与ANSI/ISO SQL 450
第四部分 Transact-SQL 450
第27章 在SQL Server2000中使用Transact-SQL 450
27.2 SQL Server 2000中的T-SQL新特性 451
27.3 SELECT,INSERT,UPDATE与DELETE 457
27.4 SQL Server函数 473
27.5 编程结构 487
27.6 临时表 510
27.7 小结 527
第28章 事务管理与事务日志 528
28.1 何谓事务 528
28.2 SQL Server如何管理事务 529
28.3 定义事务 529
28.4 事务日志与恢复过程 536
28.5 事务与批命令 540
28.6 事务与存储过程 542
28.7 事务与触发器 545
28.8 事务与锁 549
28.9 编码有效事务 550
28.10 长期运行的事务 550
28.11 关联的连接 552
28.12 分布式事务 554
28.13 小结 554
第29章 分布式事务处理 555
29.1 分布式事务处理 555
29.2 分布式查询 557
29.3 链接服务器 558
29.5 MS DTC体系结构 563
29.4 分布式事务 563
29.6 小结 569
第五部分 SQL Server内幕与性能调整 572
第30章 SQL Server内幕 572
30.1 SQL Server内存管理 572
30.2 SQL Server进程管理 576
30.3 SQL Server磁盘I/O 577
30.4 SQL Server存储结构 579
30.5 数据库文件与文件组 579
30.6 数据库页 590
30.7 表 613
30.8 索引 615
30.9 数据修改与性能 640
30.10 小结 647
31.1 索引使用条件 648
第31章 索引与性能 648
31.2 索引选择 650
31.3 评估索引的有效性 650
31.4 索引统计信息 652
31.5 索引设计准则 663
31.6 索引视图 667
31.7 计算列索引 668
31.8 Index Tuning Wizard 669
31.9 选择索引:查询与更新性能 676
31.10 小结 677
第32章 了解查询优化 678
32.1 何谓查询优化器 678
32.2 查询编译与优化 679
32.3 第1步:查询分析 680
32.4 第2步:索引选择 684
32.5 第3步:连接选择 696
32.6 第4步:执行计划选择 700
32.7 复用查询计划 701
32.8 其他查询处理策略 704
32.9 并行查询处理 706
32.10 数据仓库与大型数据库查询策略 709
32.11 常见查询优化问题 710
32.12 管理查询优化器 712
32.13 小结 718
第33章 查询分析 719
33.1 在Query Analyzer中显示执行计划 720
33.2 Query Analyzer服务器跟踪 728
33.4 SHOWPLAN_ALL与SHOWPLAN_TEXT 729
33.3 Query Analyzer客户机统计信息 729
33.5 统计信息 731
33.6 查询分析与SQL Profiler 736
33.7 小结 736
第34章 使用SQL Server Profiler 737
34.1 SQL Server Profiler的体系结构 737
34.2 生成跟踪 738
34.3 保存与导出跟踪 745
34.4 重放跟踪数据 747
34.5 定义服务器端跟踪 747
34.6 Profiler情况 748
34.7 小结 751
35.1 第一个T-SQL调试器 752
第35章 在Query Analyzer中使用SQL调试器 752
35.2 在Query Analyzer中使用T-SQL调试器 753
35.3 调试器的限制 755
35.4 单步执行存储过程 755
35.5 小结 756
第36章 监视SQL Server的性能 757
36.1 性能监视方法 758
36.2 Performance Monitor 758
36.3 Windows性能计数器 760
36.4 SQL Server性能计数器 767
36.5 SNMP支持 769
36.6 用DBCC检查性能 770
36.7 其他SQL Server性能考虑因素 772
36.8 小结 773
37.1 锁的作用 774
第37章 锁与性能 774
37.2 SQL Server中的事务隔离级 775
37.3 锁管理器 778
37.4 在SQL Server中监视锁活动 778
37.5 SQL Server的锁类型 785
37.6 SQL Server的锁粒度 791
37.7 锁的兼容性 798
37.8 锁冲突与死锁 799
37.9 锁的表格提示 810
37.10 开放式锁 812
37.11 小结 814
第38章 数据库设计与性能 815
38.1 性能设计的基本原则 815
38.2 逻辑数据库的设计问题 816
38.3 反范化数据库 817
38.4 索引与性能 822
38.5 索引设计准则 828
38.6 SQL Server索引维护 830
38.7 更新与性能 836
38.8 数据库文件组与性能 837
38.9 RAID技术 838
38.10 小结 840
第39章 配置、调整和优化SQL Server选项 841
39.1 SQL Server实例的体系结构 841
39.2 配置选项 842
39.3 纠正不正确的选项设置 847
39.4 用SQL Enterprise Manager设置配置选项 848
39.5 废弃的配置选项 848
39.6 配置选项与性能 849
39.7 小结 864
第六部分 将SQL Server集成到Microsoft体系结构 866
第40章 SQL Mail 866
40.1 设置E-mail客户机/配置文件 866
40.2 配置SQL Mail 870
40.3 配置SQLAgentMail 872
40.4 SQL Mail的存储过程 876
40.5 小结 882
第41章 在SQL Server 2000中使用XML 884
41.1 生成SQL Server 2000使用的虚拟目录 884
41.2 研究可扩展标记语言 886
41.3 用FOR XML子句取得数据 887
41.4 使用FOR XML RAW 888
41.5 使用FOR XML AUTO 889
41.6 使用FOR XML AUTO,ELEMENTS 890
41.7 使用FOR XML EXPLICIT 890
41.8 取得XML数据结构 892
41.9 取得XML中的二进制数据 894
41.10 XML路径语言(XPath)基础 895
41.11 在存储过程中使用XML 896
41.12 用OPENXML读XML 898
41.13 使用URL查询 900
41.14 使用XML模板 901
41.15 使用XML更新图 903
41.16 小结 904
第42章 Microsoft SQL Server Analysis Services 905
42.1 何谓Analysis Services与OLAP 905
42.2 了解Analysis Services环境与“向导之家” 906
42.3 分析性设计方法 911
42.4 OLAP要求的示例 912
42.5 生成OLAP立方体 914
42.6 生成OLAP数据库 915
42.7 使用关系数据库 929
42.8 操作系统级文件 932
42.9 小结 936
第43章 MicrosoftTransaction Server 937
43.1 MTS概述 937
43.2 建立MTS组件 941
43.3 安装MTS组件 943
43.4 配置安全性 946
43.5 运行MTS应用程序 948
43.6 使用数据库连接池 951
43.7 小结 952
第44章 SQL Server集群 953
44.1 从Windows NTEnterprise Edition到Windows 2000 Advanced Server 953
44.2 Cluster Services 955
44.3 SQL集群与故障切换支持 956
44.4 网络负载平衡 959
44.5 小结 960
第45章 全文查找 961
45.1 Search Server如何工作 961
45.2 设置全文索引 962
45.3 维护全文索引 963
45.4 全文索引查找 965
45.5 使用文档过滤器 968
45.6 Index Server与数据文件全文查找 968
45.7 小结 969