本书从SQL Server 7编程的各个方面深入讨论,以数百个实例和大量图表详细讲解高级T-SQL编程、SQL Server 7的最新特性、多层应用编程、数据迁移及集成、各种应用程序接口等专题。读者可以直接将这些技术运用于相应场景,获得完善稳定的高性能应用。\r\n 本书是SQL Server 7高级编程人员的必备工具书,也可供SQL Server系统管理人员、数据库设计人员参考。
译者序\r\n前言\r\n第一部分 高级编程技术\r\n\r\n第1章 利用工具\r\n\r\nl.1 Mlcrosoft Management Console\r\n1.2 使用Enterprise Manager管理SQL Server\r\n1.2.1 工具\r\n1.2.2 向导\r\n1.2.3 任务\r\n1. 2. 4 任务簿\r\n1.2.5 数据库图表\r\n1.2.6 用Open Table维护数据\r\nl.2.7 SQLServerProhler\r\nl.3 使用Query Analyzer查询SQL Se\r\n1.3.l 配置\r\n1.3.2 上下文相关帮助\r\n1.3.3 颜色编码和字体\r\n1.3.4 结果窗格\r\n1.3.5 图形SQL执行计划\r\n1.3.6 索引分析\r\n1.4 小结\r\n\r\n第2章 超越基本的数据操纵语言\r\n\r\n2.1 命名约定\r\n2. l. 1 Microsoft自身的命名分歧\r\n2.1.2 命名规则\r\n2.2 使用于查询和在线视图\r\n2.2.1 T-SQL中的子查询\r\n2.2.2 在线视图\r\n2.3 外联结、交叉联结和自联结\r\n2.3.1 外联结\r\n2. 3.2 交叉联结\r\n2. 3.3 自联结\r\n2.4 更高级的DELETE和UPDATE语句\r\n2.4.1 DELETE语句的深入研究\r\n2.4.2 改进的新UPDATE语句\r\n2.5 聚合函数\r\n2.5.1 AVG\r\n2.5. 2 COUNT\r\n2.5.3 MAX\r\n2.5.4 MIN\r\n2.5,5 SUM\r\n2.5.6 STDEV\r\n2.5.7 STDEVP\r\n2.5.8 VAR\r\n2.5.9 VARP\r\n2.6 GROUP BY和HAVING短语\r\n2.6. 1 GROUP BY\r\n2. 6. 2 HAVING\r\n2.7 合并\r\n2.8 小结\r\n\r\n第3章 查询优化\r\n\r\n3. 1 深入了解索引结构\r\n3. 1.1 非聚类索引\r\n3.1.2 聚类索引\r\n3.1.3 聚类索引和非聚类索引的比较\r\n3.1.4 复合索引的优缺点\r\n3.1.5 索引的数量\r\n3.1.6 使用索引检索和更新数据\r\n3.2 索引、事务和数据操作\r\n3.3 事务和索引中的销机制\r\n3.3.1 锁的分类\r\n3.3.2 使用索引降低锁并发性\r\n3.3.3 事务范围、事务隔离等级和销机制\r\n3.4 优化查询优化程序\r\n3.4.1 使用索引优化程序提示\r\n3.4.2 使用锁定优化程序提示\r\n3.4.3 在查询中优化表顺序\r\n3.5 使用SQL Server Protller\r\n3. 5.1 跟踪内容\r\n3.5.2 使用SQL Server Profiler标识问题查询和用户\r\n3.5.3 使用Index Tuning Wizard\r\n3.6 小结\r\n\r\n第4章 高级TSQL语句\r\n\r\n4.1 使用CAST和CONVERT\r\n4.2 输出信息\r\n4.3 sysmessayes系统表\r\n4.3.1 sysmessages中的错误严重等级\r\n4. 3.2 定义用户自己的消息\r\n4. 4 报告错误信息\r\n4. 5 CASE表达式\r\n4.5.1 简单CASE表达式\r\n4.5.2 高级CASE表达式\r\n4. 6 分布事务\r\n4. 6.1 为何使用分布事务协调器\r\n4.6.2 使用DTC维持系统间的一致性\r\n4.6.3 在成对事务上使用DTC\r\n4.6.4 DTC过程疑难解答\r\n4.6.5 调试DTC过程\r\n4. 7 小给\r\n\r\n第5章 有效使用内建函数\r\n\r\n5.1 使用算术函数进行计算\r\n5. 1.1 ABS\r\n5.1.2 CEILING\r\n5.1.3 FLOOR\r\n5. 1.4 POWER\r\n5.1.5 RAND\r\n5.1.6 ROUND\r\n5.1. 7 SOUARE\r\n5.1.8 SQRT\r\n5.2 使用日期函数计算日期\r\n5.2.1 DATEADD函数\r\n5.2.2 DATEDIFF函数\r\n5.2.3 DATENAME函数\r\n5.2.4 DATEPART函数\r\n5.2.5 GETDATE函数\r\n5.2.6 DAY函数\r\n5.2.7 MONTH函数\r\n5.2.8 YEAR函数\r\n5.3 使用字符串函数操作字符串\r\n5.3.1 CHARINDEX函数\r\n5.3.2 DIFFERENCE函数\r\n5.3.3 LOWER函数\r\n5.3.4 LTRIM函数\r\n5.3.5 REVERSE函数\r\n5.3.6 RTRIM函数\r\n5.3.7 STR函数\r\n5.3.8 SUBSTRING函数\r\n5.3.9 使用字符串函数的承例\r\n5.4 在SQL中使用文本和图像函数\r\n5.5 使用SQL函数检索系统信息\r\n5.5.1 DATALENGTH函数\r\n5.5.2 ISNULL函数\r\n5.5.3 HOST.NAME函数\r\n5.5.4 SUSERNAME函数\r\n5.5.5 USER函数\r\n5. 6 小结\r\n\r\n第6章 使用游标\r\n\r\n6.1 游标声明\r\n6.2 游标使用规则\r\n6.2.1 游标规则\r\n6.2. 2 游标范围\r\n6.3 打开、关闭和移动游标\r\n6.3.1 OPEN和CLOSE语句\r\n6.3.2 FETCH语句\r\n6. 4 高级游标使用\r\n6. 5 使用游标修改数据\r\n6.5.1 游标不能自动更新和删除行\r\n6.5.2 使用游标做高级更新操作\r\n6. 6 小结\r\n\r\n第7章 存储过程\r\n\r\n7. 1 为何使用存储过程\r\n7. 2 系统存储过程\r\n7.2.l 管理存储过程\r\n7.2.2 使用存储过程收集信息\r\n7.2.3 使用存储过程进行配置和协调\r\n7.2. 4 使用存储过程监控系统\r\n7.3 扩展存储过程\r\n7.3.l 为消息传递使用扩展过程\r\n7.3.2 使用扩展过程访问操作系统\r\n7.4 创建用户自己的存储过程\r\n7. 4.l 存储过程中的参数\r\n7.4.2 OUTPUT参数\r\n7.4. 3 返回游标作为参数\r\n7.4.4 使用存储过程修改数据\r\n7.4.5 改变过程\r\n7.5 将消息集成到存储过程\r\n7.5.1 PRINT语句\r\n7.5.2 RAISERROR函数\r\n7.5.3 RETURN语句\r\n7.6 存储过程的高级应用\r\n7.6. 1 创建第一个管理表\r\n7.6. 2 创建档案管理表\r\n7.6.3 添加一个用户登录ID\r\n7.6. 4 修改用户结束日期\r\n7. 6.5 删除一个用户\r\n7.6.6 改善处理过程的建议\r\n7. 7 小结\r\n\r\n第8章 高级字符串操作和按位操作\r\n\r\n8. 1 介绍\r\n8.2 使用高级字符串操作拼写金额\r\n8.2.1 拼写单个数字\r\n8.2.2 拼写tens列\r\n8.2.3 综合\r\n8.2.4 使用过程拼写金额\r\n8.3 二进制操作\r\n8.3.1 SQL Server中的二进制操作\r\n8.3.2 使用按位操作比较值\r\n8.3.3 使用二进制进行EBCDIC转换\r\n8.4 小结\r\n\r\n第9章 动态执行\r\n\r\n9.1 什么是动态执行\r\n9.1.1 合法的动态执行语法\r\n9.1.2 在何处使用动态执行\r\n9.2 创建可执行串\r\n9.2.1 动态选择\r\n9.2.2 使用存储过程\r\n9.2.3 检索元数据\r\n9.2.4 动态删除\r\n9.2.5 动态更新\r\n9.3 使用游标的动态执行\r\n9.4 动态执行的优劣\r\n9.4. 1 动态执行的优点\r\n9.4.2 动态执行的常见陷阶\r\n9.5 小结\r\n\r\n第10章 安全问题\r\n\r\n10.l 鉴别模式\r\n10.1.l 安全模式\r\n10.1.2 鉴别过程\r\n10.1.3 选择一种鉴别模式\r\n10.1.4 实现一种鉴别模式的步骤\r\n10.l.5 创建登录帐号\r\n10.2 给用户和角色分配登录\r\n10.2.l 给用户帐号分配登录\r\n10.2.2 给角色分配登录\r\n10.3 给用户和角色分配权限\r\n10.3.1 权限的类型\r\n10.3.2 授权、拒绝和剥夺权限\r\n10. 4 设计安全策略\r\n10.5 管理应用程序的安全性\r\n10.5.l 使用存储过程和视图的安全管理\r\n10.5. 2 使用应用程序角色进行客户应用程序管理\r\n10.6 小结\r\n\r\n第11章 专用触发器\r\n\r\n11.1 嵌套、递归和触发器基础\r\n11.1.1 inserted和deleted表\r\n11. 1.2 update()函数\r\n11.1.3 嵌套触发器\r\n11.1.4 递归触发器\r\n11.l.5 触发器的T-SQL限制\r\n11.1.6 带触发器的系统表作用\r\n11.2 使用触发器加强业务规则\r\n11.3 触发器检查\r\n11.4 存储系统信息\r\n11.5 用触发器维护引用完整性\r\n11.6 级联删除触发器\r\n11.7 级联更新触发器\r\n11.8 小结\r\n\r\n第12章 更新表索引和统计信息\r\n\r\n12.1 索引性能和调整\r\n12.1.1 设计快速的索引\r\n12.1.2 分布页面和步进存储数据\r\n12.1.3 使用索引密度代替步进值\r\n12.1.4 更新分布页面\r\n12.2 创建实用程序进行优化表索引\r\n12.3 对最后的优化进行验证\r\n12.4 自动运行任务\r\n12.4.l 自动执行存储过程\r\n12.4. 2 调度任务\r\n12.5 使用DBCC语句监控数据库\r\n12.5.1 CHECKALLOC\r\n12.5.2 CHECKCATALOG\r\n12.5.3 CHECKDB\r\n12.5.4 CHECKFILEGROUP\r\n12.5.5 CHECKIDENT\r\n12.5.6 CHECKTABLE\r\n12.5. 7 DBREPAIR\r\n12.5.8 DBREINDEX\r\n12.5.9 dllname\r\n12.5.10 INPUTBUFFER\r\n12.5.11 NEWALLOC\r\n12.5.12 OPENTRAN\r\n12.5.13 OUTPUTBUFFER\r\n12.5.14 PINTABLE\r\n12.5.15 PROCACHE\r\n12.5.16 ROWLOCK\r\n12.5.17 SHOWCONTIG\r\n12.5. 18 SHOW STATISTICS\r\n12.5.19 SHRINKDATABASE\r\n12. 5.20 SHRINKFILE\r\n12.5.21 SQLPERF\r\n12.5.22 TEXTALL和TEXTALLOC\r\n12.5.23 TRACEOFF\r\n12.5.24 TRACEON\r\n12.5. 25 TRACESTATUS\r\n12.5.26 UNPINTABLE\r\n12.5.27 UPDATEUSAGE\r\n12.5.28 USEROPTIONS\r\n12.6 小结\r\n\r\n第13章 交叉制表\r\n\r\n13.1 交叉制表的描述\r\n13.1.l 交叉制表的必要考虑\r\n13.1.2 安全性\r\n13. 1.3 聚合\r\n13. 1.4 数据分组\r\n13.1.5 过程\r\n13.2 验证对象的存在\r\n13.2.l 验证参数\r\n13.2.2 验证数据类型和聚合操作\r\n13.3 检查列的安全性\r\n13.4 产生列头列表\r\n13.4.1 创建colnames表\r\n13.4.2 检查到的计数值和长度并加入行数据\r\n13.5 生成交叉表报告\r\n13.5. 1 创建和修改Crosstable\r\n13.5.2 更新crosstable值\r\n13.5.3 完成任务\r\n13.6 小结\r\n\r\n第二部分 SQL Server必要信息\r\n\r\n第14章 编写高效代码\r\n\r\n14.1 简洁、高效的代码是好的代码\r\n14.1.1 明确目标\r\n14. 1.2 存储过程的主要逻辑构件\r\n14.1.3 编写存储过程的步骤\r\n14. 1.4 数据检索的示例\r\n14.1.5 数据存储的示例\r\n14.1.6 数据存档的示例\r\n14.1.7 数据删除的示例\r\n14.1.8 记录处理的示例\r\n14. 1.9 业务逻辑的示例\r\n14.1.10 优化方法\r\n14.l.11 怎样增加可读性\r\n14.2 存储过程的模块化\r\n14.3 小结\r\n\r\n第15章 使用多层客户朋R务器结构\r\n\r\n15.1 理解客户搬务器结构\r\n15.1.1 客户搬务器模型\r\n15.1.2 客户/服务器应用\r\n15.1.3 客户/服务器系统\r\n15.2 客户/服务器计算结构的发展\r\n15. 2. 1 基于主机的系统\r\n15.2.2 两层客户册务器结构\r\n15.2. 3 对等系统\r\n15.2. 4 三层客户搬务器\r\n15.3 Web湖览器、Web服务器和客户/服务器模型\r\n15.3.1 两层Web结构\r\n15.3.2 三层Web结构\r\n15.4 Microsoft的三层服务模型\r\n15.4.1 用户服务\r\n15.4.2 业务服务\r\n15.4. 3 数据服务\r\n15.5 使用RAD开发工具的多层应用\r\n15.5.1 COM和Microsoft应用服务\r\n15.5.2 COM和商业应用程序服务\r\n15.5.3 RAD和工程生命周期\r\n15.5.4 设计和建模\r\n15.5.5 开发\r\n15.5. 6 配置\r\n15.6 可扩展性和SQL Server\r\n15.6.1 平台可扩展性\r\n15.6.2 增强型查询处理\r\n15.6.3 动态行销\r\n15.6.4 高级复制\r\n15.6. 5 移动计算支持\r\n15.7 小结\r\n\r\n第16章 复制\r\n\r\n16.1 编程人员的复制概念\r\n16. 1.1 复制语言\r\n16. 1.2 事务\r\n16. 1.3 复制如何工作\r\n16. 1.4 复制局限性\r\n16. 1.5 复制商业模型\r\n16. 2 高级复制\r\n16.2. 1 复制和SQL-DMO\r\n16.2.2 存储过程\r\n16.2.3 合并复制\r\n16. 2.4 拨号连接上的复制\r\n16. 3 小结\r\n\r\n第三部分 数据转换和集成\r\n\r\n第17章 超越Access\r\n\r\n17.1 判断从Access到SQL Server的转移需求\r\n17.1.1 对企业数据库的要求\r\n17.1.2 Access与SQL Server的特性对比\r\n17.2 实现从Access到SQL Server的转移\r\n17.2.1 与Visual Basic、Access以及SQL Server有关的问题\r\n17.2.2 使用DTS Import Wizard\r\n17. 3 小结\r\n\r\n第18章 对Sybase SQL Server进行转换\r\n\r\n18.1 Sybase和Microsoft的发展历程\r\n18.2 发展趋势\r\n18.3 保留的相似之处\r\n18.3.1 系统过程\r\n18.3. 2 Microsoft TSQL与Sybase TSQL的对比\r\n18.4 Microsoft SQL 7和Sybase Adaptive Server的差别\r\n18.4. 1 兼容模式\r\n18.4.2 事务管理模式\r\n18.4. 3 隔离等级\r\n18.4.4 保留字\r\n18.4. 5 游标语法\r\n18.4. 6 回滚触发器\r\n18.4.7 优化程序暗示\r\n18.4. 8 优化查询计划\r\n18.4.9 临时表名称\r\n18.4.10 RAISERROR语句\r\n18.4. 11 数据类型\r\n18.4.12 标识列\r\n18.4 13 PRINT语法\r\n18.5 小结\r\n\r\n第19章 使用Vsual C++优化ODBC\r\n\r\n19.1 ODBC体系结构\r\n19.2 数据库概要\r\n19.3 为何使用ODBC\r\n19.3.1 统一连接\r\n19.3.2 建立技术\r\n19.4 ODBC的安全问题\r\n19.5 连接ODBC的方法\r\n19.5.1 安装驱动程序\r\n19.5.2 使用数据源工作\r\n19.6 调用级接口\r\n19.6. 1 基础\r\n19. 6.2 连接到数据库\r\n19.6.3 语句:操作SQL Server数据\r\n19.6.4 提取数据\r\n19.6.5 游标\r\n19.6.6 端到端:调试0*SC代码\r\n19.6.7 使用大数据项\r\n19.7 使用Microsoft Foundation Classes简化ODBC\r\n19.7.1 对象模型\r\n19. 7. 2 非常简单:使用记录集和Class Wizard\r\n\r\n第20章 从Visual Basic连接SQL Server\r\n\r\n20.1 为SQL Server开发高效Visual Basic应用程序\r\n20.1.1 三层应用模型:选择一种实现\r\n20.1.2 调用级和对象接口:选择一个接口\r\n20.2 使用开放式数据库连接\r\n20.2.1 SQL Server的开放式数据库连接驱动程序\r\n20.2.2 连接ODBC数据源\r\n20.2. 3 执行SQL语句:处理查询\r\n20.2.4 结果集\r\n20.3 数据访问对象\r\n20.3.1 创建和调整数据库:数据定义语言操作\r\n20.3.2 使用记录集:数据操纵语言操作\r\n20.4 远程数据对象\r\n20.4.1 RDO与DAO比较\r\n20.4.2 RDO层次和rdoEngine对象\r\n20.4.3 rdoEnvlronment对象\r\n20.4. 4 建立RDO连接\r\n20.4. 5 游标和结果集\r\n20.4.6 递交查询\r\n20.4.7 使用ODBC扩展RDO\r\n20. 5 小结\r\n\r\n第21章 通过Visual Basic使用SQL-DMO 管理SQL Server\r\n\r\n21.1 DMO概念\r\n21.1.1 它是什么,它不是什么\r\n21.1.2 从Vsual Basic中访问SQL-DMO对象\r\n21.2 实现SQL-DMO对象\r\n21.2. 1 创建SQL-DMO对象\r\n21.2.2 不可创建的对象\r\n21.2.3 集\r\n21.2.4 列表对象\r\n21. 3 使用 SQL-DMO管理数据库\r\n21.4 使用 SQL-DMO管理服务器\r\n21.5 探索SQL-DMO对象模型\r\n21.5.1 SQL-DMO对象模型\r\n21.5.2 Application对象\r\n21.5.3 SQLServer对象\r\n21.5.4 Database对象\r\n21.5.5 Table对象\r\n21.5.6 Jobserver对象\r\n21.5.7 Replication对象\r\n21.6 SQL-DMO的一般用途\r\n21.6. 1 用户管理示例\r\n21.6.2 文本文件导入/导出示例\r\n21.6.3 远程数据库同步示例\r\n21.7 构造数据库管理工具\r\n21.8 小结\r\n\r\n第22章 SQL Server数据的自动Web发布\r\n\r\n22.1 Web Assistant的构件\r\n22.2 使用Web Assistant Wizard\r\n22.3 使用xpmakewebtask和spmakewebtask\r\n22.4 使用spmakewebtask和xpmakewebtask精化Web页面\r\n22. 4. 1 sP_makewebtask的必须和基本的参数\r\n22.4.2 页面格式化参数\r\n22.4. 3 链接相关的参数\r\n22.4. 4 每页行数参数\r\n22.4. 5 模板参数\r\n22.5 使用工作相关的参数自动Web发布\r\n22. 6 小结\r\n\r\n第23章 SQL Server、ADO和Web\r\n\r\n23.1 数据访问的发展\r\n23.2 ADO对象模型\r\n23.2.1 ADO主要对象\r\n23.2.2 ADO辅助对象\r\n23.3 Connection对象\r\n23.3.1 事务管理\r\n23.3.2 事务考虑\r\n23.3.3 连接池\r\n23.3.4 执行SQL\r\n23.4 Command对象中使用存储过程\r\n23.5 Recordset对象\r\n23.5.1 检索整个表\r\n23.5.2 Recordset基础\r\n23. 5.3 利用断连记录集\r\n23.6 RDS:将ADO移到浏览器\r\n23.7 小结\r\n\r\n第24章 Microsoft的COM和DCOM\r\n\r\n24.1 DCOM的结构\r\n24.1.1 DCE RPC和IDL\r\n24.1.2 分布对象\r\n24. 1.3 DCOM的安全机制\r\n24. 2 常见技术\r\n24. 2.1 DCOM服务器\r\n24. 2.2 配置\r\n24. 2.3 可扩展性\r\n24. 2.4 故障\r\n24. 2.5 性能\r\n24. 3 小结\r\n\r\n第25章 未来是Microsoft Transaction Server的时代\r\n\r\n25.1 在Internet上应用三层结构\r\n25.1.1 客户层\r\n25.1.2 业务逻辑层\r\n25.1.3 数据层\r\n25.2 理解MTS\r\n25.2.1 ObjectControlActivate\r\n25.2.2 ObjectControlDeactivate\r\n25.2.3 ObjectControl-CanBePooled\r\n25.3 编写MTS事务\r\n25.4 配置MTS构件\r\n25.5 无状态环境的重要性\r\n25.5.1 状态维持限制可扩展性\r\n25.5.2 使用Just-in-Time激活\r\n25.6 使用MTS最大化系统性能\r\n25. 6. 1 确定是否释放或者中止\r\n25.6.2 为Web farm提供无状态性\r\n\r\n第26章 其他开发平台与SQL服务器的连接\r\n\r\n26. 1 Delphi的数据库模型\r\n26. 2 DelPh冲的数据库编程\r\n26.2.1 使用数据库访问控件\r\n26.2.2 数据控件\r\n26.2.3 在麦单中使用控件\r\n26.2.4 表单向导\r\n26.2,5 通过代码来访问数据库\r\n26.2.6 通过Delphi来管理数据库\r\n26.3 PowerBuilder和Microsoft SQL Server\r\n263.1 连接数据库\r\n26.3.2 ODBC和底层驱动的比较\r\n26.3.3 连接数据库\r\n26.3.4 使用PowerBuilde增理数据库\r\n26.3.5 PowerBuilder数据库对象\r\n26. 4 Delphi和PowerBuilder,该用哪个\r\n\r\n第27章 将SQL与Microsoft的其他产品集成\r\n\r\n27.1 将Access作为SOL Server 7的前端\r\n27.1.1 创建Access项目\r\n27.1.2 使用Access项目\r\n27.1.3 使用Data Access Page\r\n27.1. 4 Microsoft SQL Server的双向数据复制\r\n27.2 在SQL Server 7中使用Excel\r\n27.3 在Internet Information Server和Internet Explorer中使用SQL Server\r\n27.3.1 在服务方访问数据库\r\n27.3.2 使用Internet Explorer进行客户端数据库访问\r\n27.4 与Microsoft Transaction Server集成\r\n27.4.1 MTS事务和IIS\r\n27.4.2 MTS事务和SQL Server\r\n27.4.3 MTS事务处理和可视化编程工具\r\n27.5 小结\r\n\r\n第28章 工作调度及使用ActiveX Server实现业务解决方案\r\n\r\n28.1 使用SQL Server Agent\r\n28.2 实现工作\r\n28.3 T-SQL工作\r\n28.4 在VBScript中运行ActlveX Server\r\n28.5 综述\r\n28.6 小结\r\n\r\n第29章 业务解决方案的编程方针\r\n\r\n29.1 基础结构\r\n29.2 源代码管理\r\n29.3 数据库需求\r\n29.4 设计和开发\r\n29.4. 1 标准化\r\n29.4.2 主键\r\n29.4. 3 NULL约束\r\n29.5 编程中优化性能\r\n29. 5.1 减少数据传输\r\n29.5.2 事务中不允许用户输人\r\n29.5.3 防止死锁\r\n29.5.4 不要混淆OLTP和OLAP\r\n29.5.5 避免耗时较长的查询\r\n29.6 测试数据库应用\r\n29.7 修改第三方SQL Server应用\r\n29.8 小结\r\n\r\n第30章 数据仓库和在线事务处理\r\n\r\n30. 1 SQL Server作为数据仓库\r\n30. 2 实现数据仓库\r\n30.2. 1 确定需求\r\n30.2.2 设计和构造数据库\r\n30.3 如何为仓库清理数据\r\n30.3.1 使用数据迁移服务\r\n30.3.2 使用bcp载入数据\r\n30.3.3 使用存储过程载入数据\r\n30. 3.4 使用复制载入数据\r\n30.3.5 CUBE和ROLLUP操作\r\n30.3.6 批处理\r\n30.4 大型查询和性能优化\r\n30.4. 1 查询数据\r\n30.4. 2 观图\r\n30.4. 3 存储过程\r\n30.5 仓库维护任务\r\n30.6 SQL Server和OLTP系统\r\n30.6. 1 OLTP问题\r\n30.6.2 创建数据库\r\n30.6.3 索引数据库\r\n30.6.4 事务\r\n30.6. 5 锁\r\n30.6.6 死锁\r\n30.7 优化SQL Server作为OLTP系统\r\n30 .7. 1 事务核对清单\r\n30.7.2 配置选项\r\n30.8 监视性能\r\n30.8.1 内存和过程cache\r\n30. 8.2 输入/输出\r\n30.8.3 事务配置选项\r\n30.9 小结\r\n\r\n第四部分 附录\r\n\r\n附录 A Master数据库的系统表\r\n\r\n附录 B 所有数据库的系统表\r\n\r\n附录 C 常见错误信息