许多产品开发人员都希望编写一个.NET应用程序,该应用程序可以与任何流行的RDBMS(如SQL Server,Oracle,DB2,MySql)无缝协作。如果我们使用Data应用程序块,它会根据配置动态选择数据库驱动程序(OracleClient,SQLClient或OleDBClient)。数据库中性.NET应用程序
但是,所有数据库都有自己的SQL风格。有一些细微的差异,可以防止一个SQL代码库被普遍使用 - 函数名称不同,日期处理方式不同,Identity列处理方式不同等等。
人们可以使用第三方产品从数据直接使用预定义的转义序列写DB中立的代码。
是否有任何工具或产品来自Microsoft解决此问题?
+1一个好的和全面的答案。值得注意的是,目前EF只支持RDBMS。这就是OP询问的内容,所以我的答案没有问题,但我只想指出,如果您突然需要通过RESTful服务访问数据,或者没有其他关系,EF不会帮助您数据源。 – 2009-11-08 17:52:46
EntityFramework不支持Informix(撒旦自己的数据库) – 2009-11-09 11:23:51