.NET Framework 2.0中的数据访问新特性

1. 异步数据访问

 • 支持异步数据编程
 • SqlConnection
  – BeginOpen
  – EndOpen
 • SqlCommand
  – BeginExecuteNonQuery
  – BeginExecuteReader
  – BeginExecuteXmlReader
  – EndExecuteNonQuery
  – EndExecuteReader
  – EndExecuteXmlReader

2. 多活动结果集(MARS)

 • 在 SQL Server 2005 中支持多活动结果集
 • 允许在单个连接上执行多个批处理
 • 启用MARS
  – string connectionString = "Data
  Source=MSSQL1;" + "Initial
  Catalog=AdventureWorks;Integrated Security=SSPI" +"MultipleActiveResultSets=True";

3. 批量复制操作

 • Microsoft SQL Server 包含名为 bcp 的常用命令行应用程序,用于快速将大文件批量复制到SQL Server 数据库的表或视图中。
 • 使用 SqlBulkCopy 类可以编写提供类似功能的托管代码解决方案。
 • 还可以通过其他方式将数据加载到SQLServer 表中(例如 INSERT 语句),但是SqlBulkCopy 提供的性能要明显优于这些方式。

4. 批处理更新

 • 在上一个版本的 ADO.NET 当中,SqlDataAdapter 的Update 方法将会为DataSet 当中的每一行调用一次更新操作。
 • 在ADO.NET 2.0 中,您可以设置UpdateBatchSize 属性,在单步中执行多个更新。
 • 这样,可以提高数据更新的效率。
 • UpdateBatchSize 的默认值为 1,使得默认的更新行为与以前版本的ADO.NET 一致。

5. 通知

 • SQL Server 2005 中的查询通知可以在数据修改时通知客户端应用程序。
 • ADO.NET 提供两种方式来利用查询通知功能:
  – 使用SqlDependency 类,并处理OnChanged事件
  – 使用SqlNotifcationRequest 类,使用它可以用来访问自定义通知队列

6. 快照隔离级别

 • SQL Server 2005 提供了快照隔离级别,用户可以访问行中上一个已提交的版本
 • ADO.NET SqlTransaction 类技术一个新的IsolationLevel.Snapshot 枚举值,使得ADO.NET 客户端应用程序可以利用快照隔离级别

7. 支持SQL Server 2005 的数据类型

 • Varchar(max)
 • Nvarchar(max)
 • Varbinary(max)
 • XML

8. 支持镜像

 • 服务器角色
  –主服务器
 • 存储主数据库的服务器
 • 用户连接到服务器
  – 镜像服务器
 • 存储镜像数据库的服务器
 • 在主服务器出现故障后,用户连接到该服务器
  –见证服务器
 • 在主服务器与镜像服务器之间它们的监视连通性

9. 配置客户端应用程序

 • 必须使用.NET Framework 2.0进行开发
 • 连接字符串:
  – 只需要添加“failover partner”参数
  –例如:
  – "server=Partner_A; failover partner=Partner_B;
  database=AdventureWorks"

posted @ 2017-09-02 22:26  tiger_yj  阅读(276)  评论(0编辑  收藏  举报