SQL Server 2008高级程式设计


SQL Server 2008高级程式设计

文章插图
SQL Server 2008高级程式设计【SQL Server 2008高级程式设计】《SQL Server 2008高级程式设计》是一本正文语种为简体中文的书籍 。
基本介绍书名:SQL Server 2008高级程式设计
又名:Professional Microsoft SQL Server 2008 Programming
作者:维埃拉(Robert Vieira)
译者:杨华,腾灵灵
ISBN:730222272X, 9787302222729
页数:730
出版社:清华大学出版社
出版时间:2010年4月1日
装帧:平装
开本:16
内容简介《SQL Server 2008高级程式设计》由世界顶尖SQL Server权威专家Robert Vieira撰写,它介绍SQL Server 2008的新功能,讨论如何设计性能卓越的应用程式,分析如何提高应用程式安全性,讲述如何管理高级脚本和资料库,并陈述新数据类型、高级查询、XML集成、索引结构、高级时区处理和数据仓库等重要内容 。编辑推荐《SQL Server 2008高级程式设计》:Microsoft SQL Server 2008极大地完善了资料库引擎的核心组件,也改变了资料库应用程式的构建方式 。《SQL Server 2008高级程式设计》由世界顶尖SQL Server权威专家Robert Vieira编写,旨在指导您熟练运用一系列日趋複杂的功能,助您更高效地管理数据 。《SQL Server 2008高级程式设计》首先介绍SQL Server 2008的新功能,然后在更详实的示例代码的引导下全面深入地展开论述,讨论了如何编写複杂查询、构建各种数据结构以及提高应用程式性能,还讲述了如何管理高级脚本和资料库以及如何确定和改正脚本错误 。《SQL Server 2008高级程式设计》提供了快速创建和部署数据驱动的解决方案来满足业务需求的信息,介绍了新数据类型、索引结构、管理功能和高级时区处理等重要内容,掌握这些知识后,您将使自己的资料库发挥十最大功效 。主要内容除规範化外的数据设计技巧儘量提高应用程式运行速度的方法有关存储过程和用户定义函式的全部内容存储过程的高级处理方法报表服务和集成服务的用法提高资料库安全性的提示信息如何利用XML和XQuery支持通过修改特定数据值进行推理分析的步骤读者对象《SQL Server 2008高级程式设计》面向想要学用所有SQL Server 2008功能的有经验的开发人员 。作者简介维埃拉(Robert Vieira),当1978年的计算机热潮席捲而来时,Robert Vieira对计算机技术萌生了浓厚兴趣 。他从1983年开始攻读计算机信息系统学位,于1985年后期涉足自己钟爱的“电脑程式故障”领域,于1990年获得商业管理学位 。丰富的商业知识和计算知识为保障他的事业取得成功奠定了坚实基础 。获得学士学位后,他又相继获得CMA、MCSD、MCT、MCDBA以及EMT等认证 。Robert目前担任Huron Consulting Group的Stockamp公司的资料库团队领导,迄今已出版了6本有关SQL Server开发的书籍 。目录第1章 回顾SQLServer中的对象1.1 资料库的构成1.2 资料库对象概述1.2.1 资料库对象1.2.2 事务日誌1.2.3 最基本的资料库对象:表1.2.4 模式1.2.5 档案组1.2.6 图表1.2.7 视图1.2.8 存储过程1.2.9 用户自定义函式1.2.10 用户和角色1.2.11 规则1.2.12 默认值1.2.13 用户自定义数据类型1.2.14 全文目录1.3 SQLServer数据类型1.4 SQLserver对象标识符1.4.1 需要命名的对象1.4.2 命名规则1.5 小结第2章 工具2.1 在线上丛书2.2 SQLServer配置管理器2.2.1 服务管理2.2.2 网路配置2.2.3 协定2.2.4 客户端配置2.3 SQLServerMaliagementStudi02.3.1 启动Managemenc Studio2.3.2 查询编辑器2.4 SQLServerBusillessIntelligence DeveloplhentStudio2.5 SQLserver集成服务(SsIs)2.6 R.epOningSerVices2.7 BulkCopyPrograml(bcp)2.8 SQLServerProfiler2.9 sqlcmd2.10 小结第3章 提出更好的问题:高级查询3.1 子查询概述3.2 构建嵌套子查询3.2.1 使用单值SELECT语句的嵌套查询3.2.2 使用返回多个值的子查询的嵌套查询3.2.3 ANY、SOME和ALL运算符3.3 相关子查询3.3.1 相关子查询的工作方式3.3.2 WHERE子句中的相关子查询3.3.3 SELECT列表中的相关子查询3.4 派生表3.5 EⅪSTS运算符3.6 INTERSECT和EXCEPT运算符3.6.1 EXCEPT3.6.2 INTERSECT3.6.3 比较EXCEPT和INTERSECT与相应的EⅪSTS和NOTExISTS语句3.7 通用表表达式(CTE)3.8 递归查询3.9 合併3.10 利用外部调用完成複杂操作3.11 性能考虑3.12 小结第4章 XML集成4.1 XML数据类型4.1.1 定义XML数据类型的列4.1.2 XML模式集合4.1.3 创建、修改和删除Ⅺ儿模式集合4.1.4 XML数据类型方法4.1.5 施加超出模式集合範围的约束 4.2 提取XML格式的关係数据4.2.1 FORXML子句4.2.2 OPENXML4.3 有关XML索引的提示4.4 层次数据概述4.5 小结第5章 细心推敲,大胆设计5.1 进一步了解规範化5.1.1 入手点5.1.2 达到第三範式5.1.3 其他的规範形式5.2 关係5.3 图表5.3.1 几种关係类型5.3.2 实体框5.3.3 关係线5.3.4 终止符5.4 逻辑设计与物理设计5.4.1 逻辑模型的用途5.4.2 逻辑模型的组成5.5 通过经典的BLOB处理基于档案的信息5.6 子类别5.6.1 子类别的类型5.6.2 明确概念——实现子类别5.6.3 子类别的物理实现5.6.4 通过子类别增加可扩展性5.7 资料库重用5.7.1 可重用资料库的候选5.7.2 如何分解事物5.7.3 可重用性的高昂代价5.8 反规範化5.9 通过分区方法进行扩展5.10 SQLServer关係图工具5.10.1 表5.10.2 处理约束5.11 关于日期列5.12 小结第6章 核心存储和索引结构6.1 SQLserer存储6.1.1 资料库6.1.2 档案6.1.3 区段6.1.4 页6.1.5 行6.1.6 全文目录6.1.7 档案流6.2 理解索引6.2.1 “B”还是非“B”:B树6.2.2 如何在SQLServer中访问数据6.2.3 索引类型和索引导航6.3 创建、修改和删除索引6.3.1 CREATEINDEX语句6.3.2 随约束隐含创建的索引6.3.3 ALTERINDEX6.3.4 DROPINDEX6.4 明智地决定何时何地使用何种索引6.4.1 选择性6.4.2 注意代价6.4.3 选择聚集索引6.4.4 列排序问题6.4.5 删除索引6.4.6 使用资料库引擎最佳化顾问6.5 维护索引6.5.1 碎片6.5.2 检测碎片6.6 小结第7章 更高级的索引结构7.1 XML索引7.1.1 主XML索引7.1.2 辅助XML索引7.1.3创建XML索引7.2 用户定义的数据类型7.2.1 经典UDT7.2.2 NETUDT7.2.3 表格式UDT 7.2.4 删除用户定义的类型7.3 层次数据7.3.1 理解深度与输出7.3.2 HifffarchyID类型结构7.3.3 处理HierarchyID值——HicrarchyID方法7.3.4 索引层次数据7.3.5 性能考虑7.4 空间数据7.4.1 空间概念7.4.2 平面数据描述的实现GEOME FRY数据类型7.4.3 测量数据描述的实现GEOGRAPHY类型7.5 档案流7.6 启用档案流7.6.1 为资料库启用档案流7.6.2 创建一个启用档案流的表7.6.3 在T.SQL中使用档案流7.6.4 在.NET中使用档案流7.7 表压缩7.8 小结第8章 视图8.1 回顾视图语法8.2 更複杂的视图8.3 使用T.SQL编辑视图8.4 删除视图8.5 审核:显示现有代码8.6 保护代码:加密视图8.7 关于模式绑定8.8 使用VIEwMETADAIIA使自己的视图看起来像一个表8.9 索引(物化)视图8.10 分区视图8.11 小结第9章 脚本和批处理9.1 脚本的基本概念9.2 批处理9.2.1 批处理错误9.2.2 使用批处理的时机9.3 SQLCMD9.4 动态SQL:使用ExEc命令生成即时代码9.5 流控制语句9.5.1 IFELSE语句9.5.2 CASE语句9.5.3 使用wHlLE语句进行循环9.5.4 WArITOR语句9.5.5 TRY/CATCH块9.6 小结第10章 高级编程10.1 细看存储过程10.1.1 输出参数10.1.2 处理错误10.2 表值参数(TVP)10.3 调试10.3.1 启动调试器10.3.2 调试器的组件10.3.3 启动后使用调试器10.4 理解SQLCLR及SQLserver中的.NET编程10.4.1 程式简介10.4.2 编译程式集10.4.3 将程式集上载到SQL Server上10.4.4 创建基于程式集的存储过程10.4.5 从程式集创建标量用户定义函式10.4.6 创建表值函式10.5 创建聚集函式10.6 自定义数据类型10.6.1 从程式集创建自己的数据类型10.6.2 访问複杂数据类型10.6.3 删除数据类型10.7 小结第11章 事务和锁 11.1 事务11.1.1 BEGINTTRAN11.1.2 COMMMTTRAN11.1.3 ROLLBACKTRAN11.1.4 SAVETRAN11.2 SQLServer日誌的工作方式11.2.1 使用CHECKPOINT命令11.2.2 在伺服器正常关机时执行11.2.3 在更改资料库时执行11.2.4 在启用TrtmcateonCheckpoint选项时执行11.2.5 在恢复时间超过设定的恢复间隔时执行11.2.6 失败与恢复11.2.7 隐式事务11.3 锁和并发11.3.1 通过锁可以防止的问题11.3.2 可锁的资源11.3.3 锁升级以及锁对性能的影响11.3.4 锁模式11.3.5 锁的兼容性11.3.6 指定特定的锁类型——最佳化器提示11.4 设定隔离级别11.4.1 RPLAIDCOMMIllED11.4.2 READUNCOMMITTED11.4.3 REPEATABLEREAD11.4.4 SERIALIZABLE11.4.5 SNAPSHOT11.5 处理死锁(也称作“A1205”)11.5.1 SQLServer判断死锁的方式11.5.2 如何选择死锁牺牲品11.5.3 避免死锁11.6 小结第12章 触发器12.1 触发器的含义12.1.1 0N12.1.2 WITHENCRYPTl0N12.1.3 FORlAFTER与INSTEAD0F子句12.1.4 WITHAPPEND12.1.5 NOTFORREPLICATl0N12.1.6 AS12.2 为数据完整性规则使用触发器12.2.1 处理源自其他表的要求12.2.2 使用触发器检查更新的差异12.2.3 使用触发器实现自定义错误讯息12.3 触发器的其他常见用途12.3.1 更新摘要信息12.3.2 向反规範化的表输入数据以用于报告12.3.3 设定条件标誌12.4 其他触发器问题12.4.1 嵌套触发器12.4.2 递归触发器12.4.3 触发器调试12.4.4 触发器不妨碍架构的修改12.4.5 不必删除就可以禁用触发器12.4.6 触发器的触发顺序12.5 INSTEAD0F触发器……第13章 SQL游标第14章 Reporting Services第15章 bcp和其他基本的大容量操作 第16章 开始集成第17章 複製第18章 全文搜寻第19章 安全性第20章 设计性能卓越的资料库第21章 性能最佳化工具第22章 管理第23章 SMO.SQL管理对象第24章 数据仓库第25章 保证良好的连线性附录A 系统函式附录B 分析元数据附录C 基础知识