精通SQL Server 2008程序设计

出版时间:2010-6  出版社:Leonard Lobel、Andrew J.Brust、Stephen Forte、 贾洪峰 清华大学出版社 (2010-06出版)  作者:Leonard Lobel,Andrew J.Brust,S  页数:768  译者:贾洪峰  
Tag标签:无  

前言

SQL Server 2008不是单纯的一种产品,而是一组产品和技术整合形成的一个庞大、复杂的软件巨无霸。尽管这些产品和技术是相互关联的,但还是应当对它们进行分别考虑。显然,要在一本书中全面介绍这样一个庞大的产品是存在很大难度的。针对SQL Server 2008功能丰富、内容庞杂的特点,本书采用了国外星期天报纸专栏的结构方式,由不同领域的专家负责相关内容的撰写,参与编写本书的作者达到10位之多。他们在特定章节中发表自己关于特定主题的专家意见。本书盼所有作者都具有多年的SOLServer使用经验,他们从20世纪90年代早期就开始为微软开发社区撰写文章。因此,无论是在软件应用方面,还是软件的推介培训方面,都有着非常丰富的经验。这些经验为成功编写这样一本颇有难度的书籍奠定了基础。本书是在上一版的基础上进行改写而成的,着重介绍了SQL Server 2008中的新增功能。读者可以在前言部分找到有关内容变更方面的详细介绍。尽管本书的作者如此之多,尽管本书采用了专栏的编写方式,但本书的整体结构仍然非常紧凑得体,具有很强的逻辑性。一般来说,以开发人员为读者对象的书籍大多可以分为两类,即教程和参考手册,而这本书很好地把这两类书籍的优点融合在一起,既向读者解释了一些基本概念和基本应用,又为读者提供了丰富的参考信息。另一方面,虽然本书在结构上把各位作者撰写的章节恰当地组织在一起,但各人的表述风格毕竟不同,这就为本书的翻译带来了很大的困难。另外,由于本书的内容庞杂,涉及SQL Serwer 2008的方方面面,为了准确地表达原文的含义,要求译者对于软件的相关功能有相当程度的理解,这也增加了翻译的难度。尽管译者在翻译过程中,根据编程实践并大量查阅微软文档及其他资料,力求准确、流畅地表达作者原意,但从最终译稿来看,译者认为还有很大差距。恳请读者在发现翻译中存在的问题时,不吝指正!由于出版周期原因,有多位译者参与了本书的翻译工作。主体翻译及全书统稿工作由贾洪峰完成,其他参与翻译的人员有:王山花、王彦、王雅丽、刘阿娜、刘建卓、吴士珍、张丛丛、王维玲、张海、时朋泉、李晓晓、刘建静、韩丽、李强丽、李锋、刘建喜、周桦、罗双华、郭辉、崔玮、黄艳丽、韩斌、缪素芬、翟海川、蔡广华、侯昀佳、王亮和刘蕾。

内容概要

  《精通SQL Server 2008程序设计》由多位Microsoft SQL Setver专家联合编著,内容涵盖SQL Setver 2008中与开发人员相关的众多功能。全书共分4部分。第1部分介绍一些核心的基础知识;第II部分专门介绍SOL Selwet 2008中关系技术之外的相关主题,用来处理半结构化和非结构化数据;第1II部分讨论有关实际数据库软件编程的概念,它们处于中间层或应用程序级别;第1V部分主要涉及商业智能,介绍SQI。Server Analysis Services和Reporring Services。  书中提供了理解这些功能所需要的概念性材料,并提供了必要的参考资料,供进一步研究和学习使用。通过阅读《精通SQL Server 2008程序设计》,可以获得有关SQL Server 2008的大量实用信息和示例。  《精通SQL Server 2008程序设计》面向使用数据库和数据访问的.NET和SQI。Server开发人员,需要读者具备基本的.NET编程(C#)和T-SQL编程知识。

作者简介

作者:(美国)Leonard Lobel (美国)Andrew J.Brust (美国)Stephen Forte 译者:贾洪峰Leonard Lobel是Sleek Technologies公司的创始人之一兼CTO。该公司专门开发基于微软技术的解决方案。他也是微软金牌认证合作伙伴twentysix New York的首席咨询帅。Andrew J.Brust是twentysix New York新技术部门的负责人。Andrew是微软的纽约/新泽西区域总监,是微软商业智能合作伙伴咨询委员会的成员。Stephen Forte是微软MVP,也是微软金牌认证合作伙伴Telerik公司的CSO。他还是NYC.N ETDeveloper User Group的创始人,著有多本有关应用程序和数据库开发的书籍。

书籍目录

第1部分 核心基础知识第1章 概述1.1 它到底有多重要1.2 一本为开发人员编写的书1.3 一本由开发人员编写的书1.4 一本为您指明方向的书1.4.1 核心技术1.4.2 超越关系1.4.3 访问外部1.4.4 商业智能策略1.5 小结第2章 T.SQL的增强特性2.1 公用表表达式2.2 PIVOT与L;NPIVOT运算符2.2.1 使用LJNPIVOT2.2.2 动态旋转列2.2.3 APPLY运算符2.3 TOP改进2.4 排名函数2.4.1 ROWNUMBER.函数2.4.2 RANK函数2.4.3 DENSERANK与NTILE函数2.4.4 结合使用所有的排名函数2.4.5 按组排名:PARTITIONBY2.5 事务中的异常处理2.6 varchm(max)数据类型2.7 WAITFOR语句2.8 DDL触发器2.9 SNAPSHOT隔离2.10 表值参数2.10.1 不只是另一种临时表解决方案2.10.2 处理多行集2.10.3 使用TVP进行批量插入和更新2.10.4 处理单行数据2.10.5 创建字典类型的TVP2.10.6 使用ADO.NET传送TVP2.10.7 TVP的局限性2.11 新日期和时间数据类型2.11.1 日期与时间的分离2.11.2 更便捷的日期与时问2.11.3 时区识别2.11.4 日期和时间的精度、存储与格式2.11.5 新函数和经过修改的函数2.12 MERGE:语句2.12.1 定义合并源与合并目标2.12.2 WHENMATCHED子句2.12.3 WHENNOTMATCHEDBYTARGET子句2.12.4 使用MERGE进行表复制2.12.5 WHENNOTMATCHFDBYS01.JRCE子句2.12.6 MERGE输出2.12.7 选择一种联接方法2.12.8 MERGEDML行为2.12.9 执行“upsert”2.13 INSERTOVERDMI语法2.13.1 扩展OUTPUTINT02.13.2 使用CHANGES2.14 GROUPINGSETS运算符2.14.1 按级别汇总2.14.2 汇总所有级别组合2.14.3 仅返回最高级别2.14.4 混合与匹配2.14.5 处理NULL值2.15 新的T.SOL快捷语法2.16 小结第3章 探究SQLCLR3.1 开始:启用CLR集成3.2 Visual Studio/SQL Server集成3.2.1 Visual Studio中的SQL Server项目3.2.2 自动部署3.2.3 SQLCLR代码属性3.3 创建SOLCLR存储过程3.4 CLR存储过程与服务器端数据访问3.5 部署3.5.1 部署程序集3.5.2 部署存储过程3.5.3 测试存储过程3.6 CLR函数3.7 CLR触发器3.8 CLR聚合3.9 SOLCLR类型3.10 安全性3.11 检查和管理数据库中的SOLCLR类型3.12 SQLCLR应用的最佳实践3.13 小结第4章 服务器的管理4.1 SMO简介4.1.1 SQL. DMO怎么样4.1.2 SMO中的最新功能4.2 在Microsoft Visual Studio中使用SMO4.2.1 迭代遍历可用服务器4.2.2 获取服务器设置4.2.3 创建备份与恢复应用程序4.2.4 用SMO执行可程序化DBC命令4.3 基于策略的管理4.4 小结第5章 SQLSen,er2008的安全性5.1 安伞框架的4个主题5.1.1 设计安伞5.1.2 默认安全5.1.3 部署安全5.1.4 通信安全5.2 SQL Server 2008安伞性概述5.2.1 SOL Server登录5.2.2 数据库用户5.2.3 来宾用户帐户5.3 验证与授权5.3.1 客户端如何建立连接5.3.2 密码策略5.3.3 用户架构分离5.3.4 执行上下文5.4 SQL Server的加密支持5.4.1 在活动中加密数据5.4.2 在静止中加密数据5.5 SQL Server 2008的透明数据加密5.5.1 创建密钥和证书5.5.2 启用TDE5.5.3 查询TDE视图5.5.4 备份证书5.5.5 还原加密数据库5.6 SQL Server审核5.6.1 创建审核对象5.6.2 审核选项5.6.3 将审核记录到文件系统5.6.4 将审核记录到Windows事件日志5.6.5 审核服务器事件5.6.6 审核数据库事件5.6.7 查看审核事件5.6.8 查询审核目录视图5.7 黑客如何攻击SQL Server5.7.1 直接连接到互联网5.7.2 弱系统管理员帐户密码5.7.3 SQL Server Browser服务5.7.4 SQL注入5.7.5 智能观察5.8 小结第Ⅱ部分 超越关系第6章 XML和关系数据库6.1 SQLServer2000中的XML6.2 SQLServer2008中的XML——Xml数据类型6.2.1 将xml数据类型作为变量处理6.2.2 处理表中的XML6.2.3 XML架构6.2.4 XML索引6.3 FORXML命令6.3.1 FORXMLRAW6.3.2 FORXMLAUTO6.3.3 FORXMLEXPLICIT6.3.4 FORXML改进6.3.5 SQLServer2008中的OPENXML改进6.3.6 XML批量加载6.4 用XQuery查询XML数据6.4.1 理解XQuery表达式和XPath.6.4.2 操作中的SQLServer2008XQuery6.4.3 SQLServerXQuery扩展6.4.4 xMLDML6.4.5 将一列转换为XML6.5 小结第7章 分层数据和关系数据库7.1 hierarchyid数据类型7.2 创建分层表7.3 填充层次结构7.3.1 GetRoot方法7.3.2 GetDescendant方法7.3.3 ToString方法7.3.4 GetAncestor方法7.4 分层表索引策略7.4.1 深度优先索引7.4.2 广度优先索引7.5 查询分层表7.6 对层次结构内的节点重新排序7.6.1 GetReparentedValue方法7.6.2 移植子树7.7 其他hierarchyid方法7.8 小结第8章 为非结构化的数据存储应用FlLESTREAM8.1 数据库中的BLOB8.2 文件系统中的BLOB8.3 属性中有什么8.4 启用FILESTREAM8.4.1 为机器启用FILESTREAM8.4.2 为服务器实例启用FILESTREAM8.4.3 创建启用了FILESTREAM的数据库8.4.4 创建带有FILESTREAM列的表8.5 OpenSqlFilestreamNativeClientAPI8.5.1.NET中的文件流8.5.2 理解FILESTREAM数据访问8.5.3 示例效果8.5 4 创建流式HTTP服务8.5.5 构建WPF客户端8.6 小结第9章 地理空间数据类型9.1 SQLServer2008扩展了空间功能9.2 空间模型9.2.1 平面(平面地球)模型9.2.2 大地测量(圆形地球)模型9.3 空间数据模型9.4 用“熟知文本”定义空间9.5 使用geometry9.5.1 Parse方法9.5.2 STIntersects方法9.5.3 ToString方法9.5.4 STIntersection方法9.5.5 STDimension方法9.6 使用geography9.6.1 实例9.6.2 STArea和STLength方法9.6.3 窄问引用标识符9.6.4 扩建Event ibrary数据库9.6.5 创建EventMedia客户端应用程序9.6.6 STDistance方法9.6.7 geography,与MicrosoftVirtualEarth集成9.7 小结第Ⅲ部分 实现技术第10章 微软数据访问机10.1 ADO.NET与类型化数据集10.1.1 类型化数据集基础知识10.1.2 TableAdapter对象10.1.3 连接字符串管理10.1.4 使用“TableAdapter配置向导10.1.5 有关查询与参数的更多内容10.1.6 DBDirect方法及类型化数据集的联机使用10.2 “纯粹的”ADO.NET:使用代码10.3 LINO:一种数据访问的新语法10.3.1 L1NQtoDataSet10.3.2 分析LlNQ语法10.4 LINQtoSOL和AD0.NET实体框架:ORM加入.NET10.4.1 为什么不坚持使用ADO.NET10.4.2 构建L2S模型10.4.3 实体框架:以ADO.NET的方法进行ORM10.4.4 后台的XML10.4.5 查询L2s和EF模型10.4.6 添加自定义验证代码10.5 数据Web服务:针对EF模型使用ADO.NET数据服务10.5.1 创建服务10.5.2 测试该服务10.5.3 构建用户接口10.6 作为托管服务的数据:SQL Server数据服务10.7 小结:如此之多的工具,如此之少的时间第11章 .NET数据绑定的许多方面11.1 Windows窗体数据绑定:黄金标准11.1.1 做好准备11.1.2 生成UI11.1.3 查看输出11.1.4 转换为LINQ to SQL11.1.5 转换为实体框架11.1.6 转换为ADO.NET数据服务11.2 用ASP.NET将数据绑定到Web11.2.1 L2s和EF很简单11.2.2 不再只是网格11.2.3 使用标记进行数据绑定11.2.4 使用AJAX进行简单数据访问……第12章 事务第13章 开发偶尔连接的系统第Ⅳ部分 商业智能第14章 数据仓库第15章 基本OAP第16章 高级OLAP第17章 OLAP查询、工具和应用程序开发第18章 用数据挖掘扩展商业智能第19章 Reporting Services

章节摘录

插图:在深入讨论验证与授权的概念之前,讨论SQL。Server2005中称为“端点”的新功能是非常重要的。在SQLServer的以前版本中,客户端可以通过传输控制协议(TCP)、命名管道、共享内存和虚拟接口架构(VIA)连接。只要在服务器上启用了这些协议之一,而且用户拥有有效登录,该连接就会被接受。SQLServer2005引入了“端点”概念,用来对各种协议的连接行为进行区分。端点可以被看作一个进入SQLServer的点。管理员不仅可以为TCP、命名管道、共享内存和ⅥA创建端点,还可以为超文本传输协议(HTTP)创建端点。在创建端点之后,可以限制访问权限,便用户只能通过一个特定端点类型进行连接。例如,您可能创建了一个名为Loginl的登录,并授予HTTP端点访问权限,拒绝对所有其他端点(TCP、命名管道、共享内存和VIA的访问权限。在此情况下,Loginl只能通过此HTTP端点访问SQLServer,它不能通过TCP或任意其他通信协议连接到SQLServer。为了明白端点校验如何影响验证,让我们考虑进行客户端连接的过程。5.3.1 客户端如何建立连接如果TCP客户端希望连接到SQLServer,它必须首先知道连接到哪个端口。在SQLServer2005之前的版本中,总是有一个线程在用户数据报协议(UserDatagramProtocol,uDP)端口1434等待,其目的是返回正在运行的全部SQI.Server实例的细节信息以及这些实例的端口号。在给定一个SQI。Server特定实例时,客户端必须做的全部工作就是连接到端口1434并确定希望连接到哪一端口。这~过程一般是有效的,直到黑客们找到了一种方法,连续向这一端口发送请求枚举的数据包,启动对SOLServer的“拒绝服务”攻击。由于这一枚举过程是SQLServer服务的一部分,所以“SQLSlammer”蠕虫病毒为SQLServer安装导致严重问题。从SQLServer2005开始,这一功能已经被取出,放入称为SQLServerBrowser服务的单独服务中,可以在不用触及SQLServer服务本身的情况下开启和关闭这一功能。

编辑推荐

《精通SQL Server 2008程序设计》:通过《精通SQL Server 2008程序设计》可以全面掌握SQL Server 2008的核心编程功能。作为一本指南,它介绍了升级版本中的新功能,提供了专家组的编程指导和实际开发示例,用来帮助您设计和开发可靠的数据库应用程序和商业智能解决方案。《精通SQL Server 2008程序设计》重要主题:利用强大的T-SQL增强功能查询复杂数据,使用全新的非关系型特性:分层表、本地文件流和地理空间功能,在数据库内部利用XML设计支持XML的应用程序,利用LINQ、实体框架和数据绑定来使用和传送数据,实现数据库级别的加密和服务器审核,生成和维护数据仓库,使用Excel构建OLAP多维数据集的前端及用于查询数据集的MDX,快速。有效地将数据挖掘集成到应用程序。多位SQL Server专家之作,深入主题,挖掘核心内幕,示例丰富,力求举一反三。

图书封面

图书标签Tags

评论、评分、阅读与下载


    精通SQL Server 2008程序设计 PDF格式下载


用户评论 (总计1条)

 
 

  •   对于书籍为什么就不爱护呢/被磕破了.不怎么满意
 

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

京ICP备13047387号-7