SQL Server 2005编程艺术
0推荐 收藏
2.8K阅读
图灵程序设计丛书

SQL Server 2005编程艺术

Adam Machanic , Hugo Kornelis , Lara Rubbelke (作者) 颜炯 , 薄建禄 (译者)
终止销售
本书是一部关于SQL Server 2005 高级开发技术的权威著作,提供了详尽、全面的技术讨论,并给出了详细的应用实例。书中前4 章着重介绍SQL Server 所涉及的软件开发方法学、测试、异常处理和安全;第5 章至第7 章深入研究SQL Server 独具的高级特性,主要介绍加密、SQLCLR 和动态SQL;第8 章至第11 章从数据库体系结构的角度分析问题,深入研究具体的设计和实现问题,包括应用程序并发、空间数据、时态数据和图,这是本书最为复杂的内容,也是最有实际意义的内容。
本书可以作为软件开发人员,特别是数据库设计人员的参考手册,也可供计算机专业、信息系统专业的高年级本科生、研究生作为数据库课程的教材或者参考书。
纸质书
¥59.00

其他购买方式?

出版信息

  • 书  名SQL Server 2005编程艺术
  • 系列书名图灵程序设计丛书
  • 执行编辑关于本书的内容有任何问题,请联系 傅志红
  • 出版日期2008-05-30
  • 书  号978-7-115-17935-7
  • 定  价59.00 元
  • 页  数396
  • 开  本16开
  • 出版状态终止销售
  • 原书名Expert SQL Server 2005 Development
  • 原书号1-59059-729-X

同系列书

  • JavaScript高级程序设计(第4版)

    [美]马特·弗里斯比(Matt Frisbie)   李松峰   译

    本书是JavaScript经典图书的新版。第4版涵盖ECMAScript 2019,全面、深入地介绍了Java...

  • HTTP权威指南

    David Gourley   Brian Totty   Marjorie Sayer   Sailu Reddy   Anshu Aggarwal   陈涓   赵振平   译

    本书是HTTP及其相关核心Web技术方面的权威著作,主要介绍了Web应用程序是如何工作的,核心的因特网协议如何...

  • JavaScript高级程序设计(第3版)

    Nicholas C.Zakas   李松峰   曹力   译

    本书是JavaScript超级畅销书的新版。ECMAScript 5 和HTML5在标准之争中双双胜出,使大量...

  • Python编程:从入门到实践(第2版)

    埃里克·马瑟斯(Eric Matthes)   袁国忠   译

    本书是针对所有层次Python读者而作的Python入门书。全书分两部分:第一部分介绍用Python编程所必须...

  • 计算机科学的基础

    Al Aho   Jeff Ullman   傅尔也   译

    本书全面而详细地阐述了计算机科学的理论基础,从抽象概念的机械化到各种数据模型的建立,用算法、数据抽象等核心思想...

目录

第1章 数据库领域的软件开发方法学    1
1.1 架构回顾    1
1.1.1 耦合、内聚和封装    1
1.1.2 接口    4
1.2 核心问题:集成数据库和面向对象系统    6
1.2.1 该何去何从    7
1.2.2 对象—关系失配    10
1.3 ORM:一个问题多多的解决方案    14
1.4 把数据库操作设计为API    15
1.5 全面权衡    16
1.5.1 可测试性    16
1.5.2 可维护性    16
1.5.3 安全性    17
1.5.4 性能    17
1.5.5 步履蹒跚的远期功能    18
1.6 小结    18
第2章 数据库例程测试    19
2.1 黑盒测试与白盒测试简介    19
2.1.1 单元测试和功能测试    20
2.1.2 单元测试框架    22
2.1.3 回归测试的重要性    25
2.2 实现数据库测试过程和测试例程的指导准则    25
2.2.1 为什么说软件测试很重要    26
2.2.2 哪种测试重要    26
2.2.3 需要进行多少测试    26
2.2.4 管理层是否愿意接受软件测试    27
2.3 性能测试和数据库系统事件探查    28
2.3.1 获取基准度量    28
2.3.2 使用跟踪器及事件探查器进行查看    29
2.3.3 评估性能计数器    31
2.3.4 宏观分析    32
2.3.5 粒度分析    32
2.3.6 修正问题:仅仅关注明显的错误是否已经足够    33
2.4 SQLQueryStress性能测试工具介绍    34
2.5 小结    37
第3章 错误和异常    38
3.1 异常和错误    38
3.2 SQL Server中异常的工作原理    39
3.2.1 语句级异常    39
3.2.2 批处理程序级异常    40
3.2.3 语法分析和作用域解析异常    41
3.2.4 连接和服务器级异常    42
3.2.5 XACT_ABORT设置    42
3.2.6 分析错误信息    43
3.2.7 SQL Server的RAISERROE函数    45
3.2.8 跟踪监控异常事件    49
3.3 异常处理    49
3.3.1 为什么要在T-SQL中处理异常    50
3.3.2 使用@@ERROR“处理”异常    50
3.3.3 SQL Server的TRY/CATCH语法    51
3.4 事务与异常    56
3.4.1 事务退出的神话    56
3.4.2 XACT_ABORT:神话(半)成真    57
3.4.3 TRY/CATCH和被诅咒事务    59
3.5 小结    59
第4章 特权与授权    61
4.1 最低特权原则    61
4.1.1 在SQL Server中创建代理    62
4.1.2 层级数据安全:洋葱模型    63
4.2 使用Schema组织数据    64
4.3 使用EXECUTE AS实现基本模拟    66
4.4 所有权链    68
4.5 非链式特权提升    69
4.5.1 存储过程与EXECUTE AS    70
4.5.2 使用证书对存储过程进行签名    71
4.6 小结    75
第5章 加密    76
5.1 要保护什么    77
5.2 加密术语:我们需要知道的部分    78
5.3 SQL Server 2005加密密钥体系    79
5.3.1 服务主密钥    79
5.3.2 数据库主密钥    80
5.4 SQL Server 2005数据保护    81
5.4.1 HashBytes()    82
5.4.2 非对称密钥加密和证书加密    82
5.4.3 对称密钥加密    84
5.4.4 EncryptByPassphrase    91
5.5 隔离数据与DBA    92
5.6 性能优化设计    93
5.6.1 设计解决方案、定义问题    94
5.6.2 搜索加密数据    97
5.7 小结    110
第6章 SQLCLR:架构和设计注意事项    111
6.1 填充SQL/CLR鸿沟:SqlTypes库    111
6.2 包装代码以提高跨层重用性    112
6.3 SQLCLR的安全性特征和可靠性特征    114
6.3.1 代码安全性需求    117
6.3.2 通过程序集引用有选择地提升特权    118
6.3.3 授予交叉程序集特权    124
6.4 利用SQLCLR加强Service Broker可扩展性功能    126
6.5 扩展用户自定义聚合    136
6.6 小结    141
第7章 动态T-SQL    142
7.1 动态T-SQL与ad hoc T-SQL    142
7.2 为什么要使用动态SQL    144
7.2.1 编译与参数化    145
7.2.2 自动参数化    146
7.2.3 应用程序级参数化    148
7.2.4 参数化与高速缓存的性能暗示    149
7.3 支持可选参数    151
7.3.1 通过静态T-SQL实现可选参数    151
7.3.2 实现动态化:使用EXECUTE    157
7.3.3 SQL注入    162
7.3.4 sp_executesql:一个更好的EXECUTE    164
7.4 动态SQL在安全方面的考虑    172
7.4.1 被引用对象的权限    172
7.4.2 接口规则    172
7.5 小结    175
第8章 应用程序并发系统的设计    176
8.1 从业务角度观察:进程产生冲突时会发生什么情况    176
8.1.1 SQL Server隔离级别概述    178
8.1.2 并发控制与SQL Server提供的隔离级别    182
8.2 做最坏的打算:悲观的并发    183
8.2.1 在写入过程中使用悲观锁    188
8.2.2 应用程序锁:对悲观并发控制机制进行泛化    189
8.3 希望最好的情况发生:乐观的并发控制    199
8.4 包容冲突:多值并发控制    203
8.5 通过排队提高可扩展性    206
8.6 小结    212
第9章 空间数据处理    213
9.1 用纬度和经度表示地球空间数据    213
9.1.1 设置示例数据    214
9.1.2 计算两点之间的距离    216
9.1.3 从一个位置点移动到另一个位置点    220
9.1.4 邻近搜索    224
9.1.5 边界框    230
9.1.6 查找距离最近的邻近点    240
9.1.7 动态边界框    243
9.1.8 结论    252
9.2 使用分层三角形网格表示地球空间数据    252
9.2.1 HTM的简化描述    253
9.2.2 实现HtmID    256
9.2.3 Spatial数据库提供的函数    257
9.2.4 结论    268
9.3 其他类型的空间数据    268
9.3.1 三维数据    268
9.3.2 天文数据    269
9.3.3 虚拟空间    269
9.3.4 将区域表达为多边形    269
9.4 小结    270
第10章 时态数据处理    271
10.1 表达的不仅仅是时间    271
10.2 SQL Server提供的日期/时间数据类型    272
10.2.1 日期输入格式    272
10.2.2 格式化输出日期    275
10.2.3 高效查询日期/时间列    276
10.2.4 日期/时间计算    279
10.3 使用日历表定义周期    284
10.4 设计时态数据存储方案及查询时态数据    292
10.4.1 处理时区    293
10.4.2 处理时间区间    299
10.4.3 为持续时间建立模型    319
10.4.4 管理双时态数据    320
10.5 小结    323
第11章 树、层次结构和图    324
11.1 术语:万物皆为图    324
11.2 基础知识:邻接表和图    325
11.2.1 为边加入约束    326
11.2.2 针对图的基本查询:给定一个结点,这个结点与其他哪些结点相连    328
11.2.3 遍历图    329
11.3 邻接表的层次结构    338
11.3.1 查询邻接表层次结构:基础知识    339
11.3.2 查找直接后代结点    339
11.3.3 在层次结构中向下级层次遍历    341
11.3.4 在层次结构中向上级层次遍历    349
11.3.5 插入新结点并重新定位子树    350
11.3.6 删除已有结点    351
11.3.7 为层次结构加入约束    351
11.4 持久保存具体化路径    354
11.4.1 查找下级结点    355
11.4.2 在层次结构中向上级层次导航    356
11.4.3 对具体化路径解决方案进行优化    357
11.4.4 插入结点    362
11.4.5 重新定位子树    363
11.4.6 删除结点    365
11.4.7 为层次结构加入约束    365
11.5 嵌套集模型    366
11.5.1 查找下级结点    370
11.5.2 在层次结构中向上级层次导航    371
11.5.3 插入结点    371
11.5.4 重新定位子树    373
11.5.5 删除结点    377
11.5.6 为层次结构加入约束    378
11.6 小结    379
暂无评论!