搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
SQL Server 2008实战
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115221063
  • 作      者:
    (美)Joseph Sack著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2010
收藏
编辑推荐
  SQL Server程序员和DBA不可或缺的权威参考手册,查询方便,迅速解决工作中的难题,一册在手,精通SQL Server 2008。
  在工作中遇到难题了?需要迅速查阅某个SQL Server任务的解决方案或T-SQL命令?在SQL Server联机丛书上没有找到所需要的内容?想了解T-SQL相关的新特性?《SQL Server 2008实战》将是你理想的选择。
  T-SQL一直以来就是SQL Server,所有编程的基础。DBA和数据库应用程序开发人员的日常工作都离不开T-SQL。
  《SQL Server 2008实战》是享有盛誉的SQL Server工具书。和传统的T-SQL图书不同。《SQL Server 2008实战》从实用性出发。以独特的问题/解决技巧形式来介绍知识点,每个技巧中都包含了有代表性的示例和精炼的说明。书中涵盖了基本的T-SQL数据操作、存储过程、触发器和LJDF的使用。以及针对数据库安全和维护的高级T-SQL技术等多方面的内容。新版更是贯穿着SQL Server 2008的新特性。具体涉及命令、选项、数据类型、函数以及功能等内容。此外。你无需按照顺序阅读和学习.可以根据自身需要迅速找到相应的信息。高效地完成工作。
展开
作者简介
  Joseph Sack 世界知名的SQL Server技术专家,微软认证数据库管理员(MCDBA),有10多年的SQL Server开发和管理工作经验。目前就职于微软公司高级现场工程组(Premier Field Engineering team)。除本书外,他撰写的SQL Server 2000 Fast Answers for DBAs and Developers(即本书前身)是Amazon五星著作,与人合写的Pro SQL Server 2005也广受好评。他的博客地址是http://joesack.com/WordPress/。
展开
内容介绍
  T-SQL一直以来都是SQL Server编程的基础。和传统的 T-SQL书籍不同,《SQL Server 2008实战》以独特的 “技巧”形式来介绍知识点,涵盖了数据处理(增删改、视图、索引、存储过程、触发器等)、数据应用(Web服务、 CLR集成、分布式查询等)和数据库配置(主体、安全、数据库镜像和快照、备份等)3个方面的内容。其中每一个技巧中都包含了有代表性的示例和精炼的解析。
  《SQL Server 2008实战》实用、高效、技巧性强,适用于 SQL Server专业技术人员,也可供初学者学习参考。
展开
精彩书评
  “如果你正在寻找一本简明好用的SQL Server 2008和T-SQL参考指南,我极力推荐此书。”
  ——David Hayden,Microsoft MVP,CodeBetter.com
  “本书编排格式非常便于查阅,实例直截了当,应该成为每个程序员的桌面参考手册。搞不定手上的任务时,你会立即发现它的价值。”
  ——Adam Machanic,Microsoft MVP,《SQL Server 2005编程艺术》作者
展开
精彩书摘
  这一章介绍了使用SEL.ECT语句从SQL Server数据库中返回数据的一些技巧。你会注意到,在每一章的开始都会先介绍最基础的概念。这些内容是为那些SQL Server2008 T-SQL查询语言的初学者准备的。除基础内容之外,还会介绍一些在日常的开发和管理工作中用得到的技巧。这些技巧还会帮助你学习SQL Server 2008中引入的新特性。
  书中的大部分示例使用了Adventure Works数据库(SOL Server·2008 0LTP版),你可以从Code Plex网站(WWW.codeplex.com)的“Microsoft SQL Servel"Product Samples:Database”项目中查找名为AdventureWorks2008.msi的文件,然后下载该文件。而且,如果你决定尝试本书技巧的示例,我强烈建议你在非生产性的学习环境下做这些。这样你就可以自由地做试验且不会带来负面影响。
  简明扼要是本书的关键原则,因此在最开始描述一个新的T-SQL概念时,我只着重讲解示例代码必要的语法块。在阐明一个概念或任务时,如果语法块对示例来说不是必需的,我就不会讲它。对于完整语法,可以参考联机丛书,因此我不会给你复习全部语法,而只关注技巧中用到的语法。关于技巧返回的结果集,经常会为了节省篇幅而减少显示的列和行。
  SOL Server2008的新特性会贯穿在本书中。对于那些非常重要的改进内容,我会在每章的开头加以声明,这样你就知道去留意它们。本章我会讲到的SQL Server2008新特性包括:
  GROIJP BY子句的新扩展,可以在不需使用UNION ALL的情况下,在同一查询中产生多个分组结果集;
  声明时初始化变量的新方法,可以减少需要设置变量值的代码。
  你几乎可以按任意顺序阅读书中的这些技巧。可以直接跳到感兴趣的主题,也可以按顺序阅读。如果看到有用的内容(代码段或者示例),可以根据自己的应用进行修改或者整合到你自己的函数或存储过程中去,那就体现了本书的价值。
展开
目录
第1章 SELECT1
1.1 基本的SELECT语句1
1.1.1 从表中选择指定列2
1.1.2 从所有行中选择所有列2
1.2 使用基本WHERE子句进行有选择的查询3
1.2.1 使用WHERE子句指定结果集中返回的行3
1.2.2 组合搜索条件4
1.2.3 否定搜索条件5
1.2.4 保持WHERE子句无歧义5
1.3 使用运算符和表达式6
1.3.1 在日期范围搜索中使用BETWEEN7
1.3.2 使用比较运算符8
1.3.3 检测NULL值9
1.3.4 基于一组值返回行9
1.3.5 LIKE和通配符结合使用9
1.3.6 声明变量及为变量赋值11
1.4 数据分组12
1.4.1 使用GROUPBY子句12
1.4.2 使用GROUPBYALL13
1.4.3 使用HAVING选择性地查询分组的数据13
1.5 对结果排序14
1.5.1 使用ORDERBY子句15
1.5.2 在排序的结果中使用TOP关键字16
1.6 SELECT子句技术18
1.6.1 使用DISTINCT消除重复值18
1.6.2 在聚合函数中使用DISTINCT18
1.6.3 使用列别名19
1.6.4 使用SELECT创建脚本20
1.6.5 字符串拼接21
1.6.6 使用SELECT创建逗号分隔的列表21
1.6.7 使用INTO子句22
1.7 子查询23
1.8 从多个数据源查询24
1.8.1 使用内联结25
1.8.2 使用外联结26
1.8.3 使用交叉联结27
1.8.4 在同一查询中多次引用同一个表27
1.8.5 使用衍生表28
1.8.6 使用UNION组合结果集29
1.9 使用APPLY来为每行调用表值函数30
1.9.1 使用CROSSAPPLY30
1.9.2 使用OUTERAPPLY32
1.10 数据源高级技术33
1.10.1 使用TABLESAMPLE来返回随机行33
1.10.2 使用PIVOT把单列值转化为多列和聚合数据34
1.10.3 使用UNPIVOT规范化数据36
1.10.4 使用EXCEPT和INTERSECT返回不重复的或匹配的行38
1.11 汇总数据40
1.11.1 使用CUBE汇总数据40
1.11.2 使用ROLLUP来汇总数据42
1.11.3 使用分组集创建自定义汇总43
1.11.4 展现GROUPING生成的行44
1.11.5 使用GROUPING_ID标识分组级别46
1.12 公共表表达式49
1.12.1 使用非递归的公共表表达式49
1.12.2 使用递归的公共表表达式52

第2章 执行、捕获和跟踪数据修改55
2.1 INSERT55
2.1.1 向表中插入一行55
2.1.2 使用默认值插入行56
2.1.3 显式向一个IDENTITY列插入值57
2.1.4 在表中插入拥有uniqueidentifier列的行59
2.1.5 使用INSERT...SELECT语句插入行59
2.1.6 调用存储过程插入数据60
2.1.7 通过VALUES插入多个行62
2.1.8 将VALUES作为表源来使用62
2.2 UPDATE63
2.2.1 更新一行64
2.2.2 根据FROM和WHERE子句更新行65
2.2.3 更新大值数据类型的列66
2.2.4 使用OPENROWSET和BULK插入或更新图片文件68
2.2.5 在维护SQLServer事务控制时向文件系统存储非结构化数据69
2.2.6 “就地”赋值并修改数据库值73
2.3 DELETE75
2.3.1 删除行75
2.3.2 截断表76
2.4 高级数据修改技术77
2.4.1 使用TOP分块修改数据77
2.4.2 在一条语句中执行INSERT、UPDATE和DELETE78
2.5 捕获和跟踪数据修改的改变81
2.5.1 返回数据修改语句影响的行81
2.5.2 异步捕获表数据修改83
2.5.3 从CDC表查询所有变更87
2.5.4 从CDC表查询净变更89
2.5.5 翻译CDC更新掩码90
2.5.6 使用LSN边界92
2.5.7 禁用对表和数据库的变更数据捕获93
2.5.8 以最小的磁盘开销跟踪净数据更改93

第3章 事务、锁定、阻塞和死锁100
3.1 事务控制100
3.1.1 使用显式事务101
3.1.2 使用DBCCOPENTRAN显示最早的活动事务104
3.1.3 通过会话查询事务信息104
3.2 锁定106
3.2.1 查看锁的活动108
3.2.2 控制表的锁升级行为109
3.3 事务、锁定和并发110
3.4 阻塞115
3.4.1 找到并解决阻塞进程116
3.4.2 配置语句等待锁释放的时长118
3.5 死锁118
3.5.1 使用跟踪标志位找出死锁119
3.5.2 设置死锁优先级121

第4章 表123
4.1 表基础123
4.1.1 创建表126
4.1.2 为既有表添加列126
4.1.3 修改列定义127
4.1.4 创建计算列128
4.1.5 减少NULL列的存储空间129
4.1.6 删除表中的列131
4.1.7 报告表信息132
4.1.8 删除表132
4.2 排序规则基础133
4.2.1 查看排序规则元数据133
4.2.2 指定列的排序规则134
4.3 键134
4.3.1 创建有主键的表135
4.3.2 为既有表增加主键约束136
4.3.3 创建一个有外键引用的表136
4.3.4 为既有表增加外键137
4.3.5 创建递归外键引用138
4.3.6 允许外键的级联修改139
4.4 代理键140
4.4.1 在创建表的时候使用IDENTITY属性141
4.4.2 使用DBCCCHECKIDENT来查看和纠正IDENTITY种子值142
4.4.3 使用ROWGUIDCOL属性143
4.5 约束143
4.5.1 创建唯一约束144
4.5.2 为既有表增加UNIQUE约束145
4.5.3 使用CHECK约束145
4.5.4 为既有表增加CHECK约束146
4.5.5 禁止和启用约束147
4.5.6 在表创建时使用DEFAULT约束148
4.5.7 为既有表增加DEFAULT约束149
4.5.8 从表删除约束150
4.6 临时表和表变量150
4.6.1 使用临时表在批处理中进行多次查找151
4.6.2 创建表变量来保存临时结果集152
4.7 管理超大型表153
4.7.1 实现表分区154
4.7.2 确定数据在分区中的位置157
4.7.3 增加新的分区158
4.7.4 移除分区160
4.7.5 把分区移动到不同的表161
4.7.6 移除分区函数和分区方案162
4.7.7 用文件组提高VLDB的可管理性162
4.7.8 用数据压缩减少磁盘空间使用164

第5章 索引167
5.1 索引预览167
5.1.1 创建表索引169
5.1.2 在非键列上强制唯一性170
5.1.3 在多个列上创建索引171
5.1.4 定义索引列排序方向172
5.1.5 查看索引元数据172
5.1.6 禁用索引174
5.1.7 删除索引174
5.1.8 使用DROP_EXISTING改变既有索引174
5.2 控制索引创建的性能和并发性175
5.2.1 在tempdb中创建临时索引175
5.2.2 控制索引创建的并行执行计划176
5.2.3 在索引创建过程中允许用户表访问176
5.3 索引选项177
5.3.1 使用索引INCLUDE177
5.3.2 使用PAD_INDEX和FILLFACTOR178
5.3.3 禁用页和/或行索引锁定178
5.4 管理超大型索引179
5.4.1 在文件组上创建索引180
5.4.2 实现索引分区180
5.4.3 为行的子集做索引181
5.4.4 减小索引的大小182

第6章 全文搜索183
6.1 全文索引和全文目录183
6.1.1 创建全文目录183
6.1.2 创建全文索引184
6.1.3 修改全文目录186
6.1.4 修改全文索引187
6.1.5 检索全文目录和索引元数据189
6.1.6 从全文索引中去掉普通字符串190
6.1.7 删除全文索引193
6.1.8 删除全文目录193
6.2 基本搜索194
6.2.1 使用FREETEXT来搜索全文索引的列194
6.2.2 使用CONTAINS来搜索单词195
6.3 高级搜索196
6.3.1 使用CONTAINS和通配符来搜索196
6.3.2 使用CONTAINS来搜索变形匹配196
6.3.3 使用CONTAINS根据词的相邻搜索结果197
6.4 排名搜索197
6.4.1 根据含义返回排名搜索结果198
6.4.2 根据权值返回排名搜索结果199

第7章 视图201
7.1 普通视图201
7.1.1 创建基本视图202
7.1.2 查询视图定义203
7.1.3 显示视图及其结构204
7.1.4 刷新视图定义205
7.1.5 修改视图206
7.1.6 删除视图206
7.1.7 使用视图修改数据206
7.2 视图加密207
7.3 索引视图208
7.3.1 创建索引视图208
7.3.2 强制优化器为索引视图使用索引210
7.4 分区视图211

第8章 SQLServer函数216
8.1 聚合函数216
8.1.1 返回平均值217
8.1.2 返回行总数217
8.1.3 找出表达式中的最小值和最大值218
8.1.4 返回值的和218
8.1.5 使用统计聚合函数219
8.2 数学函数219
8.3 字符串函数221
8.3.1 把字符值转化为ASCII以及把ASCII转回字符222
8.3.2 返回整数和字符Unicode值222
8.3.3 获取某个字符串在另一个字符串中的起始位置223
8.3.4 使用通配符找到某个字符串在另一个字符串中的起始位置223
8.3.5 检测字符串相似度224
8.3.6 获取字符串最左和最右部分224
8.3.7 检测字符串中的字符数或者字节数225
8.3.8 把字符串的一部分替换成另一个字符串226
8.3.9 把字符串填充到字符串中226
8.3.10 在小写和大写之间进行转化227
8.3.11 移除前导空格和尾部空格228
8.3.12 重复一个表达式N次228
8.3.13 重复一个空格N次229
8.3.14 逆序输出表达式229
8.3.15 返回表达式的一块229
8.4 处理NULL230
8.4.1 用另一个值替换NULL值230
8.4.2 使用ISNULL进行灵活的搜索230
8.4.3 返回表达式列表中第一个非NULL值232
8.4.4 当两个表达式相等的时候返回NULL值,否则返回第一个表达式232
8.5 日期函数233
8.5.1 返回当前日期和时间233
8.5.2 在时区间进行转换234
8.5.3 增加或减少日期值235
8.5.4 找出两个日期的差236
8.5.5 显示日期一部分的字符串值237
8.5.6 使用DATEPART显示日期一部分的整数值237
8.5.7 使用YEAR、MONTH和DAY显示日期一部分的整数值238
8.6 类型转换238
8.6.1 转换数据类型238
8.6.2 将日期转换为文本形式239
8.6.3 以字符串字面量表示二进制数据240
8.6.4 计算表达式返回的数据类型241
8.7 排名函数242
8.7.1 生成递增行号242
8.7.2 根据排名返回行244
8.7.3 根据无间隔排名返回行245
8.7.4 使用NTILE246
8.8 使用系统函数检测服务器、数据库以及连接级别的配置246
8.8.1 确定每周的第一天246
8.8.2 查看当前会话使用的语言247
……
第9章 条件处理、流控制和游标258
第10章 存储过程273
第11章 用户定义函数和类型289
第12章 触发器315
第13章 CLR集成339
第14章 XML、分层和空间数据354
第15章 提示380
第16章 错误处理388
第17章 主体401
第18章 安全对象、权限和审核423
第19章 加密462
第20章 Service Broker489
第21章 配置和查看SQL Server的 选项520
第22章 创建和配置数据库524
第23章 数据库完整性和优化565
第24章 维护数据库对象和对象依赖 关系579
第25章 数据库镜像587
第26章 数据库快照603
第27章 链接服务器和分布式查询608
第28章 查询性能调优621
第29章 备份与恢复662
索引691
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证