第1章 SOL Server 2000高级安装
1.1 SQL Server 2000版本信息
1.2 使用SQL Server命名实例和多实例
1.2.1 默认实例
1.2.2 命名实例
1.2.3 多实例
1.2.4 实例名称及命名规则
1.2.5 SQL Server 2000实例的文件路径
1.3 确定启动服务的账户
1.3.1 设置启动服务的账产
1.3.2 使用域用户账户
1.3.3 使用本地系统账户
1.4 选择安全机制
1.4.1 Windows身份验证模式
1.4.2 混合身份验证模式
1.5 SQL Server 2000的排序规则
1.5.1 Windows排序规则
1.5.2 排序次序
1.5.3 SQL排序规则
1.6 网络库
1.7 验证安装的正确性
1.7.1 查阅安装结果
1.7.2 SQL Server服务
1.7.3 启动服务
1.7.4 连接SQL Server
1.7.5 数据库的类型
1.8 无人值守安装
1.8.1 无人值守安装方法
1.8.2 自定义安装程序初始化文件
1.9 升级SQL Server
1.9.1 从SQL Server 7.0升级到SQL Server 2000
1.9.2 从SQL Server 6.5升级到SQL Server 2000
1.9.3 从SQL Server 6.0升级到SQL Server 2000
1.10 故障排除
1.10.1 确定故障源
1.10.2 常见的故障解决方案
1.11 思考与练习
第2章 Transact-SQL程序设计逻辑
2.1 数据定义语言
2.1.1 CREATE TABLE语句
2.1.2 ALTER TABLE语句
2.1.3 DROP TABLE语句
2.2 使用SELECT语句查询数据
2.2.1 SELECT子句
2.2.2 FROM子句
2.2.3 WHERE子句
2.2.4 GROUP BY子句
2.2.5 HAVING子句
2.2.6 ORDER BY子句
2.2.7 其他关键字
2.3 使用INSERT语句向表中插入数据
2.3.1 使用INSERT语句
2.3.2 使用INSERT...SELECT语句
2.3.3 使用SELECT...INTO语句
2.4 使用UPDATE语句修改表中的数据
2.4.1 更新基于表的数据
2.4.2 基于其他表更新数据行
2.4.3 使用子查询更新指定的行
2.5 使用DELETE语句删除表中的数据
2.6 大对象数据的访问控制
2.7 T-SQL中数据库对象的引用
2.7.1 完全限定
2.7.2 部分限定
2.8 综合应用
2.9 思考与练习
第3章 面向复杂应用的T-SOL
3.1 使用系统内建函数
3.1.1 日期和时间凼效
3.1.2 聚合函数
3.1.3 字符串函数
3.1.4 系统统计函数
3.2 子查询
3.2.1 使用子查询查询数据
3.2.2 子查询的限制
3.3 联合查询
3.3.1 使用UNION创建联合查询
3.3.2 联合查询的关键字ALL
3.3.3 使用INNER JOIN
3.3.4 使用LEFT JOIN和RIGHTJOIN建立连接
3.3.5 使用交叉连接(CROSS JOIN)
3.4 其他复杂应用
3.4.1 使用COMPUTE(BY)子句
3.4.2 交叉表查询
3.5 查询语句的性能优化
3.5.1 通配符%的使用
3.5.2 Order by语句
3.5.3 尽量不用NOT
3.5.4 尽量不要连接列
3.5.5 表连接需要注意的地方
3.6 综合应用
3.7 思考与练习
第4章 视图的灵活应用
4.1 视图的用途和需要
4.1.1 视图简介
4.1.2 视图的优点
4.2 创建和管理视图
4.2.1 定义视图
4.2.2 修改视图定义
4.2.3 删除视图
4.3 利用视图简化查询操作
4.3.1 查询视图
4.3.2 使用视图关联多张表
4.3.3 使用视图提供聚合值
4.4 更新视图中的数据
4.5 加密视图
4.6 利用视图加强数据安全
4.6.1 限制用户的视线
4.6.2 视图权限管理
4.6.3 调用链问题初探
4.7 视图的综合应用
4.8 思考与练习
第5章 触发器与存储过程
5.1 SQL Server编程逻辑
5.1.1 流程控制语句
5.1.2 游标的使用
5.2 存储过程的创建与管理
5.2.1 为何使用存储过程
5.2.2 使用系统存储过程管理SQL Server
5.2.3 使用扩展存储过程
5.2.4 定义存储过程
5.2.5 带参数的存储过程
5.2.6 存储过程的加密
5.2.7 修改和删除存储过程
5.2.8 存储过程中的错误处理
5.2.9 在存储过程中调用COM组件
5.3 触发器的创建与管理
5.3.1 为何使用触发器
5.3.2 创建触发器
5.3.3 修改和删除触发器
5.3.4 用触发器实现强制业务规则
5.3.5 使用触发器和存储过程必须注意的地方
5.4 综合实例
5.5 思考与练习
第6章 用户定义数据类型与自定义函数
6.1 用户定义数据类型简介
6.2 创建用户定义数据类型
6.3 删除用户定义数据类型
6.4 更改用户定义数据类型
6.5 使用数据类型
6.6 用户定义函数简介
6.7 创建用户定义函数
6.8 修改和删除用户定义函数
6.9 用户定义函数的限制
6.10 思考与练习
第7章 维护数据的完整性
7.1 数据完整性概述
7.1.1 实体完整性
7.1.2 域完整性
7.1.3 引用完整性
7.1.4 用户定义完整性
7.2 利用约束维护数据的完整性
7.2.1 DEFAULT约束
7.2.2 CHECK约束
7.2.3 UNIQUE约束
7.2.4 PRIMARY KEY约束
7.2.5 FOREIGN KEY约束
7.2.6 级联引用完整性约束
7.3 利用规则维护数据的完整性
7.3.1 DEFAULT对象
7.3.2 RULES对象
7.4 标识列IDENTITY
7.5 使用触发器和存储过程实现数据完整性
7.6 关于数据完整性的一些使用经验
7.7 思考与练习
第8章 规划和维护索引
8.1 概述
8.1.1 数据的存储和访问方式
8.1.2 SQL Server查询优化器
8.1.3 获得执行计划的信息
8.2 索引的类型
8.2.1 聚集索引
8.2.2 非聚集索引
8.3 使用索引的准则
8.3.1 创建索引的列
8.3.2 不使用索引的列
8.3.3 如何使用聚集索引
8.3.4 如何使用非聚集索引
8.4 创建和管理索引
8.4.1 创建索引
8.4.2 组合索引
8.4.3 惟一索引
8.4.4 主键索引
8.4.5 填充因子
8.4.6 管理索引
8.5 维护索引
8.5.1 维护索引的统计信息
8.5.2 数据碎片
8.5.3 重建和整理索引
8.6 思考与练习
第9章 SOL Server应用程序设计基础
9.1 纵览SQL Server编程API 9.1.1 使用ODBC访问SQL Server
9.1.2 使用ADO访问SQL Server
9.1.3 使用OLE DB访问SQL Server
9.1.4 使用JDBC访问SQL Server
9.2 SQL Server ADO编程接口与应用
9.2.1 ADO简介
9.2.2 Connection对象
9.2.3 RecordSet对象
9.2.4 Command对象
9.2.5 Parameter对象
9.2.6 Error对象
9.2.7 Field对象
9.2.8 Property对象
9.2.9 ADO中的事务管理
9.2.10 ADO综合应用例程
9.3 SQL Server Java编程接口
9.3.1 JDBC编程概述
9.3.2 JDBC的对象模型
9.3.3 JDBC综合应用例程
9.4 思考与练习
第10章 SOL Server高级程序设计
10.1 使用SQL-DMO管理SQL Server
10.1.1 SQL-DMO编程接口
10.1.2 SQL-DMO对象模型
10.1.3 深入SQL-DMO对象
10.1.4 SQL-DMO应用
10.2 在Internet上访问SQL Server
10.2.1 生成静态Web页面
10.2.2 实现动态页面发布数据
10.3 嵌入式的SQL程序设计
10.3.1 嵌入式SQL语言概述
10.3.2 在C语言中使用嵌入式SQL
10.4 SQL Server编程注意事项
10.4.1 基于数据库的需求分析
10.4.2 设计中对数据库的考虑
10.4.3 开发过程中数据库性能的优化
10.4.4 测试与实施中的注意事项
10.5 思考与练习
第11章 SOL Server服务器高级管理
11.1 SQL Server的管理工具--企业管理器
11.2 控制SQL Server服务
11.3 SQL Server服务器高级配置
11.3.1 注册和删除SQL Server服务器
11.3.2 编辑SQL Server注册属性
11.3.3 [常规]选项卡
11.3.4 [内存]选项卡
11.3.5 [安全性]选项卡
11.3.6 [连接]选项卡
11.3.7 [服务器设置]选项卡
11.4 网络连接方式的选择与配置
11.4.1 客户端与服务器端的通信
11.4.2 配置服务器网络工具
11.4.3 配置客户端网络库
11.5 配置链接服务器实现分布式数据环境
11.5.1 分布式数据
11.5.2 配置链接服务器
11.5.3 访问远程服务器上的数据
11.6 思考与练习
第12章 SQL Server高级安全管理
12.1 SQL Server的安全模型
12.2 SQL Server身份验证模式
12.2.1 身份验证模式概述
12.2.2 选择身份验证模式
12.3 创建登录账号
12.3.1 使用Windows身份验证的登录
12.3.2 使用SQL Server身份验证的登录
12.4 分配服务器角色给登录
12.5 创建数据库用户
12.6 数据库角色
12.6.1 固定的数据数据库角色
12.6.2 用户自定义数据库角色
12.6.3 应用程序角色
12.7 许可权限管理
12.7.1 语句级许可权限
12.7.2 对象级许可权限
12.7.3 预定义的许可权限
12.7.4 权限的授予.拒绝和废除
12.7.5 权限的继承
12.8 管理应用程序的安全性
12.9 利用代理服务器.防火墙保证SQL Server的安全性
12.9.1 通过Internet连接到SQL Server
12.9.2 对SQL Server使用防火墙系统
12.9.3 通过代理服务器连接到SQL Server
12.9.4 建立加密连接
12.10 思考与练习
第13章 SQL Server数据库架构分析
13.1 SQL Server 2000数据库的系统目录
13.1.1 共享文件目录
13.1.2 数据库实例目录
13.2 SQL Server数据库的逻辑架构
13.2.1 数据库系统的三级模式结构
13.2.2 模式
13.2.3 子模式
13.2.4 存储模式
13.2.5 模式间的映像
13.3 SQL Server存储空间分配
13.3.1 数据库文件
13.3.2 页
13.3.3 文件组
13.4 事务日志的体系结构
13.4.1 事务
13.4.2 事务日志
13.5 管理数据库文件
13.5.1 使用Raid系统提高并发性,
13.5.2 配置数据库自动增长
13.5.3 收缩数据库文件
13.6 思考与练习
第14章 数据库备份.恢复及自动化管理
14.1 数据库备份概述
14.2 备份前的准备工作
14.2.1 设置恢复模型
14.2.2 创建备份设备
14.2.3 执行备份的权限
14.3 数据库备份的时机
14.3.1 何时备份系统数据库
14.3.2 何时备份用户数据库
14.4 数据库备份的方式
14.4.1 执行完全数据库备份
14.4.2 执行差异备份
14.4.3 执行日志备份
14.4.4 执行文件/文件组备份
14.5 SQL Server故障恢复
14.5.1 SQL Server崩溃后自启动的恢复进程
14.5.2 恢复数据库前的准备工作
14.5.3 恢复权限
14.6 恢复数据库的方法
14.6.1 从全库备份中恢复
14.6.2 从差异备份中恢复
14.6.3 从日志备份中恢复
14.6.4 从文件或文件组备份中恢复
14.6.5 直接拷贝文件的备份和恢复
14.6.6 恢复系统数据库
14.7 自动化管理任务
14.7.1 SQL Server Agent服务
14.7.2 操作员
14.7.3 设计和规划作业
14.7.4 创建警报响应事件
14.8 思考与练习
第15章 SQL Server事务处理机制
15.1 事务的基本概念
15.1.1 为何使用事务
15.1.2 事务的概念
15.1.3 事务的状态
15.2 事务的控制机制
15.2.1 事务的种类
15.2.2 定义事务
15.2.3 隐式事务
15.3 事务故障恢复和并发控制
15.3.1 事务与日志的联系
15.3.2 事务故障的恢复
15.3.3 事务隔离级别
15.4 使用事务时的考虑
15.4.1 编写有效的事务
15.4.2 定义事务的限制
15.5 SQL Server事务应用的一些高级话题
15.5.1 事务保存点
15.5.2 嵌套事务
15.5.3 分布事务
15.6 思考与练习
第16章 SQL Server并发控制机制
16.1 并发异常问题
16.1.1 丢失更新
16.1.2 脏数据
16.1.3 不可重复读取
16.1.4 幻影数据
16.2 锁
16.2.1 基本锁
16.2.2 锁的相容性
16.2.3 封锁协议
16.2.4 锁的粒度
16.2.5 专用锁
16.3 锁的使用
16.3.1 设置事务隔离级别
16.3.2 设置表级锁
16.3.3 锁的时间长度
16.3.4 监视和管理锁
16.4 死锁的预防和处理
16.4.1 死锁的概念
16.4.2 预防死锁
16.4.3 解除死锁
16.5 思考与练习
第17章 监控SQL Server的性能与活动
17.1 影响性能的因素
17.1.1 系统级因素
17.1.2 数据库因素
17.1.3 客户端因素
17.2 监视SQL Server性能
17.2.1 性能监视工具一览
17.2.2 制订性能监控任务
17.3 使用Windows应用程序日志
17.4 使用Windows系统监视器
17.4.1 系统监视器简介
17.4.2 常用性能对象
17.4.3 使用系统监视器
17.5 使用SQL Server企业管理器
17.5.1 当前活动窗口
17.5.2 SQL Server错误日志
17.6 使用SQL Server事件探察器
17.6.1 定义跟踪
17.6.2 设置事件
17.6.3 设置数据列
17.6.4 设置筛选信息
17.6.5 保存跟踪的定义和结果
17.6.6 重播跟踪事件
17.6.7 常用跟踪事件举例
17.7 使用SQL Server查询分析器
17.7.1 获得执行计划的信息
17.7.2 使用具有统计功能的语句
17.7.3 DBCC语句
17.7.4 全局函数
17.7.5 系统存储过程
17.8 思考与练习
第18章 SQL Server数据传输
18.1 概述
18.1.1 数据传输的原因
18.1.2 数据传输工具一览
18.2 使用DTS进行数据搬运
18.2.1 启动DTS向导
18.2.2 连接数据源和目的地
18.2.3 设定转换模式
18.2.4 保存和调度DTS包
18.3 bcp实用程序
18.4 T-SQL语句
18.4.1 使用BULK INSERT语句
18.4.2 使用SELECT…INTO语句
18.4.3 使用INSERT…SELECT语句
18.5 复制
18.5.1 复制的基本概念
18.5.2 复制的功能
18.6 复制的模型
18.6.1 服务器角色
18.6.2 复制的类型
18.6.3 复制代理程序
18.7 配置复制
18.7.1 复制前的考虑
18.7.2 配置分发服务器
18.7.3 配置发布服务器和创建出版物
18.7.4 订阅
18.7.5 复制监控
18.7.6 提高复制性能
18.7.7 停止复制
18.8 思考与练习
第19章 应用实例
19.1 程管理系统
19.1.1 需求说明
19.1.2 对象分析
19.1.3 实体关系图
19.2 销售管理系统
19.2.1 需求说明
19.2.2 对象分析
19.2.3 实体关系图(部分)
19.3 展会管理系统
19.3.1 需求说明
19.3.2 对象分析
19.3.3 实体关系图
19.4 本章小结