SQL Server 2008高级程序设计

出版时间:2010-4  出版社:清华大学  作者:维埃拉  页数:730  
Tag标签:无  

前言

  我们将在新的起点上重新启航。我们等待SQL Server 2005用了长达5年的时间,但Microsoft 给我们带来了惊喜,SQL Server 2008的到来只用了3年时间。  我对SQL Server 2008在这么短的时间里引入这么多功能并不感到惊讶。真正使我感到惊讶的是这个新版本中添加了大量“袖珍功能”。尽管Microsoft将一些主要功能(如基于管理的策略)作为市场宣传的噱头,但该产品最突出的新功能其实都是相当细微的。  SQL Server 2008包括了大量看似微小但却非常有用的功能,例如:  ·新增的且非常有用的数据类型(分离的日期和时间数据类型以及对地理空间数据和分层数据表示的支持)。  ·新增的MERGE命令(将INSERT、UPDATE和DELETE选项结合到一条语句中,其他产品有时将其称作UPSERT语句)。  ·改进了Reporting Service,可提供更优雅的报表。  ·跟踪和提供了“缺少”索引信息(在优化时,会关注可提高性能的“缺少”索引信息)。  这些都是面向初学者的。  对于已阅读过我所写的2005版的图书的读者来说,《SQL Server 2008编程入门经典》(由清华大学出版社引进并出版)一书中。一些介于初级、中级或高级主题之间的内容,我将作较为深入的介绍,但对于此版本来说,大部分初级内容都罗列在入门书籍中(本书最后添加的一个新附录给出了简短的语法列表和一些示例,但数百页的内容现在浓缩成了数十页)。  好消息是,这让本书可以涵盖更广泛的主题。这就让我可以更接近最初为“高级”篇设定的目标:提供产品的大部分基础信息,即使你无法在每个领域都做到专业级,你也可从整体上理解SQLServer并构建一个更好的系统,了解许多SQL Server功能领域所涉及的内容,并准备在必要时获取更多的信息。  除此之外,本书保持了作者一贯的写作风格。书中涵盖了大部分的附加服务、高级编程结构(如.NET程序集)以及一些支持的对象模型(可用于管理SQL Server及其各种引擎)。  0.1 版本问题  本书是针对SQL Server 2008编写的,不过,书中也追溯了一些之前版本的内容,并且密切关注了与SQL Server 2005甚至SQL Server 2000相关的向后兼容性问题。之前的版本太陈旧了(简言之,在SQL Server 2008发布时,SQL Server 6.5和7.0已经面世10年之久了),书中几乎不会涉及它们。  0.2 读者对象  本书假定你已经具有一些SQL Server经验,并准备并具有介于中级到高级的编程水准。此外,本书主要面向较高层次的开发人员。  除了方便参考的附录外,本书很少涉及初级内容。它假定你有编写DML语句的经验,了解所有主流SQL Server对象(如视图、存储过程、用户自定义函数以及触发器)的基础知识。如果你准备好接受高级主题,但又想要温习初级知识,那我强烈建议你学习《SQL Server 2008编程入门经典》一书,因为这两本书的内容是经过特别设计的,内容较少重叠。  0.3 本书内容  本书介绍的是关于SQL Server的内容。更准确地说,本书是围绕SQL Server开发展开的。大部分的概念都与所使用的客户端语言无关,尽管本书中利用了客户端语言的示例一般都使用C#语言(有些示例采用了多种语言)。  对于那些从SQL Server早期版本过渡而来的读者,我们将对因产品有多个版本而导致的一些“陷阱”作相关讨论。

内容概要

  Microsoft SQL Server 2008极大地完善了数据库引擎的核心组件,也改变了数据库应用程序的构建方式。《SQL Server 2008高级程序设计》由世界顶尖SQL Server权威专家Robert Vieira编写,旨在指导您熟练运用一系列日趋复杂的功能,助您更高效地管理数据。  本书首先介绍SQL Server 2008的新功能,然后在更详实的示例代码的引导下全面深入地展开论述,讨论了如何编写复杂查询、构建各种数据结构以及提高应用程序性能,还讲述了如何管理高级脚本和数据库以及如何确定和改正脚本错误。  本书提供了快速创建和部署数据驱动的解决方案来满足业务需求的信息,介绍了新数据类型、索引结构、管理功能和高级时区处理等重要内容,掌握这些知识后,您将使自己的数据库发挥㈩最大功效。  主要内容  ◆除规范化外的数据设计技巧  ◆尽量提高应用程序运行速度的方法  ◆有关存储过程和用户定义函数的全部内容  ◆存储过程的高级处理方法  ◆报表服务和集成服务的用法  ◆提高数据库安全性的提示信息  ◆如何利用XML和XQuery支持  ◆通过修改特定数据值进行推理分析的步骤  读者对象  本书面向想要学用所有SQL Server 2008功能的有经验的开发人员。

作者简介

维埃拉,当1978年的计算机热潮席卷而来时,Robert Vieira对计算机技术萌生了浓厚兴趣。他从1983年开始攻读计算机信息系统学位,于1985年后期涉足自己钟爱的“计算机程序故障”领域,于1990年获得商业管理学位。丰富的商业知识和计算知识为保障他的事业取得成功奠定了坚实基础

书籍目录

第1章 回顾SQL Server中的对象  1.1 数据库的构成  1.2 数据库对象概述  1.3 SQL Server数据类型  1.4 SQL Server对象标识符  1.5 小结 第2章 工具  2.1 联机丛书  2.2 SQL Server配置管理器  2.3 SQL Server Management Studio  2.4 SQL Server Business Intelligence Development Studio  2.5 SQL Server集成服务(SSIS)  2.6 Reporting Services  2.7 BulkCopy Program(bcp)  2.8 SQL Server Profiler  2.9 sqlcmd  2.10 小结 第3章 提出更好的问题:高级查询  3.1 子查询概述  3.2 构建嵌套子查询  3.3 相关子查询  3.4 派生表  3.5 EXISTS运算符  3.6 INTERSECT和EXCEPT运算符  3.7 通用表表达式(CTE)  3.8 递归查询  3.9 合并  3.10 利用外部调用完成复杂操作  3.11 性能考虑  3.12 小结 第4章 XML集成  4.1 XML数据类型  4.2 提取XML格式的关系数据  4.3 有关XML索引的提示  4.4 层次数据概述  4.5 小结 第5章 细心推敲,大胆设计  5.1 进一步了解规范化  5.2 关系  5.3 图表  5.4 逻辑设计与物理设计  5.5 通过经典的BLOB处理基于文件的信息  5.6 子类别  5.7 数据库重用  5.8 反规范化  5.9 通过分区方法进行扩展  5.10 SQL Server关系图工具  5.11 关于日期列  5,12 小结 第6章 核心存储和索引结构  6.1 SQL Server存储  6.2 理解索引  6.3 创建、修改和删除索引  6.4 明智地决定何时何地使用何种索引  6.5 维护索引  6.6 小结 第7章 更高级的索引结构  7.1 XML索引  7.2 用户定义的数据类型  7.3 层次数据  7.4 空间数据  7.5 文件流  7.6 启用文件流  7.7表压缩  7.8 小结 第8章 视图  8.1 回顾视图语法  8.2 更复杂的视图  8.3 使用T-SQL编辑视图  8.4 删除视图  8.5 审核:显示现有代码  8.6 保护代码:加密视图  8.7 关于模式绑定  8.8 使用VIEW METADATA使自己的视图看起来像一个表  8.9 索引(物化)视图  8.10 分区视图  8.11 小结 第9章 脚本和批处理  9.1 脚本的基本概念  9.2 批处理  9.3 SQLCMD  9.4 动态SQL:使用EXEC命令生成即时代码  9.5 流控制语句  9.6 小结 第10章 高级编程  10.1 细看存储过程  10.2 表值参数(TVP)  10.3 调试  10.4 理解SQLCLR及SQL Server中的.NET编程  10.5 创建聚集函数  10.6 自定义数据类型  10.7 小结 第11章 事务和锁  11.1 事务  11.2 SQL Server日志的工作方式  11.3 锁和并发  11.4 设置隔离级别  11.5 处理死锁(也称作“A 1205”)  11.6 小结 第12章 触发器  12.1 触发器的含义  12.2 为数据完整性规则使用触发器  12.3 触发器的其他常见用途  12.4 其他触发器问题  12.5 INSTEAD OF触发器  12.6 IF UPDATE()和COLUMNS_UPDATED()  12.7 性能考虑  12.8 删除触发器  12.9 小结 第13章 SQL游标  13.1 游标的含义  13.2 游标的生命期  13.3 游标的类型和扩展的声明语法  13.4 在游标中导航:FETCH语句  13.5 在游标中修改数据  13.6 小结 第14章 Reporting Services  14.1 报表服务概述  14.2 Reporting Services入门  14.3 报表服务器项目  14.4 有关RDL的简注  14.5 小结 第15章 bcp和其他基本的大容量操作  15.1 bcp实用工具  15.2格式化文件  15.3 BULK INSERT  15.4 OPENROWSET(BULK)  15.5 小结 第16章 开始集成  16.1 理解问题  16.2 包的综述  16.3 创建简单的包  16.4 执行包  16.5 小结 第17章 复制  17.1 复制的基础知识  17.2 复制模型  17.3 复制的拓扑结构  17.4 制定复制计划  17.5 在Management Studio中设置复制  17.6 复制管理对象(RMO)  17.7 小结 第18章 全文搜索  18.1 全文搜索的体系结构  18.2 设置全文索引和目录  18.3 更多有关索引填充的内容  18.4 全文查询语法  18.5 停止词  18.6 小结 第19章 安全性  19.1 安全性基础知识  19.2 安全性选项  19.3 用户权限  19.4 服务器和数据库角色  19.5 应用程序角色  19.6 更高级的安全性  19.7书和非对称密钥  19.8 小结 第20章 设计性能卓越的数据库  20.1 优化时机  20.2 选择索引  20.3 客户端和服务器端处理的对比  20.4 策略上的反规范化  20.5 合理组织存储过程  20.6 使用临时表  20.7 及时更新代码  20.8 注意细节问题  20.9 硬件考虑事项  20.10 小结 第21章 性能优化工具  21.1 优化时机(第二部分)  21.2 日常维护  21.3 故障排除  21.4 小结 第22章 管理  22.1 计划作业  22.2 备份和恢复  22.3 索引维护  22.4 数据存档  22.5 PowerShell  22.6 基于策略的管理  22.7 小结 第23章 SMO.SQL管理对象  23.1 SQL Server管理对象模型的发展历程  23.2 SMO对象模型  23.3 实例演练  23.4 删除数据库  23.5 备份数据库  23.6 生成脚本  23.7 完整的代码  23.8 小结 第24章 数据仓库  24.1 考虑不同的需求  24.2 维度数据库  24.3 数据仓库的概念  24.4 SQL Server的集成服务  24.5 创建分析服务解决方案  24.6 访问立方体  24.7 小结 第25章 保证良好的连接性 附录A 系统函数 附录B 分析元数据 附录C 基础知识

章节摘录

  除了这个最基本的应用之外,还可以创建所谓的索引视图(indexed view)。索引视图除了针对视图创建索引之外,别的与其他视图相同。这一点对使用性能有一定影响(包括正面影响和负面影响):  ·对于引用多个表的视图来说,执行索引视图会快很多,因为它预先构造了表之间的联结。  ·视图中执行的聚合(aggregation)是预先计算好,并作为索引的一部分存储;因此聚合只要执行一次(在插入或更新行时),然后就可从索引信息中直接读入。  ·由于视图上的索引必须及时更新,因此插入和删除需要更多的系统开销;如果更新影响索引的键列,则更新还需要更大的系统开销。  本书第8章将深入探讨这些性能问题以及视图的其他特殊用途。  提示:  尽管创建索引视图的代码在所有版本中都能起作用,但只有在企业版中使用时,查询优化器才考虑它。  1.2.8 存储过程  存储过程(或sprocs)是SQL Server编程功能的基础。存储过程通常是组成一个逻辑单元的Transact-SQL(用于查询Microsoft SQL Server的语言)语句的有序集合。存储过程允许使用变量和参数,也可使用选择和循环结构。与发送单条语句到服务器相比,使用存储过程具有以下几个优点:  ·调用存储过程不使用长文本串而使用短存储过程名,可减少运行存储过程中的代码所要的网络流量。  ·预先优化和预编译,能将存储过程每次运行的时间缩短一点。  ·通常考虑安全原因,或仅仅是简化数据库的复杂性,将过程封装。  ·可从其他存储过程调用,使得它们在一定意义上重用。  此外,可利用任何.NET语言创建程序集,并向存储过程中添加T-SQL之外的程序结构。

图书封面

图书标签Tags

评论、评分、阅读与下载


    SQL Server 2008高级程序设计 PDF格式下载


用户评论 (总计41条)

 
 

  •   内容充实,对SQL Server软件中的工具做了介绍,然后简单介绍了一些简单的sql语句,着重介绍了 一些高级知识,适合有一点基础的人学习
  •   比较全面的介绍了sql server 2008的功能
  •   这是一本关于Sql Server 2008开发的国外工具书,写得详细,深入,值得一读.
  •   这本书是很久前就买了的了,拿到了这本书很厚的,平时没有怎么看,在工作中有时拿出来翻翻,里面讲的数据库设计思想比较深入,对SQL2008有深入的解析,在开发道路上不错的一本SQL设计书籍。时隔一年在来韵味,又有新的认识,回味无穷……
  •   很深入的讲解,但对程序员来讲有些深了,例如有些地方讲述的也许是程序员写十年程序都不一定能碰到的。但是既然学习计算机,就应该多了解数据库,哪怕不是数据库管理员和分析师
  •   作为一本提高Sql的参考书,非常棒!
  •   买回来大致看了一下,感觉还不错,挺适合有SQL 基础的编程人员!
  •   果然挺高级的,好好学习下……
  •   在读这本书的过程中,书中多次提到作者以前著作的版本,如果全部买了,可以做系统的学习。非常的不错。
  •   书挺好!适合有一定基础的人提高用!@
  •   是菜鸟但实际应用价值也蛮大
  •   很好的一本书,翻了下,正是所需要的
  •   还不错的一本书,值得花时间去学习
  •   还没看完呢,翻了翻,跟我的水平比起来是高了些,先再看看基础一些的,然后再慢慢啃吧。
  •   比较有用,讲得细致!
  •   用来查东西还是很方便的。
  •   此书很有用,值得一读
  •   不错,挺有用!!!
  •   给家人买的,很喜欢,对学习很有帮助
  •   学习看看,希望有帮助!
  •   经典中的巨作
  •   比较详细和深入,适用于想深入学习Sql Server 及数据库端编程的程序员。
  •   主要是送货速度绝对快
  •   挺喜欢的,对基础的东西讲解的挺多,但是我觉得可以适当改善一下,比如说对于初识者对系统表不熟悉,可以重新建表进行讲述
  •   内容很丰富,很充实,这样的书才叫有价值。
  •   东西还可以,内容也还不错!
  •   刚买的书,还没来得及看内容,但是外在感觉还可以。
  •   很喜欢,特别适合有基础的人!
  •   学习中!,纸张不错!
  •   字典式的书籍,还是值得拥有的
  •   书皮上可能是在仓库里堆放的时候不注意,粘上了很多纸箱子一样材质的纸,撕不下来,用指甲扣也扣不掉.看着难受.
  •   内容感觉一般,实用性感觉比其他书少差点
  •   书就像是几年前的压箱底!
  •   真的很差,失望
  •   内容有深度,适合基础的人看
  •   发货挺快的,纸张也很好,顶!!
  •   一般,现在里面的太高深了
  •   替哥们儿买的
  •   内容不错,不过书的纸张感觉很一般
  •   数据库学习必备
  •   能让你成为SQL方面专家的必读经典
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7