2010-11-10 66 views
2

林开发Windows使用C#4.0窗体应用程序和应用程序要针对不同的数据库引擎,如SQL,MySQL和Oracle我想知道如果有一个可以跟所有的三个引擎而不是图书馆为每个人实施我自己的图层。一个图书馆多数据库

在此先感谢。

回答

0

我不知道C#,但我知道它会有一个库ODBC

它看起来像MS有一个here

这是旧的,但实际上它做的工作很好。实际上,每个存在的DB都提供一个ODBC驱动程序。

0

结帐DbLinq

DbLinq是LINQ提供程序,它允许使用通用数据库和 一个接近Linq to SQL的API。它目前支持(按照 的顺序出现):MySQL,Oracle,PostgreSQL,SQLite,Ingres,Firebird ... 而且还是SQL Server。

2

的问题是,如果你想要做的任何远程先进(日期arithmatic,生成主键,获得最后插入记录的ID,数据透视表,使用范围构造等),那么这两个数据库使用完全不同的句法。

的最佳解决方案(在Java世界至少要么是ibatis的或休眠)我知道有休眠的.NET版本,我不知道ibatis的。

这些库从不同的SQL方言隔离你的程序,并提供一个公共的API独立于基础数据库。