图书目录

目    录

第1章  欢迎使用SQL Server集成

服务 1

1.1  SQL Server 2005 SSIS中的新特性 1

1.1.1  导入和导出向导 2

1.1.2  商业智能开发工具集 2

1.2  体系结构 3

1.2.1  程序包 5

1.2.2  任务 5

1.2.3  数据源元素 6

1.2.4  数据源视图 7

1.3  优先约束 8

1.3.1  约束值 8

1.3.2  条件表达式 8

1.4  容器 9

1.5  变量 10

1.6  数据流元素 10

1.6.1  源 10

1.6.2  目的地 11

1.6.3  转换 12

1.7  错误处理和日志记录 13

1.8  SQL Server 2005的版本 14

1.9  小结 16

第2章  SSIS工具 17

2.1  Import and Export Wizard 17

使用Import and Export Wizard 17

2.2  Package Installation Wizard 21

2.3  Business Intelligence Development

Studio 21

2.4  创建自己的第一个程序包 23

2.5  Solution Explorer Window 24

2.5.1  Toolbox 25

2.5.2  Properties Windows 26

2.5.3  Navigation Pane 26

2.5.4  其他窗口 27

2.6  SSIS Package Designer 27

2.6.1  Controller Flow 28

2.6.2  Connection Manager 30

2.6.3  变量 31

2.6.4  数据流 32

2.6.5  Event Handler 33

2.6.6  Package Explorer 34

2.6.7  执行程序包 34

2.7  小结 35

第3章  SSIS任务 36

3.1  共享属性 36

3.2  Execute SQL 任务 37

3.3  Bulk Insert任务 38

3.4  使用Bulk Insert和Execute SQL

任务 41

3.5  Data Flow任务 43

3.6  Execute Process任务 43

3.7  File System任务 44

3.8  FTP任务 45

3.9  使用File System和FTP任务 46

3.10  Execute Package任务 48

3.11  Script和ActiveX任务 49

3.12  Send Mail任务 51

3.13  Message Queue任务 52

3.14  Web Service任务 52

3.15  WMI Data Reader任务和Event 

Watcher任务 54

3.16  XML任务 56

3.17  SQL Server Analysis Services Execute 

DDL和Processing任务 57

3.18  Data Mining Query任务 58

3.19  Expression页面 59

3.20  小结 60

第4章  容器和数据流 61

4.1  容器 61

4.1.1  Task Host容器 61

4.1.2  Sequence容器 61

4.1.3  For Loop容器 62

4.1.4  Foreach Loop 容器 65

4.2  源 67

4.2.1  OLE DB源 67

4.2.2  Excel源 68

4.2.3  Flat File源 68

4.2.4  Raw File源 69

4.2.5  XML源 69

4.2.6  Data Reader源 69

4.3  目的地 69

4.3.1  Data Mining Model Training

目的地 70

4.3.2  DataReader目的地 71

4.3.3  Dimension Processing和

Partition Processing目的地 72

4.3.4  Excel目的地 72

4.3.5  Flat File目的地 73

4.3.6  OLE DB目的地 73

4.3.7  Raw File目的地 74

4.3.8  Recordset目的地 74

4.3.9  SQL Server和SQL Server 

Mobile目的地 74

4.4  转换 74

4.4.1  Aggregate转换 75

4.4.2  Audit转换 77

4.4.3  Character Map转换 77

4.4.4  Conditional Split转换 78

4.4.5  Copy Column转换 80

4.4.6  Data Conversion转换 80

4.4.7  Data Mining Query转换 81

4.4.8  Derived Column转换 81

4.4.9  Export Column转换 81

4.4.10  Fuzzy Grouping和Fuzzy 

Lookup转换 82

4.4.11  Import Column 83

4.4.12  Lookup转换 83

4.4.13  Merge转换 84

4.4.14  Merge Join转换 85

4.4.15  Multicast转换 86

4.4.16  OLE DB Command转换 86

4.4.17  Percentage and Row Sampling

转换 86

4.4.18  Pivot和Unpivot转换 87

4.4.19  Row Count转换 87

4.4.20  Script Component转换 88

4.4.21  Slowly Changing Dimension

转换 88

4.4.22  Sort转换 88

4.4.23  Term Extraction和Lookup

转换 89

4.4.24  Union All转换 89

4.5  Data Flow示例 90

4.6  Data Viewer 93

4.7  小结 94

第5章  创建端到端的程序包 95

5.1  基础转换教程 95

5.1.1  创建连接 95

5.1.2  创建任务 98

5.1.3  创建数据流 98

5.1.4  完成程序包 99

5.1.5  保存程序包 99

5.1.6  执行程序包 99

5.2  具有数据清理功能的典型大

型机ETL 100

5.2.1  创建数据流 103

5.2.2  处理不正确数据 103

5.2.3  最终完成 106

5.2.4  处理更错误的数据 107

5.3  使任务循环并动态执行 110

5.3.1  循环 110

5.3.2  使程序包动态执行 111

5.4  小结 113

第6章  高级任务和转换 114

6.1  Execute SQL任务 114

6.1.1  变量 116

6.1.2  表达式 117

6.1.3  使用SQL 输出参数来修改

运行时设置 118

6.2  Import Column转换 121

6.2.1  Import Column示例 121

6.2.2  使用文件迭代的Import

Column示例 125

6.3  在SSIS程序包开发过程中使用

Temp Tables任务 127

6.4  Export Column转换 128

6.5  Row Count转换 130

6.6  OLE DB Command转换 131

6.7  Term Extraction转换 134

6.8  Term Lookup转换 139

6.9  Fuzzy Lookup转换 140

6.10  Fuzzy Grouping转换 145

6.11  Pivot转换 148

6.12  Unpivot转换 152

6.13  Slowly Changing Dimention转换 155

6.14  数据库对象级的任务 164

6.14.1  Transfer Database任务 164

6.14.2  Transfer Login任务 165

6.14.3  Transfer Master Stored 

Procedures任务 166

6.14.4  Transfer SQL Server Objects

任务 166

6.15  小结 168

第7章  在SSIS中进行脚本编程 169

7.1  脚本编程概述 169

7.2  表达式 170

7.2.1  动态属性 170

7.2.2  任务中的表达式 172

7.3  Script任务 174

7.3.1  Dts对象 177

7.3.2  访问变量 178

7.3.3  事件 179

7.3.4  日志记录 181

7.3.5  Script任务调试 181

7.4  使用.NET程序集 183

7.5  结构化异常处理 184

7.6  Script Component 186

7.6.1  使用Script Component 186

7.6.2  调试Script Component 191

7.7  小结 192

第8章  访问异类数据 193

8.1  Excel 193

8.1.1  导出到Excel 194

8.1.2  从Excel导入 197

8.2  Access 201

8.2.1  了解Access安全性 202

8.2.2  配置Access Connection 

Manager 203

8.2.3  从Access导入 204

8.2.4  使用参数 206

8.3  Oracle 209

8.3.1  客户端设置 209

8.3.2  导入Oracle数据 210

8.4  Web Service 211

8.4.1  Hyperlink Extractor服务 212

8.4.2  Currency Conversion服务 214

8.5  XML数据 219

8.6  小结 224

第9章  可靠性和可伸缩性 225

9.1  重启动程序包 225

9.1.1  简单控制流 226

9.1.2  容器中的容器和断点 230

9.1.3  各种不同的情况 231

9.1.4  断点文件探密 234

9.2  程序包事务 235

9.2.1  单个程序包,单个事务 236

9.2.2  单个程序包,多个事务 238

9.2.3  两个程序包,一个事务 240

9.2.4  使用SQL Server中本原事务

的单个程序包 241

9.3  错误输出 243

9.4  规模扩展 245

9.4.1  规模扩展内存压力 245

9.4.2  通过暂存数据进行规模

扩展 246

9.5  小结 250

第10章  了解集成服务引擎 251

10.1  集成服务引擎:一个类比 251

10.2  了解SSIS Data Flow和

Control Flow 252

10.2.1  Data Flow和Control Flow

对比 252

10.2.2  SSIS程序包从启动到结束

的执行时间 254

10.3  使用Control Flow的企业工作流 254

10.4  使用Data Flow的企业数据处理 255

10.4.1  内存缓存体系结构 256

10.4.2  转换类型 257

10.4.3  高级的Data Flow执行

概念 266

10.5  小结 274

第11章  应用集成服务引擎 275

11.1  过去的DTS 275

11.1.1  DTS解决方案体系结构 276

11.1.2  一般的DTS处理方法 277

11.1.3  DTS的局限性 278

11.2  现在的Integration Service 280

11.2.1  Integration Service设计

实践 280

11.2.2  优化程序包处理 294

11.3  管线性能监视 298

11.4  小结 301

第12章  DTS 2000移植和元数据

管理 302

12.1  将DTS 2000程序包移植到SSIS 302

12.2  使用Package Migration Wizard 304

12.3  在SSIS下运行DTS 2000程序包 307

12.4  数据包元数据以及存储管理 309

12.4.1  在SQL Server Management 

Studio中管理SSIS程

序包 311

12.4.2  在SQL Server Management 

Studio中管理DTS 2000程

序包 313

12.5  小结 314

第13章  错误和事件处理 315

13.1  优先约束 315

13.1.1  优先约束和表达式 317

13.1.2  多个优先约束 320

13.2  事件处理 321

13.2.1  事件 322

13.2.2  Inventory示例 323

13.2.3  事件冒泡 330

13.3  断点 332

13.4  Checkpoint 335

13.5  日志记录 336

13.6  小结 339

第14章  对SSIS进行编程和扩展 340

14.1  示例组件 340

14.1.1  组件1:源适配器 340

14.1.2  组件2:转换 341

14.1.3  组件3:目的地适配器 341

14.2  管线组件方法 342

14.2.1  设计时方法 342

14.2.2  运行时方法 346

14.2.3  连接时方法 348

14.3  创建组件 348

14.3.1  准备 349

14.3.2  创建源适配器 355

14.3.3  创建转换 366

14.3.4  创建目的地适配器 378

14.4  调试组件 386

14.4.1  设计时调试 387

14.4.2  运行时调试 388

14.5  小结 391

第15章  在组件中添加用户界面 392

15.1  三个关键步骤 392

15.2  创建用户界面 393

15.2.1  添加项目 393

15.2.2  实现IDtsComponentUI 396

15.2.3  设置UITypeName 399

15.2.4  创建窗体 401

15.3  进一步的开发 406

15.3.1  运行时连接 406

15.3.2  组件属性 409

15.3.3  处理错误和警告 410

15.3.4  列属性 413

15.4  小结 414

第16章  外部管理和WMI任务实现 415

16.1  使用托管代码的外部管理 415

16.2  Application对象维护操作 416

16.2.1  程序包维护操作 416

16.2.2  服务器文件夹维护 417

16.2.3  程序包角色维护 418

16.2.4  程序包监视 419

16.2.5  程序包管理示例 420

16.3  程序包日志提供程序 429

16.3.1  指定要记录的事件 430

16.3.2  对日志提供程序进行编程 431

16.4  程序包配置 433

16.4.1  创建配置 434

16.4.2  对Configuration对象进行

编程 435

16.4.3  Configuration对象 436

16.5  WMI任务 436

16.5.1  WMI Data Reader任务

解释 437

16.5.2  WMI Event Watcher

任务 438

16.5.3  WMI Data Reader任务

示例 439

16.5.4  WMI Event Watcher任务

示例 444

16.6  小结 445

第17章  通过外部应用程序

使用SSIS 446

17.1  从RSS输入,从Reporting Services

报表输出 446

17.2  InfoPath 文档 452

17.3  ASP.NET应用程序 459

17.4  小结 463

第18章  SSIS软件开发生命周期 465

18.1  软件开发生命周期介绍 466

18.1.1  软件开发生命周期历史

简介 466

18.1.2  软件开发生命周期的

类型 466

18.2  版本和源代码管理 468

18.2.1  Microsoft Visual

SourceSafe 468

18.2.2  Team Foundation Server、

Team System和SSIS 480

18.2.3  MSF Agile和SSIS 484

18.2.4  Project Portal 486

18.2.5  综合应用 487

18.3  代码部署和从开发到测试,再到

投入生产的升级过程 498

18.3.1  Deployment向导 499

18.3.2  导入程序包 500

18.4  小结 501

第19章  案例研究:一个编程示例 502

19.1  背景 502

19.2  业务问题 503

19.3  解决方案概述 503

19.4  解决方案体系结构 504

19.5  数据体系结构 507

19.5.1  文件保存位置设置 508

19.5.2  银行ACH付费 508

19.5.3  Lockbox文件 509

19.5.4  PayPal或直接存款到企业

账户 510

19.5.5  案例研究数据库模型 510

19.5.6  数据库创建 511

19.6  CaseStudy_Load程序包 520

19.6.1  命名约定和提示 520

19.6.2  程序包创建和File System

任务 521

19.6.3  Lockbox Control Flow

处理 525

19.6.4  Lockbox文件验证 531

19.6.5  Lockbox处理 538

19.6.6  ACH Control Flow处理 542

19.6.7  ACH 文件验证 545

19.6.8  ACH处理 550

19.6.9  电子邮件付款处理 552

19.6.10  电子邮件Data Flow

处理 554

19.6.11  测试 557

19.7  CaseStudy_Process程序包 557

19.7.1  程序包创建 558

19.7.2  高可信度Data Flow 560

19.7.3  中等可信度Data Flow 564

19.7.4  解释结果 567

19.8  在SQL Agent中运行 569

19.9  小结 570

XXII

SQL Server 2005集成服务高级编程

XXI

目  录