分享
 
 
 

SQL Server 2005高级程序设计

  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  參考價格: 点此进入淘宝搜索页搜索
  分類: 图书,计算机/网络,数据库,SQL,

作者: (美)维埃拉著,董明等译

出 版 社: 人民邮电出版社

出版时间: 2008-4-1字数:版次: 1页数: 674印刷时间:开本: 16开印次:纸张:I S B N : 9787115170798包装: 平装编辑推荐

SQL Server经典巨著,原版累计销售超过100000册,专家亲身经验,娓娓道来。

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中的对象

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.3SQL Server数据类型

1.4SQL Server对象标识符

1.4.1对什么命名

1.4.2命名规则

1.5小结

第2章工具

2.1联机丛书

2.2SQL Server配置管理器

2.2.1服务管理

2.2.2网络配置

2.2.3协议

2.2.4客户端配置

2.3SQL Server Management Studio

2.3.1启动

2.3.2查询窗口

2.4SQL Server Business Intelligence Development Studio

2.5SQL Server Integration Services(SSIS)

2.6Reporting Services

2.7大容量复制程序

2.8SQL Server Profiler

2.9sqlcmd

2.10小结

第3章T-SQL基础

3.1基本的SELECT语句

3.1.1SELECT语句和FROM子句

3.1.2JOIN子句

3.1.3WHERE子句

3.1.4ORDER BY

3.1.5使用GROUP BY子句聚集数据

3.1.6使用HAVING子句在组上放置条件

3.1.7使用FOR XML子句进行XML输出

3.1.8使用OPTION子句指定提示

3.1.9DISTINCT

3.2用INSERT语句添加数据

3.3通过UPDATE语句更改现有的数据

3.4DELETE语句

3.5替代的联结语法

3.5.1替代的INNER JOIN

3.5.2替代的OUTER JOIN

3.5.3替代的CROSS JOIN

3.6UNION

3.7小结

第4章创建和修改表

4.1SQL Server中的对象名

4.1.1模式名(又名:所有权)

4.1.2数据库名

4.1.3按照服务器命名

4.2CREATE语句

4.2.1CREATE DATABASE

4.2.2CREATE TABLE

4.3ALTER语句

4.3.1ALTER DATABASE

4.3.2ALTER TABLE

4.4DROP语句

4.5使用GUI工具

4.5.1创建或编辑数据库

4.5.2创建和编辑表

4.6小结

第5章回顾键和约束

5.1约束的类型

5.1.1域约束

5.1.2实体约束

5.1.3引用完整性约束

5.2约束的命名

5.3键约束

5.3.1主键约束

5.3.2外键约束

5.3.3UNIQUE约束

5.4CHECK约束

5.5DEFAULT约束

5.5.1在CREATE TABLE语句中定义DEFAULT约束

5.5.2在现有的表上添加DEFAULT约束

5.6禁用约束

5.6.1创建约束时忽略不正确的数据

5.6.2临时禁用现有的约束

5.7规则和默认值:约束的同类

5.7.1规则

5.7.2默认值

5.7.3确定哪个表或数据类型上使用了指定的规则或默认值

5.8保证数据完整性的触发器

5.9选择应用使用什么

5.10小结

第6章更深入的问题:高级查询

6.1什么是子查询

6.2构建嵌套的子查询

6.2.1使用单值SELECT语句的嵌套查询

6.2.2使用返回多个值的子查询的嵌套查询

6.2.3ANY、SOME和ALL运算符

6.3相关子查询

6.3.1相关子查询如何工作

6.3.2WHERE子句中的相关子查询

6.3.3SELECT列表中的相关子查询

6.4派生表

6.5EXISTS运算符

6.6混合数据类型:CAST和CONVERT

6.7使用外部调用执行复杂的操作

6.8性能考虑

6.9小结

第7章挑战设计

7.1规范化回顾

7.1.1从何处入手

7.1.2达到第三范式

7.1.3其他规范形式

7.2关系

7.3关系图

7.3.1几种关系类型

7.3.2实体框

7.3.3关系线

7.3.4终结器

7.4逻辑设计和物理设计

7.4.1逻辑模型的用途

7.4.2逻辑模型的组成部分

7.5处理基于文件的信息

7.6子类别

7.6.1子类别的类型

7.6.2明了什么是什么——实现子类别

7.6.3子类别的物理实现

7.6.4通过子类别增加可扩展性

7.7数据库重用

7.7.1可重用数据库的候选

7.7.2如何分解事物

7.7.3可重用性的高昂代价

7.8非规范化

7.9为可伸缩性进行分区

7.10SQL Server关系图工具

7.10.1表

7.10.2处理约束

7.11小结

第8章SQL Server——存储和索引结构

8.1SQL Server存储

8.1.1数据库

8.1.2文件

8.1.3区段

8.1.4页

8.1.5行

8.1.6全文目录

8.2理解索引

8.2.1“B”还是非“B”:B树

8.2.2在SQL Server中如何访问数据

8.2.3索引类型和索引导航

8.3创建、修改和删除索引

8.3.1CREATE INDEX语句

8.3.2创建XML索引

8.3.3随约束隐含创建的索引

8.3.4ALTER INDEX

8.3.5DROP INDEX

8.4明智地选择:决定何时何地使用何种索引

8.4.1选择性

8.4.2注意代价:当少变成多时

8.4.3选择聚集索引

8.4.4列顺序问题

8.4.5删除索引

8.4.6使用数据库引擎优化顾问

8.5维护索引

8.5.1碎片

8.5.2检测碎片

8.6 小结

第9章视图

9.1简单视图

9.2更复杂的视图

9.3使用T-SQL编辑视图

9.4删除视图

9.5审查:显示已有的代码

9.6保护代码:加密视图

9.7关于模式绑定

9.8使用VIEW_METADATA让视图看起来像一个表

9.9索引(具体化)视图

9.10分区视图

9.11小结

第10章脚本和批处理

10.1脚本基础

10.1.1USE语句

10.1.2声明变量

10.1.3使用@@ IDENTITY

10.1.4使用@@ ROWCOUNT

10.2批处理

10.2.1批处理中的错误

10.2.2何时使用批处理

10.3SQLCMD

10.4动态SQL:使用EXE命令生成代码

10.5流控制语句

10.5.1IF...ELSE语句

10.5.2ELSE子句

10.5.3CASE语句

10.5.4使用WHILE语句进行循环

10.5.5WAITFOR语句

10.5.6TRY/CATCH块

10.6小结

第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

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

SQL Server 2005高级程序设计

SQL Server 2005高级程序设计

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
>>返回首頁<<
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有