《ADO.NET 2.0高级程序设计 Pro ADO.NET 2.0》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:(美)Sahil Malik著;汤涛,邰晓翠译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2007
  • ISBN:7115158681
  • 页数:453 页
图书介绍:本书主要内容包括标明ADO.NET在.NET中的位置,以及其各种主要的代码块;识别ADO.NET的主要特征;创建四个更复杂一些的数据驱动应用程序。

第1章 ADO.NET概述 1

1.1 什么是ADO.NET 2

1.2 ADO的不足之处 2

1.3 ADO.NET中的重要对象 3

1.3.1 连接对象 3

1.3.2 非连接对象 4

1.4 .NET数据提供程序 6

1.4.1 使用ProviderBase模型 8

1.4.2 第三方.NET数据提供程序 11

1.5 System.Data.Design命名空间 12

1.6 小结 12

第2章 ADO.NET对象模型 13

2.1 本章可用作参考 13

2.2 ADO.NET鸟瞰 14

2.3 建立连接:DbConnection 14

2.4 执行命令:DbCommand和DbTransaction 16

2.5 保存非连接数据:DataSet 19

2.6 获取数据:DataReader和DataAdapter 21

2.6.1 基于连接的方式获取数据:DbDataReader 21

2.6.2 连接部分和非连接部分之间的桥梁:DbDataAdapter 22

2.7 ADO.NET中的异常 23

2.8 小结 27

第3章 ADO.NET Hello World程序 28

3.1 构建Hello World程序的数据源 28

3.2 创建数据驱动的应用程序:拖放的方法 29

3.2.1 ASP.NET 2.0中的拖放 29

3.2.2 Windows窗口应用程序中的拖放 35

3.3 混合方法:写一些代码,用一些拖放 39

3.4 数据驱动的应用程序:自己编写代码的方法 42

3.5 小结 45

第4章 连接到数据源 46

4.1 连接的能力 46

4.1.1 创建连接对象 47

4.1.2 生成提供程序特定的连接串 50

4.1.3 编写连接串的简便方法 52

4.1.4 增强连接串的安全性 54

4.2 公共行为:IDbConnection 57

4.3 公共逻辑:DbConnection 59

4.4 高要求的应用程序 59

4.5 连接池 60

4.5.1 工作原理 62

4.5.2 确定合适的池大小 63

4.5.3 崩溃的连接池 64

4.6 关闭连接:良好的应用程序设计 64

4.7 小结 65

第5章 在连接模式下获取数据 66

5.1 与数据源的通信 66

5.2 获取单个值 67

5.2.1 要用哪个数据库执行命令 67

5.2.2 要执行什么 69

5.2.3 执行命令以获取结果 70

5.3 获取结果集 71

5.4 为存储而查询结果集 76

5.5 异步查询大结果集 78

5.6 从数据库查询多个结果集 82

5.7 面向对象与关系表示 85

5.7.1 在数据库中存储对象 85

5.7.2 使用SQL查询UDT数据 90

5.7.3 以连接模式获取UDT数据 91

5.7.4 实际使用UDT 92

5.8 小结 92

第6章 DataSet 93

6.1 非连接模型的案例 93

6.2 DataSet对象模型 95

6.2.1 DataTable 96

6.2.2 DataColumn 97

6.2.3 DataRow 98

6.2.4 Constraint 99

6.2.5 设置主键:PrimaryKey属性 100

6.2.6 动态构建DataTable 100

6.2.7 DataTable的事件 103

6.2.8 DataTable事件的实际用法 104

6.3 关系数据 108

6.4 把所有内容放到一起 111

6.5 作为数据传输对象的DataSet 117

6.6 强类型DataSet:概述 122

6.6.1 XSD概要 123

6.6.2 DataSet架构 131

6.6.3 构建强类型DataSet 139

6.6.4 类型化DataSet的性能 147

6.6.5 注释类型化DataSet 147

6.7 小结 153

第7章 获取数据:DataAdapter 154

7.1 什么是DataAdaper 154

7.2 使用DataAdapter 156

7.2.1 构建数据源 156

7.2.2 查询数据表:指向并且点击 157

7.2.3 查询数据表:编写代码 160

7.2.4 填充DataSet:不止一个数据表 164

7.2.5 查询数据库架构 169

7.3 映射 175

7.3.1 使用SQL的AS关键字 175

7.3.2 ADO.NET的映射机制 177

7.4 小结 182

第8章 排序、获取和过滤 183

8.1 构建数据源 184

8.2 处理DataTable 185

8.2.1 查找行 186

8.2.2 选定多行记录 188

8.2.3 表达式:动态计算列 190

8.2.4 执行聚合计算 193

8.3 使用DataRelation对象 195

8.4 使用DataView对象 199

8.5 XML与非连接数据的交互 206

8.6 小结 209

第9章 更新数据 210

9.1 更新数据表:简单拖放方法 211

9.2 使用命令构建器对象 224

9.3 DataRow中的状态管理以及在更新数据时状态管理的使用 227

9.4 移动大量的数据:SqlBulkCopy 236

9.5 编辑非连接数据 238

9.5.1 添加新行 238

9.5.2 修改现存行记录 239

9.5.3 删除现存行记录 240

9.6 实际的例子 242

9.7 优化应用程序:GetChanges和Merge 252

9.7.1 合并情况1:相同表结构,无主键 258

9.7.2 合并情况2:相同表结构,有主键 259

9.7.3 合并情况3:公共列,无主键 261

9.7.4 合并情况4:公共列,有主键 262

9.7.5 合并情况5:完全不同的表结构 263

9.7.6 合并具有不同架构的两个DataSet/DataTable 265

9.8 使用映射名称更新记录 266

9.9 小结 273

第10章 更新数据:高级进阶 275

10.1 冲突检测和并发解决 276

10.1.1 预防冲突:交通信号灯 276

10.1.2 处理冲突:事故发生后再抢救 277

10.2 实现并发:实践所关心的内容 284

10.2.1 Null值 284

10.2.2 所影响的行数和触发器 285

10.2.3 更新多行记录 285

10.3 处理层次结构数据 286

10.3.1 插入层次结构的数据 289

10.3.2 更新层次化数据 297

10.3.3 删除层次化数据 297

10.3.4 所有的操作集中到一起:保存层次化数据 298

10.3.5 代码不能用 301

10.4 层次化更新:结论 302

10.5 小结 302

第11章 事务 304

11.1 什么是事务 305

11.1.1 ACID属性 305

11.1.2 数据库事务 306

11.1.3 事务词汇表 307

11.2 ADO.NET的事务支持 307

11.3 编写事务性数据库应用程序 310

11.3.1 实现事务 311

11.3.2 考察隔离级别的效果 317

11.3.3 MARS 324

11.3.4 MARS和事务 327

11.4 单数据库的高级技术 331

11.4.1 保存点 331

11.4.2 嵌套事务 334

11.4.3 与DataSet和DataAdapter一起使用事务 334

11.5 分布式事务 337

11.5.1 分布式事务中的关键方:RM和DTC 337

11.5.2 两阶段提交 338

11.5.3 实现分布式事务:NET 1.1的方法 338

11.5.4 实现分布式事务:NET 2.0的方法 342

11.5.5 可提升登记:简单基础 345

11.5.6 System.Transactions:手动登记和多线程环境 347

11.6 明智地使用事务 351

11.6.1 事务和性能 352

11.6.2 事务的默认行为 352

11.6.3 事务和用户确认 352

11.6.4 同时发生的ADO.NET和RDBMS事务 353

11.7 小结 353

第12章 XML和ADO.NET 354

12.1 SQL Server本机XML支持 354

12.2 FOR XML 355

12.2.1 FOR XML查询:概要 356

12.2.2 FOR XML的可选参数 359

12.2.3 FOR XML RAW 360

12.2.4 FOR XML AUTO 360

12.2.5 FOR XML EXPLICIT 362

12.2.6 SQL Server 2005和FOR XML PATH 371

12.2.7 在ADO.NET中使用FOR XML查询 373

12.3 OPENXML 376

12.4 SQL Server 2005独有的XML数据类型 381

12.5 利用SQL Server的XML功能:SQLXML 384

12.5.1 SQLXML和ADO.NET 384

12.5.2 SQLXML对象模型 385

12.6 小结 396

第13章 SQL Server中的CLR 397

13.1 SQLCLR的正确使用 398

13.2 运行本章例子所需软件 400

13.3 手动编写UDF 401

13.4 SQL Server项目的UDF 403

13.5 调试SQLCLR代码 406

13.6 编写TVF:表值函数 408

13.7 创建聚合函数 419

13.8 编写SQLCLR存储过程 425

13.8.1 上下文连接 425

13.8.2 SQLCLR中的SqlTransaction 434

13.9 在SQLCLR触发器中使用事务 435

13.10 在SQLCLR内使用非上下文连接 437

13.11 小结 440

第14章 ADO.NET最佳实践 441

14.1 了解你的系统需求 441

14.2 为正确的工作选择正确的工具 442

14.2.1 DataReader或DataSet/DataAdapter 443

14.2.2 保持连接打开:连接池 444

14.2.3 DataSet或强类型DataSet 444

14.2.4 强类型或非强类型?DataSet与业务对象 445

14.2.5 T-SQL与SQLCLR以及扩展存储过程(XP) 447

14.2.6 事务,到处是事务:选择哪种事务 448

14.3 重要规则 449

14.3.1 实现数据层 449

14.3.2 关闭连接 449

14.3.3 网络延迟 451

14.3.4 复杂的层次化DataSet 451

14.3.5 缓存数据 452

14.4 小结 453