用于开发目的的数据库服

时间:2012-02-27 21:36:52

标签: .net sql database proxy connection-string

我正在寻找一个多数据库服务器环境,用于在不同服务器类型和版本之间切换。

我有一个.Net应用程序,它必须处理由其连接字符串定义的多个数据库服务器,但我不想自己处理所有服务器安装/配置。

我正在考虑类似标准的Northwind数据库,但托管在不同的服务器上,如MySql,Oracle,Sql Server 2005,Sql Server 2008等等......

为了在本地处理所有连接,我考虑使用某种代理客户端,它接受connectionString和providername并通过指定的通信协议执行查询。

如果有这样的服务,有没有人有任何想法? (免费和/或商业)

由于

1 个答案:

答案 0 :(得分:1)

  

为了在本地处理所有连接,我考虑使用某种代理客户端,它接受connectionString和providername并通过指定的通信协议执行查询。

至少对于这一点,ADO允许您以相当通用的方式建立连接。您的里程可能会有所不同,因为不同的数据库都使用不同的SQL语言。

使用为所有平台动态构建SQL的SQL DSL可能会更好。

  

Factory Model Overview (ADO.NET)

     

ADO.NET 2.0还引入了抽象基类,使开发人员能够编写不依赖于特定数据提供者的通用数据访问代码。

     

...

     

编写与提供程序无关的代码的编程模型基于“工厂”设计模式的使用,该模式使用单个API来跨多个提供程序访问数据库。这种模式恰当地命名,因为它要求仅使用专门的对象来创建其他对象,就像现实世界的工厂一样。

DbProviderFactories.GetFactoryClasses明白:

  • System.Data.Odbc
  • System.Data.OleDb
  • System.Data.OracleClient
  • System.Data.SqlClient
  • System.Data.SqlServerCe.3.5