Muchos desarrolladores de productos desean escribir una aplicación .NET que funcione perfectamente con cualquier RDBMS popular, como SQL server, oracle, DB2, MySql. Si utilizamos el bloque de aplicación de datos, se elige dinámicamente el controlador de la base de datos (OracleClient, SQLClient o OleDBClient) según la configuración.Aplicación neutra de base de datos .NET
Sin embargo, todas las bases de datos tienen sus propios sabores de SQL. Existen diferencias sutiles que evitan que una base de código SQL se use universalmente: los nombres de las funciones son diferentes, la forma en que se manejan las fechas es diferente, la forma en que se manejan las columnas de Identidad, etc.
Se podría usar un producto de terceros de Data Direct para escribir código de DB neutral usando secuencias de escape predefinidas.
¿Hay alguna herramienta o producto de Microsoft que resuelva este problema?
+1 Una respuesta buena y completa. Puede valer la pena notar que actualmente, el EF solo admite RDBMS. Eso fue lo que el OP preguntó, así que no tengo problemas con su respuesta, pero solo quiero señalar que EF no lo ayudará si de repente necesita acceder a los datos a través de un servicio RESTful, o no relacionado fuentes de datos. –
EntityFramework no funciona con Informix (la base de datos de Satanás) –