WEB开发网
开发学院数据库MSSQL Server 在SQL Server数据库编写通用数据访问方法 阅读

在SQL Server数据库编写通用数据访问方法

 2007-07-21 09:46:14 来源:WEB开发网   
核心提示: • 使用适当的锁定模型管理并发性,从我使用模块化设计方法的个人经验来看,在SQL Server数据库编写通用数据访问方法(3),整个应用程序中专用于处理特定数据源的代码量不会超过总量的 10%,显而易见,如果将检索、插入、更新和删除不同数据源(使用不同的数据提供程序)中的信息所需

• 使用适当的锁定模型管理并发性。

从我使用模块化设计方法的个人经验来看,整个应用程序中专用于处理特定数据源的代码量不会超过总量的 10%。显而易见,这比仅仅更改配置文件中的连接字符串更复杂,但我认为,这样做会获得性能收益,因此这是一个可接受的折衷办法。

使用基本接口

此处的目标是使用抽象,并将特定于特殊数据源的代码封装在类层中,从而使应用程序的其他部分独立于后端数据库服务器或免受其影响。

.NET Framework 的面向对象这一特性将在该过程中为我们提供帮助,使我们能够选择要使用的抽象级别。选项之一是使用每个 .NET 数据提供程序都必须实现的基本接口(IDbConnection、IDbCommand、IDataReader 等)。另一个选项是创建一组类(数据访问层),用于管理应用程序的所有数据访问逻辑(例如,使用 CRUD 范例)。为检查这两种可能性,我们首先从基于 Northwind 数据库的订单输入应用程序示例入手,然后插入和检索不同数据源中的信息。

数据提供程序基本接口标识应用程序与数据源进行交互通常所需的典型行为:

• 定义连接字符串。

• 打开和关闭与数据源的物理连接。

• 定义命令和相关参数。

• 执行可以创建的不同种类的命令。

• 返回一组数据。

• 返回标量值。

• 对数据执行操作但不返回任何内容。

• 对返回的数据集提供只向前型访问和只读型访问。

• 定义使数据集与数据源(数据适配器)的内容保持同步所需的一组操作。

但事实上,如果将检索、插入、更新和删除不同数据源(使用不同的数据提供程序)中的信息所需的各种操作封装在数据访问层中,并且只公开基本接口的成员,则可以实现第一级抽象-至少从数据提供程序的角度来看是这样。让我们看一看以下演示该设计思想的代码:

上一页  1 2 3 4 5 6 7 8  下一页

Tags:SQL Server 数据库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接