第一篇 SQL Server基础 2
第1章SQL Server 2000概述 2
1.1 SQL Server 2000简介 3
1.2 SQL Server 2000新特性 4
1.2.1关系数据库增强 4
1.2.2关系数据的XML集成 7
1.2.3图形管理增强 8
1.2.4复制增强 8
1.2.5数据转换服务增强 10
1.2.6 Analysis Services增强 11
1.2.7 Meta Data Services增强 12
1.2.8 English Query增强 12
1.3 SQL Server 2000服务器组成 12
1.3.1 SQL Server服务 13
1.3.2 SQL Server代理服务 13
1.3.3 Microsoft搜索服务 14
1.3.4 MS DTC服务 16
1.4 SQL Server 2000客户端组成 17
1.4.1关系数据库API 17
1.4.2 XML访问 18
1.4.3客户端通信 19
1.5小结 19
习题 20
第2章 安装SQL Server 2000 21
2.1安装SQL Server 2000的硬件和软件要求 22
2.1.1硬件要求 22
2.1.2操作系统要求 23
2.1.3 Internet要求 23
2.1.4网络软件要求 24
2.1.5支持的客户端 24
2.1.6其它Microsoft产品应考虑的事项 24
2.2安装SQL Server 2000 25
2.2.1如何安装SQL Server 2000 25
2.2.2如何只安装客户端工具 26
2.2.3如何使用任意版本SQL Server 2000只安装工具 26
2.2.4如何只安装连接 27
2.2.5如何安装SQL Server 2000命名实例 27
2.2.6如何向SQL Server 2000实例中添加、删除组件 28
2.2.7安装Analysis Services 29
2.2.8安装English Query 29
2.2.9如何卸载SQL Server的现有安装(安装程序) 30
2.3升级旧的SQL Server版本 31
2.3.1从SQL Server 6.5升级到SQL Server 2000 31
2.3.2从SQL Server 6.0升级到SQL Server 2000(不直接升级) 32
2.3.3 SQL Server 7.0版本升级 32
2.3.4如何将SQL Server 7.0安装升级到SQL Server 2000 33
2.3.5如何在SQL Server 2000内进行版本升级 33
2.4小结 34
习题 34
第3章SQL Server 2000的使用 36
3.1启动SQL Server 2000 37
3.1.1自动启动 37
3.1.2手工启动 38
3.1.3在单用户模式下启动 39
3.1.4最低配置启动 39
3.2登录 40
3.2.1登录前的准备 40
3.2.2具体登录 42
3.3运行 42
3.3.1在网络上运行SQL Server 42
3.3.2不在网络上运行SQL Server 43
3.4暂停和继续运行 43
3.5停止SQL Server 2000 44
3.5.1企业管理器 45
3.5.2命令提示符 45
3.5.3 Transact-SQL语句 46
3.5.4广播关闭消息 46
3.6小结 48
习题 48
第二篇SQL Server数据库设计 50
第4章 数据库概述 50
4.1什么是数据库 51
4.1.1基本概念 51
4.1.2数据库的三级结构 53
4.1.3关系数据库模型的基本概念 54
4.2 SQL Server 2000数据库的组成 54
4.2.1数据库应用程序和服务器 56
4.2.2客户端组件 58
4.2.3通信组件 64
4.2.4服务器组件 65
4.3小结 70
习题 70
第5章 创建数据库和事务日志 71
5.1创建一个数据库 72
5.1.1使用向导创建一个数据库 73
5.1.2使用Transact-SQL创建数据库 74
5.1.3使用Enterprise Manger创建数据库 80
5.1.4创建数据库需要考虑的因素 81
5.2删除数据库 81
5.2.1使用Transact-SQL删除数据库 81
5.2.2使用企业管理器删除数据库 82
5.3修改数据库 82
5.3.1扩充数据库 82
5.3.2收缩数据库 83
5.3.3创建文件组 85
5.3.4查看数据库 91
5.3.5创建可移动数据库 95
5.4事务日志管理 96
5.4.1事务的定义 96
5.4.2事务恢复 98
5.4.3添加事务日志文件 99
5.4.4删除日志 99
5.5锁 100
5.5.1锁定 101
5.5.2死锁处理 102
5.6小结 105
习题 105
第6章 表和关系键 107
6.1数据库表 108
6.1.1如何创建新表 109
6.1.2修改表结构 112
6.2数据类型 117
6.2.1 SQL Server数据类型 117
6.2.2字段的NULL属性 119
6.2.3字段的IDENTITY属性 119
6.3约束 122
6.3.1 PRIMARY KEY约束 122
6.3.2 FOREIGN KEY约束 123
6.3.3 UNIQUE约束 124
6.3.4 CHECK约束 125
6.3.5 DEFAULT定义 125
6.3.6允许空值 126
6.4关系键 126
6.4.1定义 126
6.4.2主键 126
6.4.3外部键 128
6.5小结 130
习题 131
第7章 索引和游标 132
7.1设计索引 133
7.1.1使用聚集索引 135
7.1.2使用非聚集索引 136
7.1.3使用唯一索引 137
7.1.4填充因子 137
7.1.5使用索引优化向导 138
7.2创建和使用索引 139
7.2.1在计算列上创建索引 140
7.2.2在视图上创建索引 141
7.2.3创建升序和降序索引 142
7.2.4重建索引 142
7.2.5显示索引信息 149
7.2.6删除索引 149
7.3游标类型 150
7.4游标事件分类 151
7.4.1游标事件类 151
7.4.2游标数据列 151
7.5使用游标 152
7.5.1声明游标 153
7.5.2打开游标 154
7.5.3存取游标 155
7.5.4关闭游标 156
7.5.5删除游标 156
7.5.6获取游标信息 157
7.6小结 160
习题 160
第8章 管理和使用视图 161
8.1创建视图 162
8.1.1使用企业管理器 163
8.1.2使用Transact-SQL命令 164
8.1.3使用向导创建视图 167
8.1.4设计索引视图 167
8.1.5创建分区视图 170
8.2查询视图 172
8.2.1获取关于视图的信息 172
8.2.2查看由视图定义的数据 172
8.2.3显示视图的相关性 173
8.3编辑视图 173
8.4修改视图及名称 174
8.5删除视图 177
8.6通过视图修改数据库 177
8.7小结 179
习题 179
第9章 存储过程和触发器 180
9.1存储过程 181
9.2创建存储过程 182
9.2.1系统存储过程 182
9.2.2分组 183
9.2.3临时存储过程 183
9.2.4使用Transact-SQL创建存储过程 184
9.3使用Transact-SQL执行存储过程 186
9.4修改存储过程 189
9.4.1修改存储过程 190
9.4.2重命名存储过程 192
9.5重新编译存储过程 193
9.6查看存储过程 194
9.6.1查看存储过程的定义 194
9.6.2查看有关存储过程的信息 194
9.6.3查看存储过程的相关性 195
9.6.4查看关于扩展存储过程的信息 195
9.7删除存储过程 195
9.7.1删除存储过程 196
9.7.2删除扩展存储过程 196
9.8触发器 196
9.9使用触发器 198
9.9.1创建触发器 199
9.9.2显示触发器信息 201
9.9.3编辑触发器 201
9.9.4删除触发器 203
9.10修改触发器 204
9.11小结 205
习题 205
第三篇 SQL Server 2000数据库管理 208
第10章SQL Server数据库的优化 208
10.1设计联合数据库服务器 209
10.1.1设计分区 210
10.1.2设计高度可用联合数据库服务 212
10.1.3备份和还原联合数据库服务器 212
10.2数据库设计 212
10.2.1逻辑数据库设计 213
10.2.2物理数据库设计 213
10.3查询优化 214
10.3.1分析查询优化 215
10.3.2高级查询优化 216
10.4优化服务器性能 216
10.4.1使用I/O配置选项 216
10.4.2使用内存配置选项 217
10.4.3使用Windows NT选项 218
10.5优化实用工具 218
10.5.1优化备份和还原性能 218
10.5.2优化大容量复制性能 221
10.5.3优化ODBC性能 223
10.6小结 223
习题 223
第11章 管理数据库信息 225
11.1添加数据信息 226
11.1.1添加一条记录 228
11.1.2使用SELECT子句添加多条记录 231
11.2故障转移群集 233
11.3故障转移群集示例 234
11.4导入和导出数据 234
11.4.1选择用于导入和导出数据的工具 235
11.4.2准备用于导入和导出的数据 236
11.4.3导入和导出数据示例 237
11.5命令行程序bcp 238
11.5.1语法 238
11.5.2使用格式 239
11.5.3指定数据格式 239
11.5.4使用格式文件 240
11.5.5复制数据 242
11.6小结 245
习题 245
第12章 数据库备份和恢复 246
12.1设计策略 247
12.1.1分析可用性和恢复要求 247
12.1.2灾难恢复计划 248
12.1.3选择恢复模型 249
12.2使用恢复模型 251
12.2.1简单恢复 251
12.2.2完全恢复 257
12.2.3大容量日志记录恢复 262
12.3备份操作 269
12.3.1数据库备份 269
12.3.2差异数据库备份 270
12.3.3事务日志备份 270
12.4还原操作 273
12.4.1将数据库还原到前一个状态 273
12.4.2部分数据库还原操作 275
12.4.3恢复数据库但不还原 278
12.5其它应用 279
12.5.1将数据库复制到其它服务器 279
12.5.2处理大型使命关键环境 279
12.6小结 280
习题 280
第13章 建立和使用复制 281
13.1复制的概念和特点 282
13.1.1复制的优点 282
13.1.2复制模型 283
13.2复制类型介绍 284
13.2.1快照复制 284
13.2.2事务复制 284
13.2.3合并复制 284
13.3复制和发布数据 285
13.3.1配置复制 285
13.3.2发布数据和数据库对象 287
13.3.3订阅到发布 289
13.3.4生成初始快照 292
13.3.5应用初始快照 292
13.3.6同步数据 296
13.4异类复制 298
13.4.1异类订阅服务器 298
13.4.2异类发布服务器 298
13.4.3具体实现 298
13.5小结 300
习题 300
第14章 分布式事务和分布式查询 301
14.1分布式事务处理 302
14.1.1 Transact-SQL分布式事务 303
14.1.2执行事务(ODBC) 304
14.2安装和配置DTC 305
14.2.1 MS DTC服务 305
14.2.2 MS DTC分布式事务 305
14.2.3 MS DTC事务疑难解答 306
14.3安装和调试分布式事务处理 307
14.3.1 BEGIN TRANSACTION函数 307
14.3.2 COMMIT TRANSACTION函数 309
14.3.3 ROLLBACK TRANSACTION函数 311
14.3.4 BEGIN DISTRIBUTED TRANSACTION函数 312
14.4分布式查询 313
14.4.1访问外部数据 314
14.4.2在分布式查询中使用事务 315
14.4.3分布式查询中的排序规则 316
14.4.4从链接服务器中获得元数据 317
14.5 OLE DB技术 318
14.6小结 320
习题 320
第15章 SQL Server的安全性 321
15.1设置安全级别 322
15.1.1身份验证模式 322
15.1.2安全账户委托 324
15.1.3以限验证 325
15.1.4层次安全性 325
15.2创建安全账户 326
15.2.1添加Windows用户或组 327
15.2.2添加SQL Server登录 328
15.2.3创建用户定义SQL Server数据库角色 331
15.2.4将成员添加到SQL Server数据库角色 332
15.2.5将成员添加到预定义角色中 332
15.3管理安全账户 334
15.3.1查看登录 334
15.3.2修改登录 335
15.3.3删除登录和用户 335
15.4管理权限 336
15.4.1授预权限 338
15.4.2拒绝权限 339
15.4.3废除权限 340
15.4.4解决权限冲突 341
15.5审核SQL Server活动 342
15.5.1使用SQL事件探查器 342
15.5.2使用审核日志 343
15.5.3审核 343
15.6小结 343
习题 343
第16章 SQL Server工具 345
16.1 SQL Mail 346
16.1.1配置邮件配置文件 347
16.1.2使用SQL邮件存储过程 349
16.2 SQL查询分析器概述 350
16.2.1使用isqlw 350
16.2.2使用SQL查询分析器窗口 350
16.2.3在SQL查询分析器中执行SQL语句 352
16.2.4在SQL查询分析器中执行存储过程 352
16.2.5取消运行时间过长的查询 352
16.2.6在SQL查询分析器中解决错误 352
16.2.7在SQL查询分析器中返回结果集 352
16.2.8在SQL查询分析器中输入数据 353
16.3 SQL事件探查器 353
16.3.1 启动SQL事件探查器 354
16.3.2 SQL事件探查器术语 355
16.3.3 SQL事件探查器方案 356
16.4 SQL Server企业管理器 357
16.4.1启动SQL Server企业管理器 358
16.4.2启用子窗口 358
16.4.3“常规”选项卡 359
16.4.4“别名”选项卡 359
16.4.5管理客户端 359
16.5 DTS导入/导出向导 360
16.5.1基本概念 361
16.5.2使用DTS导入/导出向导 362
16.6小结 363
习题 363
第17章 数据仓库与OLAP 364
17.1安装Ananysis Serverices 366
17.1.1软硬件要求 366
17.1.2运行安装程序 367
17.1.3重新安装 369
17.1.4停止和安装 369
17.1.5升级 369
17.2数据仓库与OLAP 370
17.2.1数据仓库 370
17.2.2 OLAP 371
17.2.3 OLAP和数据仓库 371
17.2.4维护OLAP数据 372
17.3 Analysis Services功能 375
17.3.1易于使用 375
17.3.2灵活的数据模型 377
17.3.3可伸缩性 379
17.3.4服务器 380
17.3.5客户端构架 381
17.4设计数据仓库和OLAP系统 381
17.5小结 382
习题 382
第18章 Analysis Services的使用 384
18.1 Analysis Services管理工具 385
18.1.1 Analysis Manager 385
18.1.2使用Active Directory 386
18.1.3使用数据转换服务 386
18.1.4使用MDX 386
18.1.5 Msmdarch命令 387
18.2 Analysis Services任务 389
18.2.1注册服务器 389
18.2.2创建数据库 389
18.2.3创建虚拟维度 389
18.3 Analysis Services规范和限制 392
18.3.1受支持的关系数据库产品 393
18.3.2规范 393
18.3.3源列数据类型 394
18.3.4 OLE DB数据类型 394
18.3.5外部限制 394
18.4 MDX概述 395
18.4.1 MDX简介 395
18.4.2 MDX中的重要概念 395
18.4.3 SQL和MDX比较 397
18.5 MDX基础 399
18.5.1基本MDX查询 399
18.5.2轴维度和切片器维度 400
18.5.3建立多维数据集上下文 401
18.6高级MDX 401
18.6.1创建和使用用户定义函数 401
18.6.2使用DRILLTHROUGH检索源数据 404
18.7有效应用MDX 404
18.7.1 MDX中的注释 404
18.7.2在多维数据集的上下文内创建单元 405
18.7.3 WHERE子句替代 406
18.8小结 406
习题 407
第19章SQL Server 2000与Internet 408
19.1 XML技术 409
19.1.1 XML概述 409
19.1.2 SQL Server和XML支持 410
19.2 XPath查询 411
19.2.1在XPath查询中指定轴 413
19.2.2在XPath查询中指定布尔值谓词 416
19.2.3在XPath查询中指定关系运算符 418
19.2.4在XPath查询中指定算术运算符 419
19.2.5在XPath查询中指定显示转换 420
19.2.6在XPath查询中指定布尔运算符 421
19.2.7在XPath查询中指定布尔函数 422
19.2.8在XPath查询中指定XPath变量 423
19.3使用FOR XML检索XML文档 424
19.3.1使用RAW模式 429
19.3.2使用AUTO模式 430
19.3.3使用EXPLICIT模式 433
19.4使用OPEN XML编写XML 435
19.4.1使用OPEN XML编写XML 435
19.4.2在OPENXML中指定元属性 438
19.5示例XML应用程序 441
19.5.1 sp_xml_preparedocument 441
19.5.2 sp_xml_removedocument 443
19.6小结 443
习题 443
附录 446
附录1 SQL Server 2000培训大纲 446
附录2 XML错误信息 447