válidos values valores valid una the son nivel los datos compatibilidad cambiar are sql-server ado.net connection-string sql-server-2012 compatibility-level

sql-server - values - nivel de compatibilidad sql server 2017



¿Qué es la versión del sistema de tipo(nivel de compatibilidad) para SQL Server 2012? (1)

¿Qué tipo de token de la versión del sistema (nivel de compatibilidad) puedo especificar en la cadena de conexión ADO.NET para indicar que solo se admite SQL Server 2012?


De acuerdo con esto , será "SQL Server 2012". Si bien la página es para el .NET Framework 4.5 y, por lo tanto, aún como prelanzamiento, dados los otros valores posibles para el parámetro, es seguro asumir que este valor permanecerá.

Habiendo dicho eso, no sé si cualquier versión .NET debajo de 4.5 incluso aceptará ese valor como válido. No estoy en una computadora en este momento, así que no puedo verificar, lo siento.

EDITAR Parece que este valor se analiza o analiza en el lado del cliente, es decir, dentro de System.Data . Al mirar con Reflector, sucede en SqlConnectionString.SqlConnectionString(string connectionString) . Además, hay una enumeración SqlConnectionString.TypeSystem que nombra todos los valores conocidos / admitidos. Para .NET 4.0 que sería SqlServer2000 , SqlServer2005 , SqlServer2008 y Latest . Este valor se transmite dentro de las clases System.Data.SqlClient y termina siendo utilizado en algún lugar dentro de SqlDataReader .

Por lo tanto, a menos que use Latest que usaría pero no forzaría SQL Server 2012, no hay manera de forzar el sistema de tipo SQL Server 2012 con .NET <4.5.