《精通SQLServer2008程序设计》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:贾洪峰编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302226260
  • 页数:768 页
图书介绍:本书由多位Microsoft SQL Server专家联合编著,是2005版的修订版本。内容涵盖了SQL Server 2008中与开发人员相关的众多功能。

第Ⅰ部分 核心基础知识 3

第1章 概述 3

1.1 它到底有多重要 3

1.2 一本为开发人员编写的书 5

1.3 一本由开发人员编写的书 5

1.4 一本为您指明方向的书 6

1.4.1 核心技术 6

1.4.2 超越关系 7

1.4.3 访问外部 8

1.4.4 商业智能策略 9

1.5 小结 10

第2章 T-SQL的增强特性 11

2.1 公用表表达式 12

2.2 PIVOT与UNPIVOT运算符 17

2.2.1 使用UNPIVOT 18

2.2.2 动态旋转列 19

2.2.3 APPLY运算符 21

2.3 TOP改进 22

2.4 排名函数 23

2.4.1 ROW_NUMBER函数 23

2.4.2 RANK函数 26

2.4.3 DENSE_RANK与NTILE函数 28

2.4.4 结合使用所有的排名函数 30

2.4.5 按组排名:PARTITION BY 31

2.5 事务中的异常处理 33

2.6 varchar(max)数据类型 35

2.7 WAITFOR语句&. 35

2.8 DDL触发器 36

2.9 SNAPSHOT隔离 37

2.10 表值参数 38

2.10.1 不只是另一种临时表解决方案 38

2.10.2 处理多行集 40

2.10.3 使用TVP进行批量插入和更新 40

2.10.4 处理单行数据 42

2.10.5 创建字典类型的TVP 44

2.10.6 使用ADO.NET传送TVP 46

2.10.7 TVP的局限性 48

2.11 新日期和时间数据类型 48

2.11.1 日期与时间的分离 49

2.11.2 更便捷的日期与时间 49

2.11.3 时区识别 50

2.11.4 日期和时间的精度、存储与格式 51

2.11.5 新函数和经过修改的函数 53

2.12 MERGE语句 56

2.12.1 定义合并源与合并目标 58

2.12.2 WHEN MATCHED子句 58

2.12.3 WHEN NOT MATCHED BY TARGET子句 59

2.12.4 使用MERGE进行表复制 60

2.12.5 WHEN NOT MATCHED BY SOURCE子句 61

2.12.6 MERGE输出 63

2.12.7 选择一种联接方法 64

2.12.8 MERGE DML行为 65

2.12.9 执行“upsert” 66

2.13 INSERT OVER DML语法 73

2.13.1 扩展OUTPUT...INTO 74

2.13.2 使用CHANGES 77

2.14 GROUPING SETS运算符 79

2.14.1 按级别汇总 81

2.14.2 汇总所有级别组合 82

2.14.3 仅返回最高级别 84

2.14.4 混合与匹配 84

2.14.5 处理NULL值 86

2.15 新的T-SQL快捷语法 89

2.16 小结 90

第3章 探究SQL CLR 91

3.1 开始:启用CLR集成 92

3.2 Visual Studio/SQL Server集成 93

3.2.1 Visual Studio中的SQL Server项目 93

3.2.2 自动部署 95

3.2.3 SQL CLR代码属性 95

3.3 创建SQL CLR存储过程 96

3.4 CLR存储过程与服务器端数据访问 98

3.5 部署 101

3.5.1 部署程序集 102

3.5.2 部署存储过程 103

3.5.3 测试存储过程 104

3.6 CLR函数 106

3.7 CLR触发器 110

3.8 CLR聚合 114

3.9 SQL CLR类型 118

3.10 安全性 122

3.11 检查和管理数据库中的SQL CLR类型 123

3.12 SQL CLR应用的最佳实践 127

3.13 小结 128

第4章 服务器的管理 129

4.1 SMO简介 129

4.1.1 SQL-DMO怎么样 130

4.1.2 SMO中的最新功能 134

4.2 在Microsoft Visual Studio中使用SMO 134

4.2.1 迭代遍历可用服务器 136

4.2.2 获取服务器设置 137

4.2.3 创建备份与恢复应用程序 141

4.2.4 用SMO执行可程序化DBCC命令 146

4.3 基于策略的管理 147

4.4 小结 151

第5章 SQL Server 2008的安全性 153

5.1 安全框架的4个主题 153

5.1.1 设计安全 153

5.1.2 默认安全 154

5.1.3 部署安全 154

5.1.4 通信安全 154

5.2 SQL Server 2008安全性概述 155

5.2.1 SQL Server登录 156

5.2.2 数据库用户 156

5.2.3 来宾用户帐户 157

5.3 验证与授权 158

5.3.1 客户端如何建立连接 158

5.3.2 密码策略 159

5.3.3 用户架构分离 160

5.3.4 执行上下文 162

5.4 SQL Server的加密支持 164

5.4.1 在活动中加密数据 165

5.4.2 在静止中加密数据 166

5.5 SQL Server 2008的透明数据加密 170

5.5.1 创建密钥和证书 170

5.5.2 启用TDE 171

5.5.3 查询TDE视图 171

5.5.4 备份证书 172

5.5.5 还原加密数据库 173

5.6 SQL Server审核 173

5.6.1 创建审核对象 174

5.6.2 审核选项 175

5.6.3 将审核记录到文件系统 176

5.6.4 将审核记录到Windows事件日志 177

5.6.5 审核服务器事件 177

5.6.6 审核数据库事件 178

5.6.7 查看审核事件 179

5.6.8 查询审核目录视图 180

5.7 黑客如何攻击SQL Server 181

5.7.1 直接连接到互联网 181

5.7.2 弱系统管理员帐户密码 181

5.7.3 SQL Server Browser服务 182

5.7.4 SQL注入 182

5.7.5 智能观察 182

5.8 小结 183

第Ⅱ部分 超越关系 187

第6章X ML和关系数据库 187

6.1 SQL Server 2000中的XML 188

6.2 SQL Server 2008中的XML——xml数据类型 189

6.2.1 将xml数据类型作为变量处理 189

6.2.2 处理表中的XML 190

6.2.3 XML架构 192

6.2.4 XML索引 197

6.3 FOR XML命令 200

6.3.1 FOR XML RAW 200

6.3.2 FOR XML AUTO 201

6.3.3 FOR XML EXPLICIT 202

6.3.4 FOR XML改进 205

6.3.5 SQL Server 2008中的OPENXML改进 211

6.3.6 XML批量加载 213

6.4 用XQuery查询XML数据 213

6.4.1 理解XQuery表达式和XPath 213

6.4.2 操作中的SQL Server 2008 XQuery 216

6.4.3 SQL Server XQuery扩展 223

6.4.4 XML DML 224

6.4.5 将一列转换为XML 226

6.5 小结 227

第7章 分层数据和关系数据库 229

7.1 hierarchyid数据类型 230

7.2 创建分层表 231

7.3 填充层次结构 232

7.3.1 GetRoot方法 233

7.3.2 GetDescendant方法 233

7.3.3 ToString方法 234

7.3.4 GetAncestor方法 238

7.4 分层表索引策略 242

7.4.1 深度优先索引 242

7.4.2 广度优先索引 243

7.5 查询分层表 243

7.6 对层次结构内的节点重新排序 245

7.6.1 GetReparentedValue方法 246

7.6.2 移植子树 247

7.7 其他hierarchyid方法 249

7.8 小结 250

第8章 为非结构化的数据存储应用FILESTREAM 251

8.1 数据库中的BLOB 251

8.2 文件系统中的BLOB 252

8.3 属性中有什么 253

8.4 启用FILESTREAM 254

8.4.1 为机器启用FILESTREAM 254

8.4.2 为服务器实例启用FILESTREAM 255

8.4.3 创建启用了FILESTREAM的数据库 256

8.4.4 创建带有FILESTREAM列的表 258

8.5 OpenSqlFilestream Native Client API 260

8.5.1 .NET中的文件流 261

8.5.2 理解FILESTREAM数据访问 262

8.5.3 示例效果 271

8.5.4 创建流式HTTP服务 272

8.5.5 构建WPF客户端 276

8.6 小结 278

第9章 地理空间数据类型 279

9.1 SQL Server 2008扩展了空间功能 279

9.2 空间模型 280

9.2.1 平面(平面地球)模型 280

9.2.2 大地测量(圆形地球)模型 280

9.3 空间数据模型 281

9.4 用“熟知文本”定义空间 281

9.5 使用geometry 282

9.5.1 Parse方法 283

9.5.2 STIntersects方法 284

9.5.3 ToString方法 285

9.5.4 STIntersection方法 285

9.5.5 STDimension方法 286

9.6 使用geography 287

9.6.1 实例 287

9.6.2 STArea和STLength方法 290

9.6.3 空间引用标识符 290

9.6.4 扩建EventLibrary数据库 290

9.6.5 创建EventMedia客户端应用程序 292

9.6.6 STDistance方法 297

9.6.7 geography与Microsoft Virtual Earth集成 298

9.7 小结 305

第Ⅲ部分 实现技术 309

第10章 微软数据访问机 309

10.1 ADO.NET与类型化数据集 310

10.1.1 类型化数据集基础知识 310

10.1.2 TableAdapter对象 312

10.1.3 连接字符串管理 312

10.1.4 使用“TableAdapter配置向导” 313

10.1.5 有关查询与参数的更多内容 316

10.1.6 DBDirect方法及类型化数据集的联机使用 317

10.2 “纯粹的”ADO.NET:使用代码 317

10.3 LINQ:一种数据访问的新语法 321

10.3.1 LINQ to DataSet 322

10.3.2 分析LINQ语法 322

10.4 LINQ to SQL和ADO.NET实体框架:ORM加入.NET 324

10.4.1 为什么不坚持使用ADO.NET 324

10.4.2 构建L2S模型 325

10.4.3 实体框架:以ADO.NET的方法进行ORM 329

10.4.4 后台的XML 332

10.4.5 查询L2S和EF模型 333

10.4.6 添加自定义验证代码 335

10.5 数据Web服务:针对EF模型使用ADO.NET数据服务 337

10.5.1 创建服务 337

10.5.2 测试该服务 338

10.5.3 构建用户接口 339

10.6 作为托管服务的数据:SQL Server数据服务 340

10.7 小结:如此之多的工具,如此之少的时间 341

第11章 .NET数据绑定的许多方面 343

11.1 Windows窗体数据绑定:黄金标准 344

11.1.1 做好准备 344

11.1.2 生成UI 345

11.1.3 查看输出 346

11.1.4 转换为LINQ to SQL 347

11.1.5 转换为实体框架 348

11.1.6 转换为ADO.NET数据服务 349

11.2 用ASP.NET将数据绑定到Web 350

11.2.1 L2S和EF很简单 350

11.2.2 不再只是网格 351

11.2.3 使用标记进行数据绑定 352

11.2.4 使用AJAX进行简单数据访问 352

11.2.5 ASP.NET动态数据 356

11.3 用于Windows Presentation Foundation的数据绑定 358

11.3.1 设计时的困境 359

11.3.2 查看XAML 361

11.4 最后一幕:Silverlight 364

11.5 小结 365

第12章 事务 367

12.1 什么是事务 367

12.2 SQL Server 2008中的本地事务支持 370

12.2.1 自动提交事务模式 370

12.2.2 显式事务模式 370

12.2.3 隐式事务模式 372

12.2.4 批范围的事务模式 373

12.2.5 在ADO.NET中使用本地事务 374

12.3 事务术语 376

12.4 隔离级别 377

12.4.1 SQL Server 2008中的隔离级别 377

12.4.2 ADO.NET中的隔离级别 381

12.5 分布式事务 382

12.5.1 分布式事务术语 382

12.5.2 登记规则与方法 383

12.5.3 SQL Server 2008中的分布式事务 385

12.5.4 .NET Framework中的分布式事务 385

12.5.5 编写自己的资源管理器 389

12.5.6 在成功的事务中使用资源管理器 392

12.6 SQL CLR中的事务(CLR集成) 395

12.7 综合应用 399

12.8 小结 400

第13章 开发偶尔连接的系统 401

13.1 对比同步服务与合并复制 402

13.2 偶尔连接系统的组件 402

13.3 合并复制 403

13.3.1 熟悉合并复制 403

13.3.2 用合并复制创建偶尔连接的应用程序 404

13.3.3 配置合并复制 407

13.3.4 使用Microsoft Visual Studio 2008创建移动应用程序 423

13.4 Sync Services for ADO.NET 433

13.4.1 Sync Services对象模型 434

13.4.2 获取用于同步的更改 437

13.4.3 使用Sync Services创建应用程序 441

13.4.4 其他考虑事项 452

13.5 小结&. 455

第Ⅳ部分 商业智能 459

第14章 数据仓库 459

14.1 数据仓库定义 459

14.2 数据仓库的重要性 459

14.3 没有数据仓库之前的状况 461

14.3.1 企业范围内的集成不足 461

14.3.2 缺乏或没有标准化参考数据 462

14.3.3 缺乏历史 463

14.3.4 没有针对分析优化数据 463

14.3.5 结果 464

14.4 数据仓库设计 464

14.4.1 Inmon的自顶而下方法 465

14.4.2 Kimball的自下而上方法 467

14.5 鉴别数据仓库和其他术语 472

14.5.1 OLAP 472

14.5.2 数据挖掘 473

14.5.3 商业智能 473

14.5.4 仪表板和计分卡 474

14.5.5 绩效管理 475

14.6 关于数据仓库的实用建议 476

14.6.1 鼓励和奖励操作过程变更 476

14.6.2 鼓励放弃控制 476

14.6.3 原型也许不能证明可行性 477

14.6.4 代理键问题 477

14.6.5 货币转换问题 478

14.6.6 事件与快照的对比 478

14.7 SQL Server 2008与数据仓库 479

14.7.1 T-SQL MERGE语句 479

14.7.2 更改数据捕获 481

14.7.3 分区表并行 488

14.7.4 星形联接查询优化 490

14.7.5 SPARSE列 491

14.7.6 数据压缩与备份压缩 492

14.7.7 学习更多内容 495

14.8 小结 496

第15章 基本OLAP 497

15.1 为什么使用BI 497

15.2 OLAP入门 498

15.2.1 OLAP词汇 499

15.2.2 维度、轴、星形架构和雪花形架构 500

15.3 构建第一个多维数据集 501

15.3.1 准备星形架构对象 502

15.3.2 一个“名不符实”的工具 502

15.3.3 创建项目 503

15.3.4 添加数据源视图 505

15.3.5 用多维数据集向导创建多维数据集 508

15.3.6 使用多维数据集设计器 509

15.3.7 使用维度向导 512

15.3.8 使用维度设计器 514

15.3.9 使用“属性”窗口和解决方案资源管理器 515

15.3.10 处理多维数据集 516

15.4 执行查询 517

15.5 小结 518

第16章 高级OLAP 519

16.1 概述 519

16.1.1 上下文中MDX 520

16.1.2 忠告 520

16.2 高级维度和度量值 521

16.2.1 键和名称 521

16.2.2 更改All成员 523

16.2.3 向数据源视图添加命名查询 523

16.2.4 父子关系维度 525

16.2.5 成员分组 528

16.2.6 用户表时间维度、属性关系、最佳实践警报和维度/属性输入 529

16.3 服务器时间维度 535

16.3.1 事实维度 537

16.3.2 角色扮演维度 539

16.3.3 高级度量值 539

16.4 计算 541

16.4.1 计算成员 541

16.4.2 命名集 546

16.4.3 关于脚本视图的更多内容 546

16.5 关键性能指标 549

16.5.1 KPI可视化:状态和走向 549

16.5.2 一个具体KPI 550

16.5.3 在浏览器视图中测试KPI 552

16.5.4 Management Studio中的KPI查询 553

16.5.5 Management Studio中的其他BI技巧 557

16.6 操作 558

16.6.1 简单定义的操作 558

16.6.2 设计操作 559

16.6.3 测试操作 560

16.7 分区、存储设置和主动缓存 561

16.7.1 编辑和创建分区 562

16.7.2 分区存储选项 563

16.7.3 主动缓存 564

16.7.4 附加功能和提示 566

16.8 聚合 566

16.8.1 算法聚合设计 567

16.8.2 基于使用情况的聚合设计 568

16.8.3 人工聚合设计(与修改) 568

16.8.4 聚合设计管理 569

16.8.5 聚合设计与Management Studio 570

16.9 透视 570

16.10 翻译 572

16.11 角色 576

16.12 小结 579

第17章 OLAP查询、工具和应用程序开发 581

17.1 使用Excel 582

17.1.1 连接到Analysis Services 583

17.1.2 构建数据透视表 586

17.1.3 查看数据透视表数据 587

17.1.4 计分卡 589

17.1.5 创建和配置图表 591

17.1.6 多维数据集的公式内查询 593

17.1.7 Visual Studio Tools for Office和Excel外接程序 597

17.1.8 Excel Services 598

17.2 超越Excel:用.NET进行自定义OLAP开发 602

17.2.1 MDX和Analysis Services API 603

17.2.2 MDX 603

17.2.3 作为MDX客户端的Management Studio 604

17.2.4 用ADO MD.NET开发OLAP 614

17.2.5 使用分析管理对象(AMO) 623

17.2.6 (Analysis)Services的XMLA 624

17.2.7 Analysis Services CLR支持:服务器端ADO MD.NET 633

17.3 小结 641

第18章 用数据挖掘扩展商业智能 643

18.1 为什么要挖掘数据 643

18.2 SQL Server 2008数据挖掘改进 646

18.3 入门 646

18.3.1 准备源数据 647

18.3.2 创建一个Analysis Services项目 648

18.4 使用数据挖掘向导和数据挖掘结构设计器 650

18.4.1 创建挖掘结构 651

18.4.2 创建挖掘模型 652

18.4.3 编辑和添加挖掘模型 656

18.4.4 部署和处理数据挖掘对象 660

18.4.5 查看挖掘模型 661

18.4.6 验证和对比挖掘模型 669

18.4.7 嵌套表 671

18.5 使用数据挖掘扩展 676

18.5.1 使用DMX建立数据挖掘模型 676

18.5.2 使用DMX进行数据挖掘预测 685

18.5.3 DMX模板 691

18.6 数据挖掘应用 692

18.6.1 数据挖掘与API编程 693

18.6.2 使用Windows Forms模型内容浏览器控件 693

18.6.3 用ADO MD.NET执行预测查询 695

18.6.4 模型内容查询 696

18.6.5 ADO MD.NET和ASP.NET 696

18.6.6 使用数据挖掘Web控件 697

18.6.7 开发托管存储过程 698

18.6.8 XMLA和数据挖掘 699

18.6.9 用于Excel 2007数据挖掘外接程序 701

18.7 小结 709

第19章 Reporting Services 711

19.1 使用报表设计器 712

19.1.1 创建基本报表 714

19.1.2 应用报表格式设置 717

19.1.3 添加报表组 720

19.1.4 使用参数 721

19.1.5 编写自定义报表代码 725

19.1.6 创建OLAP报表 728

19.1.7 创建带有矩阵数据区域的报表 732

19.1.8 Tablix 735

19.1.9 添加图表数据区域 739

19.1.10 使报表能够交互 740

19.2 传递报表 742

19.2.1 部署到报表服务器 742

19.2.2 以编程方式访问报表 749

19.3 管理Reporting Services 757

19.3.1 使用Reporting Services配置管理器 757

19.3.2 使用报表管理器和Management Studio 759

19.3.3 与SharePoint集成 766

19.4 小结 768