第1章 开发环境 1
1.1 SQL Server Management Studio 2
1.1.1 SQL Server Management Studio用户界面 3
1.1.2 SQL Server Management Studio用户界面窗口 3
1.1.3 SQL Server 2005管理工具 11
1.2 BI Development Studio 12
1.2.1 BI Development Studio用户界面 13
1.2.2 BI Development Studio用户界面窗口 13
1.3 小结 17
第2章 使用T-SQL开发 19
2.1 T-SQL开发工具 19
2.1.1 SQL Server Management Studio 20
2.1.2 Visual Studio 2005 24
2.2 使用T-SQL DDL创建数据库对象 31
2.2.1 数据库 31
2.2.2 表 32
2.2.3 视图 36
2.2.4 同名对象 36
2.2.5 存储过程 36
2.2.6 函数 38
2.2.7 触发器 39
2.2.8 安全性 40
2.2.9 搜索存储器 42
2.3 使用T-SQL DML进行查询和更新 43
2.3.1 选择和连接 43
2.3.2 修改数据 57
2.3.3 错误处理 65
2.4 小结 65
第3章 开发CLR数据库对象 67
3.1 了解CLR和SQL Server 2005数据库引擎 67
3.1.1 CLR体系结构 68
3.1.3 CLR数据库对象组件 69
3.1.2 启用CLR支持 69
3.2 创建CLR数据库对象 72
3.2.1 CLR存储过程 72
3.2.2 用户自定义函数 77
3.2.3 触发器 81
3.2.4 用户自定义类型 84
3.2.5 聚集 90
3.3 调试CLR数据库对象 94
3.3.1 .NET数据库对象的安全 97
3.3.2 管理CLR数据库对象 98
3.4 小结 99
第4章 SQL Server Service Broker 101
4.1 SQL Server Service Broker体系结构 102
4.1.3 合同 103
4.1.5 对话 103
4.1.4 服务 103
4.1.2 队列 103
4.1.1 消息 103
4.2 开发SQL Service Broker应用程序 104
4.2.1 SQL Server Service Broker DDL和DML 105
4.2.2 T-SQL DDL 105
4.2.3 T-SQL DML 105
4.2.4 启用SQL Server Broker 106
4.2.5 运用队列 106
4.2.6 SQL Server Service Broker应用程序示例 107
4.3 SQL Server Service Broker激活 112
4.4 对话安全 113
4.5 系统视图 113
4.6 小结 114
第5章 使用Notification Services开发 115
5.1 Notification Services概述 116
5.1.1 事件 116
5.1.3 通知 117
5.1.2 订阅 117
5.2 开发Notification Services应用程序 118
5.2.1 定义应用程序 118
5.2.2 编译应用程序 118
5.2.3 创建通知订阅管理应用程序 119
5.2.4 添加自定义组件 119
5.3 Notification Services应用程序示例 119
5.3.1 创建ICF文件 119
5.3.2 定义ADF文件 122
5.3.3 创建Notification Services应用程序 129
5.4 更新Notification Services应用程序 133
5.5 创建.NET订阅/事件应用程序 134
5.5.1 列出订阅 135
5.5.2 添加订阅 136
5.5.3 删除订阅 138
5.5.4 使用.NET激活数据事件 138
5.5.5 使用T-SQL激活数据事件 140
5.6 小结 141
第6章 使用ADO.NET开发数据库应用程序 143
6.1 ADO.NET体系结构 144
6.2 ADO.NET命名空间 145
6.3 .NET Data Provider 146
6.3.1 .NET Data Provider的命名空间 147
6.3.2 .NET Data Provider的核心类 148
6.4 ADO.NET的System.Data命名空间中的核心类 150
6.4.1 DataSet类 150
6.4.2 DataTable类 151
6.4.3 DataColumn类 151
6.4.4 DataRow类 152
6.4.5 DataView类 152
6.4.6 DataViewManager类 152
6.4.7 DataRelation类 152
6.4.11 DataException类 153
6.4.10 UniqueConstraint类 153
6.4.8 Constraint类 153
6.4.9 ForeignKeyConstraint类 153
6.5 使用.NET Framework Data Provider for SQL Server 154
6.6 使用SqlConnection对象 154
6.6.1 .NET Framework Data Provider for SQL Server连接字符串的关键字 156
6.6.2 打开可靠连接 157
6.6.3 使用连接池 158
6.7 使用SqlCommand对象 160
6.7.1 执行动态SQL语句 161
6.7.2 执行参数化的SQL语句 163
6.7.3 执行带返回值的存储过程 165
6.7.4 执行事务 167
6.8 使用SqlDependency对象 169
6.9 使用SqlDataReader对象 172
6.9.1 检索快速只向前的结果集 172
6.9.2 读取Schema-Only信息 175
6.9.3 异步支持 176
6.9.4 多活动结果集 177
6.9.5 检索BLOB数据 178
6.10 使用SqlDataAdapter对象 181
6.10.1 填充DataSet 181
6.10.2 使用CommandBuilder类 182
6.11 小结 185
第7章 使用XML开发 187
7.1 XML数据类型 188
7.2 XQuery支持 192
7.3 XML数据类型的方法 195
7.3.1 Exist(XQuery) 195
7.3.2 Modify(XML DML) 196
7.3.3 Query(XQuery) 197
7.4.1 主XML索引 198
7.4 XML索引 198
7.3.4 Value(XQuery,[node ref]) 198
7.4.2 从XML索引 199
7.5 使用For XML子句 199
7.5.1 For XML Raw 199
7.5.2 For XML Auto 200
7.5.3 For XML Explicit 200
7.5.4 Type Mode 202
7.5.5 For XML Path 202
7.5.6 嵌套的FOR XML查询 204
7.5.7 内嵌的XSD模式生成 204
7.6 OPENXML 206
7.7 XML批量载入 207
7.8 本地HTTP SOAP访问 208
7.8.1 创建SOAP端点 208
7.8.2 使用SOAP终端 211
7.9 小结 214
第8章 使用ADO开发数据库应用程序 215
8.1 OLE DB概述 216
8.2 OLE DB体系结构概述 216
8.3 ADO 218
8.4 OLE DB和ADO文件 219
8.5 ADO体系结构 219
8.6 向Visual Basic中添加ADO引用 221
8.7 在Visual Basic中使用ADO对象 223
8.7.1 连接到SQL Server 223
8.7.2 使用ADO Recordset检索数据 237
8.7.3 使用ADO Connection对象执行动态SQL 258
8.7.4 使用ADO修改数据 259
8.7.5 使用Command对象执行存储过程 266
8.7.6 错误处理 269
8.8 使用ADO的高级数据库功能 270
8.8.1 批处理更新 270
8.8.2 使用事务 271
8.9 小结 273
第9章 Reporting Services 275
9.1 Reporting Services的体系结构 276
9.1.1 Reporting Services组件 277
9.1.2 安装Reporting Serivces 278
9.2 Report Server 285
9.2.1 Report Server处理器 286
9.2.2 Report Server扩展 287
9.3 Report Manager 289
9.4 Reporting Services配置和管理工具 290
9.4.1 Reporting Services Configuration工具 290
9.4.2 Report Server命令提示工具 292
9.5 报表编制工具 295
9.5.1 Report Designer 296
9.5.2 Report Model Designer 300
9.5.3 Report Builder 303
9.6 编程能力 304
9.6.1 在Window Form中使用URL访问 305
9.6.2 使用SOAP集成Reporting Services 306
9.6.3 扩展 307
9.6.4 RDL 307
9.7 访问报表 307
9.7.1 使用URL访问 308
9.7.2 通过Form POST方法进行URL访问 308
9.8 报表编制 308
9.8.1 开发步骤 308
9.8.2 创建Reporting Services报表 309
9.8.3 部署Reporting Services报表 313
9.8.4 运行Reporting Services报表 313
9.9 小结 315
第10章 SQL Server Integration Services 317
10.1.1 Data Transformation Pipeline(DTP) 318
10.1 SQL Server Integration Services概述 318
10.1.2 Data Transformation Runtime(DTR) 319
10.2 创建包 320
10.2.1 使用SSIS Import and Export Wizard 320
10.2.2 使用SSIS Designer 321
10.2.3 使用断点 337
10.2.4 使用检查点 337
10.2.5 使用事务 339
10.2.6 包安全 339
10.3 部署包 340
10.3.1 创建配置 340
10.3.2 使用包部署实用程序 343
10.4 使用SQL Server Integration Services API编程 344
10.5 小结 352
第11章 使用ADOMD.NET开发BI应用程序 353
11.1.1 XML for Analysis 354
11.1 Analysis Services概述 354
11.1.2 Analysis Management Objects(AMO)概述 355
11.1.3 ADOMD.NET概述 355
11.1.4 AMO的层次结构 355
11.1.5 ADOMD.NET对象模型 356
11.2 使用ADOMD.NET构建BI应用程序 358
11.2.1 为ADOMD.NET添加引用 360
11.2.2 使用AdomdConnection对象 360
11.2.3 使用AdomdCommand对象 363
11.2.4 使用AdomdDataAdapter对象 370
11.2.5 使用CubeDef对象 371
11.3 小结 372
第12章 使用SMO开发 373
12.1 使用SMO 374
12.1.1 向Visual Studio中添加SMO对象 374
12.1.2 创建Server对象 375
12.1.3 使用SMO属性 376
12.1.4 SMO属性集合 378
12.2 SMO的层次结构 381
12.3 创建SMO示例应用程序 389
12.3.1 创建Server对象 391
12.3.2 列出已注册的SQL系统 391
12.3.3 连接到选定的SQL Server系统 391
12.3.4 列出数据库 393
12.3.5 列出表 393
12.3.6 列出列 395
12.3.7 检索列属性 396
12.3.8 创建数据库 397
12.3.9 复制表 398
12.3.10 显示表的T-SQL脚本 401
12.3.11 SMO错误处理 402
12.4 小结 403
13.1 sqlcmd组件 405
第13章 使用sqlcmd 405
13.1.1 命令shell 406
13.1.2 命令行参数 406
13.1.3 sqlcmd扩展命令 410
13.1.4 sqlcmd变量 411
13.2 开发sqlcmd脚本 412
13.2.1 使用Query Editor开发sqlcmd脚本 412
13.2.2 使用sqlcmd变量 413
13.2.3 使用sqlcmd脚本嵌套 414
13.2.4 使用sqlcmd变量和T-SQL语句 415
13.3 小结 415
附录A SQL Profiler 417
A.1 启动SQL Profiler 418
A.2 开始、暂停和停止跟踪 422
A.3 重放跟踪 422
A.4 Showplan事件 422