第一部分 SQL Server 2000使用基础 3
第1章 SQL Server 2000概述 3
1.1 数据库基础知识 3
1.1.1 数据库的基本概念 3
1.1.2 数据模型 5
1.2 SQL Server简介 8
1.3 SQL Server 2000的新增功能 9
1.3.1 数据库增强 9
1.3.2 联合数据库服务器(Federated Database Servers) 10
1.4.1 Client Network Utility 13
1.4 SQL Server 2000的工具 13
1.4.2 Enterprise Manager 15
1.4.3 SQL Server Query Analyzer 16
1.4.4 SQL Server Profiler 17
1.4.5 SQL Server Agent 20
1.4.6 SQL Server Service Manager 20
1.4.7 SQL Server联机帮助 21
1.4.8 向导 22
1.5 小结 24
2.1.2 软件要求 25
2.1.1 硬件要求 25
2.1 准备安装 25
第2章 安装和配置SQL Server 2000 25
2.1.3 创建SQL Server服务账号 26
2.2 开始安装 26
2.3 认识SQL Server 2000 34
2.3.1 目录结构 34
2.3.2 系统数据库和样本数据库 35
2.3.3 SQL Server 2000程序组 35
2.3.4 启动SQL Server 2000 36
2.4.1 注册服务器 38
2.4 注册和配置服务器 38
2.4.2 配置服务器 42
2.5 小结 48
第3章 Transact-SQL语言基础 49
3.1 运算符 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.1.5 运算符优先级 52
3.2.2 字符数据类型 53
3.2.3 日期和时间数据类型 53
3.2.4 Unicode数据类型 53
3.2.5 数字数据类型 53
3.2.6 货币数据类型 53
3.2.7 特殊数据类型 53
3.2.8 用户自定义数据类型 54
3.3 函数 54
3.3.1 字符串函数 54
3.3.2 日期时间函数 56
3.3.3 数学函数 58
3.3.4 转换函数 59
3.3.5 系统函数 60
3.3.6 集合函数 63
3.4 SELECT语句 64
3.4.1 选择列 64
3.4.2 FROM子句 67
3.4.3 WHERE子句 68
3.4.4 ORDER BY子句 71
3.4.5 GROUP BY和HAVING子句 72
3.4.6 COMPUTE和COMPUTE BY子句 77
3.5.1 批处理 81
3.5 批处理和流程控制语言 81
3.5.2 事务管理 82
3.5.3 流程控制语言 83
3.6 小结 88
第4章 数据库管理 89
4.1 数据库中的对象 89
4.1.1 事务日志 89
4.1.2 文件和文件组 90
4.2 数据库设计 90
4.3.1 创建数据库及事务日志 91
4.3 数据库和事务日志管理 91
4.3.2 设定数据文件和日志文件的大小 100
4.3.3 压缩数据库 101
4.3.4 删除数据库 101
4.4 数据库选项 103
4.5 使用TempDB数据库 104
4.6 创建备份设备 104
4.6.1 使用SQL Server Enterprise Manager添加转储设备 105
4.6.2 使用sp_addumpdevice添加转储设备 106
4.7.2 使用sp_dropdevice删除设备 107
4.8 小结 107
4.7 删除设备 107
4.7.1 使用SQL Server Enterprise Manager删除设备 107
第5章 创建和管理表 108
5.1 创建表 108
5.1.1 使用CREATE TABLE语句创建表 109
5.1.2 使用SQL Enterprise Manager创建表 110
5.2 改变表的结构 112
5.2.1 使用ALTER TABLE命令增加或删除列 113
5.2.2 使用SQL Enterprise Manager增加或删除列 113
5.3 向表中添加数据 115
5.3.2 使用SELECT语句插入数据 116
5.3.1 插入部分数据 116
5.3.3 使用SELECT INTO语句插入数据 117
5.4 修改和删除表中的数据 117
5.4.1 修改表中的数据 117
5.4.2 删除表中的数据 118
5.5 删除表 118
5.5.1 使用DROP TABLE删除表 118
5.5.2 使用SQL Server Enterprise Manager删除表 118
5.6 小结 119
6.1 建立查询 120
第6章 数据检索 120
6.2 全文本和分布式查询 123
6.2.1 全文本查询 124
6.2.2 分布式查询 127
6.3 连接查询 127
6.3.1 内连接 128
6.3.2 无限制连接 129
6.3.3 外连接 130
6.3.4 自连接 131
6.4 子查询 133
6.5 小结 134
第7章 索引 135
7.1 概述 135
7.2 创建索引 137
7.2.1 使用Transact-SQL语句创建索引 137
7.2.2 使用SQL Server Enterprise Manager创建索引 139
7.3 更改索引名称 140
7.3.1 使用Transact-SQL语句更改索引名称 141
7.3.2 使用Enterprise Manager更改索引名称 141
7.4 删除索引 141
7.5 创建索引选项 142
7.5.1 FILLFACTOR选项 142
7.4.2 使用Enterprise Manager删除索引 142
7.4.1 使用Transact_SQL语句删除索引 142
7.5.2 PAD_INDEX选项 143
7.5.3 SORTED_DATA_REORG选项 143
7.6 维护索引 143
7.6.1 DBCC SHOWCONTIG语句 143
7.6.2 DBCC DBREINDEX语句 144
7.6.3 索引统计 144
7.6.4 索引分析 144
7.7 小结 145
8.1 概述 146
第8章 视图 146
8.2 创建视图 147
8.2.1 使用Transact_SQL语句创建视图 147
8.2.2 使用CREATE VIEW向导创建视图 148
8.3 显示视图 151
8.4 修改视图 153
8.5 删除视图 153
8.6 查看视图定义信息 154
8.7 重新命名视图 156
8.8 小结 156
第9章 存储过程与触发器 158
9.1 存储过程概述 158
9.2.1 创建存储过程 159
9.2 存储过程的使用与管理 159
9.2.2 修改存储过程 164
9.2.3 删除存储过程 165
9.2.4 执行存储过程 165
9.2.5 扩展存储功能 166
9.3 触发器概述 166
9.4 触发器的使用与管理 167
9.4.1 创建触发器 167
9.4.2 修改触发器 169
9.4.3 显示触发器信息 170
9.4.4 触发器的工作原理 172
9.5 小结 173
第二部分 SQL Server 2000系统管理 177
第10章 数据库安全性 177
10.1 认证模式 177
10.2 Login管理 179
10.3 用户管理 183
10.4 角色管理 184
10.4.1 固定服务器角色 184
10.4.2 固定的数据库角色 185
10.4.3 用户自定义数据库角色 187
10.5 小结 188
11.1.2 对象许可 189
11.1.1 语句许可 189
11.1 许可类型 189
第11章 许可管理 189
11.1.3 许可状态 190
11.2 验证许可 190
11.3 管理许可 191
11.3.1 授予许可 191
11.3.2 否定许可 193
11.3.3 收回许可 194
11.4 小结 195
12.1 概述 196
第12章 数据库备份 196
12.2 准备备份 197
12.2.1 备份系统数据库 197
12.2.2 备份用户数据库 197
12.2.3 执行备份前的准备 198
12.3 执行备份 198
12.3.1 创建临时性备份文件 198
12.3.2 创建永久性备份文件 199
12.3.3 使用多个备份文件进行备份 200
12.3.4 使用BACKUP语句 201
12.3.5 使用备份向导进行备份 201
12.4.1 完全数据库备份 205
12.4 备份类型 205
12.3.6 备份到磁带设备上 205
12.4.2 增量备份 208
12.4.3 事务日志备份 208
12.4.4 数据库文件和文件组备份 209
12.5 小结 209
第13章 数据库恢复 210
13.1 概述 210
13.2 恢复数据库 211
13.2.1 使用SQL Server Enterprise执行数据库恢复 211
13.2.2 使用RESTORE语句恢复数据库 212
13.3.1 从完全数据库备份中恢复 213
13.3 从不同备份中恢复数据库 213
13.3.2 从增量备份中恢复 214
13.3.3 恢复事务日志 214
13.3.4 恢复文件组和文件 216
13.4 恢复系统数据库 216
13.5 小结 216
第14章 数据的导入与导出 218
14.1 数据传输方法 218
14.1.1 批拷贝库 218
14.1.2 分布式查询 218
14.2.1 DTS导入与导出 219
14.1.3 数据传输服务(DTS) 219
14.2 数据传输服务 219
14.2.2 DTS包 226
14.3 小结 232
第15章 复制 233
15.1 复制的概念和特点 233
15.2 复制与出版的关系 233
15.3 创建复制 235
15.3.1 创建分发服务器 235
15.3.2 创建出版物 241
15.3.3 创建订阅 248
15.4 监视复制 255
15.5 卸载复制 256
15.6 小结 256
第16章 使用SQL Server Agent 257
16.1 配置SQL Server Agent 257
16.2 定义操作员 260
16.3 任务管理 262
16.3.1 定义任务 263
16.3.2 调度任务 266
16.3.3 任务执行状态通知 267
16.4.1 事件警报 268
16.4 管理警报 268
16.4.2 性能警报 270
16.5 小结 271
第17章 服务器性能监视 272
17.1 使用性能监视器 272
17.1.1 图形监视方式 272
17.1.2 警报监视方式 274
17.1.3 报表监视方式 276
17.2 使用Enterprise Manager 277
17.3.1 使用sp_who 278
17.3 使用系统存储过程 278
17.3.2 使用sp_monitor 279
17.3.3 使用sp_lock 280
17.4 小结 281
第18章 数据库Web出版 282
18.1 使用SQL Server Web Assistant 282
18.1.1 定义出版内容 283
18.1.2 调度出版任务 284
18.1.3 格式化Web页面 285
18.2 使用系统存储过程出版数据库 289
18.2.1 创建Web出版任务 290
18.3 小结 293
18.2.3 删除Web出版任务 293
18.2.2 执行Web出版任务 293
第三部分 SQL Server 2000开发指南 297
第19章 游标管理 297
19.1 游标概述 297
19.1.1 游标和游标的优点 297
19.1.2 游标的用途 298
19.1.3 游标的种类 298
19.2 声明游标 298
19.3 打开游标 302
19.4 读取游标中的数据 303
19.5.2 释放游标 305
19.5.1 关闭游标 305
19.5 关闭、释放游标 305
19.5.3 游标变量 306
19.6 定位修改、删除游标 307
19.7 游标的应用 309
19.7.1 游标变量的应用 309
19.7.2 嵌套游标 311
19.8 使用系统过程管理游标 313
19.8.1 sp_cursor_list 313
19.8.2 sp_describe_cursor 314
19.9 小结 315
20.1.1 DB-LIB所需的组件 316
第20章 SQL Server 2000开发体系结构 316
20.1 DB-Library接口 316
20.1.2 概念和特性 317
20.1.3 发送命令 318
20.1.4 结果集 319
20.1.5 关闭SQL连接 320
20.1.6 客户机配置 320
20.1.7 使用DB-Library的优缺点 320
20.2 开放式数据库连接(ODBC) 320
20.2.1 SQL-DMO对象的契合点 320
20.2.2 数据访问对象(DAO)的契合点 321
20.2.4 ODBC会话 322
20.2.3 概念和特性 322
20.2.5 客户机配置 323
20.2.6 使用ODBC DSN 324
20.2.7 使用ODBC的优缺点 327
20.3 小结 328
第21章 用OLE DB和ADO开发数据库应用程序 329
21.1 OLE DB的概念 329
21.2 OLE DB的体系结构 330
21.3 ADO(ActiveX Data Objects) 330
21.5 ADO的体系结构 331
21.4 OLE DB和ADO文件 331
21.6 将ADO 2参数增加到Visual Basic中 332
21.7 用Visual Basic使用ADO对象 333
21.7.1 连接到SQL Server 333
21.7.2 使用ADO Recordset 337
21.7.3 使用预准备的SQL和Command对象 345
21.7.4 用ADO Connection对象执行动态的SQL语句 346
21.7.5 用ADO修改数据 347
21.7.6 用Command对象调用存储过程 354
21.7.7 错误处理 356
21.8.1 批修改 357
21.8 使用ADO的高级数据库功能 357
21.8.2 使用多个结果 358
21.8.3 使用事务 360
21.8.4 存储二进制数据 361
21.9 小结 365
附录A Transact-SQL语句速查 367
A.1 数据库管理 367
A.2 表的管理 368
A.3 索引管理 371
A.4 视图管理 371
A.5 触发器管理 372
A.6 存储过程管理 373
A.7 规则管理 374
A.8 缺省管理 374
A.9 查询语句 375
A.10 许可管理 377
附录B 系统表 379
B.1 对象表 379
B.1.1 syscolumns 379
B.1.2 syscomments 380
B.1.3 sysconstraints 381
B.1.5 sysindexes 382
B.1.4 sysdepends 382
B.1.6 sysobjects 384
B.1.7 sysreferences 386
B.1.8 systypes 387
B.2 用户、组和安全表 388
B.2.1 sysprotects 388
B.2.2 sysusers 389
B.3 复制表 391
B.3.1 sysarticles 391
B.3.2 syspublications 392
B.3.3 syssubscriptions 394