
SQL Server 2005高级程序设计作者: (美)维埃拉著,董明等译
出 版 社:人民邮电出版社
出版时间: 2008-4-1
字数: 1158000
版次: 1
页数: 674
开本: 16开
印次: 1
纸张: 胶版纸
I S B N : 9787115170798
包装: 平装
所属分类: 图书 >> 计算机/网络 >> 数据库 >>SQL
定价:¥89.00
编辑推荐SQL Server经典巨著,专家亲身经验,娓娓道来。
SQL Server 2005是微软数据库技术的一个里程碑,新增或重写的功能在数量和重要性上都令人惊叹。但是,功能的强大和丰富也向程序员提出了挑战。只有正确地选择,并善加运用,才能发挥数据库的真正潜力。
本书恰恰满足了这一需要。作为SQL Server领域最具影响力的经典著作之一,本书各版本累计销量已经超过了10万册。在Amazon共有150多位读者给予4星半评价。它从众多同类图书中脱颖而出的秘诀。就在于作者不是一般性地讲述各个知识点,而是处处从自身的经验和实战需要出发,对各种功能的正确运用做出切中要害的评述和深入的探讨,使读者能够轻松获得本来需要多年摸索才能掌握的深度知识。书中对一些SQL Server特性的批评,显示了作者非同一般的功力。
内容简介本书是SQL Server应用开发的经典著作。主要讨论了SQL Server数据库对象、T-SQL基础、键和约束、高级查询、存储和索引、事务和锁、触发器、安全性等内容。书中在讲述每个主题时,都会先给出背景知识,然后讲述自身经验,并在适当时候推出示例,进一步予以说明。
本书主要面向中高级数据库开发人员。
作者简介Robert Vieira SQL Server领域的世界权威。他曾经任全球领先的IT管理分析解决方案供应商NetTQ公司的软件架构师,负责产品的架构设计和对其他程序员进行培训和指导。从2006年开始,他成为一名独立咨询师。Vieira在数据库架构和管理上有很深造诣,并乐于向技术社区分享自己的经验和知识,因而享誉世界。他撰写了多部数据库开发方面的畅销书,本书是他的代表作。
目录第1章回顾SQL Server中的对象
第2章工具
第3章T-SQL基础
第4章创建和修改表
第5章回顾键和约束
第6章更深入的问题:高级查询
第7章挑战设计
第8章SQL Server——存储和索引结构
第9章视图
第10章脚本和批处理
第11章存储过程和用户定义函数
11.1创建存储过程:基本语法
11.2用ALTER更改存储过程
11.3删除存储过程
11.4参数
11.4.1声明参数
11.4.2创建输出参数
11.5通过返回值确认成功或失败
11.6错误处理
11.6.1应该采取的方式
11.6.2手工生成错误
11.6.3添加你自己的自定义错误消息
11.7存储过程能提供什么
11.7.1创建可调用的过程
11.7.2因安全而使用存储过程
11.7.3存储过程和性能
11.8扩展存储过程
11.9递归概览
11.10用户定义函数
11.10.1什么是UDF
11.10.2返回标量值的UDF
11.11返回表的UDF
11.12调试
11.12.1为进行调试而设置SQL Server
11.12.2启动调试器
11.12.3调试器的组成
11.12.4调试器启动后使用
11.13小结
第12章事务和锁
12.1事务
12.1.1BEGIN TRAN
12.1.2COMMIT TRAN
12.1.3ROLLBACK TRAN
12.1.4SAVE TRAN
12.2SQL Server日志的工作原理
12.2.1使用CHECKPOINT命令
12.2.2在恢复时使用CHECKPOINT
12.2.3正常的服务器关机
12.2.4数据库选项的更改
12.2.5当Truncate on Checkpoint选项活动时
12.2.6当恢复时间超出Recovery Interval选项的设置时
12.2.7失败和恢复
12.2.8隐式事务
12.3锁和并发
12.3.1通过锁可以防止什么问题
12.3.2可锁的资源
12.3.3锁升级以及锁对性能的影响
12.3.4锁模式
12.3.5锁的兼容性
12.3.6指定特定的锁类型--优化器提示
12.4设置隔离级别
12.4.1READ COMMITTED
12.4.2READ UNCOMMITTED
12.4.3REPEATABLE READ
12.4.4SERIALIZABLE
12.5处理死锁(也称作“A 1205”)
12.5.1SQL Server是如何判断存在死锁的
12.5.2死锁牺牲品是如何选择的
12.5.3避免死锁
12.6小结
第13章触发器
13.1什么是触发器
13.1.1ON
13.1.2WITH ENCRYPTION
13.1.3FOR|AFTER与INSTEAD OF子句
13.1.4WITH APPEND
13.1.5NOT FOR REPLICATION
13.1.6AS
13.2为数据完整性规则使用触发器
13.2.1处理来自其他表的要求
13.2.2使用触发器检查更新的差异
13.2.3为定制错误消息使用触发器
13.3触发器的其他常见用途
13.3.1更新摘要信息
13.3.2向非规范化的表中输入数据以用于报告
13.3.3设置条件标记
13.4其他触发器问题
13.4.1触发器可以是嵌套的
13.4.2触发器可以是递归的
13.4.3调试触发器
13.4.4触发器不妨碍修改架构
13.4.5不必删除触发器就能够禁用它
13.4.6触发器激发顺序
13.5INSTEAD OF触发器
13.5.1INSTEAD OF INSERT触发器
13.5.2INSTEAD OF UPDATE触发器
13.5.3INSTEAD OF DELETE触发器
13.6IF UPDATE()与COLUMNS_UPDATED
13.6.1UPDATE()函数
13.6.2COLUMNS_UPDATED()函数
13.7性能考虑
13.7.1触发器是被动的而非先发制人的
13.7.2触发器与激发它们的进程之间没有并发问题
13.7.3保持短小精悍
13.7.4在选择索引时不要忘记了触发器
13.7.5不要试图在触发器中回滚
13.8删除触发器
13.9调试触发器
13.10小结
第14章使用.NET
14.1程序集入门
14.2编译程序集
14.3将程序集上载到SQL Server中
14.4创建基于程序集的存储过程
14.5从程序集中创建标量用户定义函数
14.6创建表值函数
14.7创建聚集函数
14.8从程序集创建触发器
14.9自定义数据类型
14.9.1从程序集创建自己的数据类型
14.9.2访问复杂数据类型
14.9.3删除数据类型
14.10小结
第15章SQL游标
15.1什么是游标
15.2游标的生命期
15.3游标的类型和扩展的声明语法
15.3.1作用域
15.3.2可滚动性
15.3.3游标类型
15.3.4并发性选项
15.3.5游标类型转换检测:TYPE_WARNING
15.3.6FOR < SELECT >
15.3.7FOR UPDATE
15.4在游标中导航:FETCH语句
15.5在游标中修改数据
15.6小结
第16章XML集成
16.1XML数据类型
16.1.1定义一个XML数据类型的列
16.1.2XML模式集合
16.1.3创建、修改和删除XML模式集合
16.1.4XML数据类型方法
16.1.5在模式集合上的强制约束
16.2提取XML格式的关系数据
16.2.1FOR XML子句
16.2.2OPENXML
16.3XML索引的快速提示
16.4HTTP端点
16.4.1安全性
16.4.2HTTP端点方法
16.4.3创建和管理HTTP端点
16.4.4最后的思考
16.5小结
第17章报表服务
17.1报表服务入门
17.2构建简单的报表模型
17.2.1数据源视图
17.2.2创建报表
17.3报表服务器项目
17.4小结
第18章BCP和其他基本的大容量操作
18.1BCP实用工具
18.1.1BCP语法
18.1.2BCP导入
18.1.3BCP导出
18.2格式化文件
18.2.1当列不匹配时
18.2.2使用格式化文件
18.2.3最大化导入的性能
18.3BULK INSERT
18.4OPENROWSET(BULK)
18.4.1ROWS_PER_BATCH
18.4.2SINGLE_BLOB,SINGLE_CLOB,SINGLE_NCLOB
18.5小结
第19章集成服务
19.1理解问题
19.2包的概述
19.2.1任务
19.2.2主窗口
19.2.3解决方案资源管理器
19.2.4属性窗口
19.3创建简单的包
19.4执行包
19.4.1执行包实用工具的使用
19.4.2在Management Studio中执行
19.5小结
第20章复制
20.1复制基础
20.1.1考虑在什么时候做出复制计划
20.1.2复制角色
20.1.3订阅
20.1.4订阅服务器的类型
20.1.5筛选数据
20.2复制模型
20.2.1快照复制
20.2.2合并复制
20.2.3事务复制
20.2.4立即更新订阅服务器
20.2.5混合复制类型
20.3复制的拓扑结构
20.3.1简单模型
20.3.2混合模型
20.4为复制制订计划
20.4.1涉及的数据
20.4.2移动设备
20.5在Management Studio中设置复制
20.5.1为复制配置服务器
20.5.2配置发布
20.5.3设置订阅服务器(通过Management Studio)
20.5.4使用复制数据库
20.6复制管理对象
20.7小结
第21章全文搜索
21.1全文搜索的架构
21.2设置全文索引和目录
21.2.1为数据库激活全文特性
21.2.2创建、修改、删除和操作全文特性
21.2.3创建、更改、删除和操作全文索引
21.2.4使用旧的语法来创建全文目录
21.2.5针对索引的旧语法
21.2.6关于索引填充的更多内容
21.3全文查询语法
21.3.1CONTAINS
21.3.2FREETEXT
21.3.3CONTAINSTABLE
21.3.4FREETEXTTABLE
21.3.5处理短语
21.3.6布尔操作
21.3.7邻近词
21.3.8权重
21.3.9特定性
21.4干扰词
21.5小结
第22章安全性
22.1安全性基础
22.1.1一个人,一个登录名,一个密码
22.1.2密码过期
22.1.3密码长度和组成
22.1.4尝试登录的次数
22.1.5用户和密码信息的存储
22.2安全性选项
22.2.1SQL Server安全性
22.2.2创建和管理登录
22.2.3Windows集成的安全性
22.3用户权限
22.3.1授予访问特定数据库的权限
22.3.2授予数据库中对象的权限
22.3.3用户权限和语句级别的许可
22.4服务器和数据库角色
22.4.1服务器角色
22.4.2数据库角色
22.5应用程序角色
22.5.1创建应用程序角色
22.5.2向应用程序角色添加许可权限
22.5.3使用应用程序角色
22.5.4删除应用程序角色
22.6更高级的安全性
22.6.1关于guest账户应该怎么办
22.6.2TCP/IP端口设置
22.6.3别使用sa账户
22.6.4让xp_cmdshell保持隐秘
22.6.5不要忘记作为安全手段的视图、存储过程以及UDF
22.7证书和非对称密钥
22.7.1证书
22.7.2非对称密钥
22.8小结
第23章性能优化
23.1什么时候进行优化
23.2索引选择
23.3客户端和服务器端处理
23.4战略上的非规范化
23.5例行维护
23.6组织好存储过程
23.6.1让事务尽量短
23.6.2尽可能使用限制性最少的事务隔离级别
23.6.3必要的话实现多个解决方案
23.6.4尽可能避免使用游标
23.7使用临时表
23.8莫以善小而不为
23.9硬件的考虑
23.9.1独占对服务器的使用
23.9.2I/O密集与CPU密集
23.9.3OLTP和OLAP
23.9.4现场的和非现场的
23.9.5挂起的风险
23.9.6丢失数据
23.9.7性能就是全部吗?
23.9.8驱动器支持
23.9.9理想的系统
23.10排错
23.10.1多种多样的显示计划和STATISTICS
23.10.2数据库一致性检查器(DBCC)
23.10.3查询调控器
23.10.4SQL Server Profiler
23.10.5性能监视器
23.11小结
第24章管理
24.1计划作业
24.1.1创建操作员
24.1.2创建作业和任务
24.2备份和恢复
24.2.1创建备份
24.2.2恢复模式
24.2.3恢复
24.3索引维护
24.3.1ALTER INDEX
24.3.2索引名
24.3.3表名或视图名
24.3.4REBUILD
24.3.5DISABLE
24.3.6REORGANIZE
24.4数据存档
24.5小结
第25章SMO:SQL管理对象
25.1SQL Server SMO的历史
25.1.1SQL分布式管理对象
25.1.2SQL命名空间
25.1.3WMI
25.1.4SMO
25.2SMO对象模型
25.3演练实例
25.3.1开始
25.3.2创建数据库
25.3.3创建表
25.4删除数据库
25.5备份数据库
25.6生成脚本
25.7完整的代码
25.8小结
附录A系统函数
附录B连接性
附录C获得服务
媒体评论“如果你需要一部既有相当的广度,又具足够深度的书,那么本书将是最佳选择。”
——Blogcritics.org
“本书仍然是SQL Server程序员的必读之作。它是同类图书中最通俗易读的,很好地结合了理论和实践。”
——sql-server-performance.com