Características de Microsoft ODBC Driver for SQL Server en Windows

Descargar controlador ODBC

Microsoft ODBC Driver 18.0 for SQL Server en Windows

ODBC Driver 18.0 permite a los usuarios enviar tipos de datos largos como tipos de datos máximos mediante la palabra clave LongAsMax para activar o desactivar la configuración. Cuando se habilita, los tipos SQL SQL_LONGVARCHAR, SQL_LONGVARBINARY y SQL_LONGWVARCHAR se enviarán como varchar(max), varbinary(max) y nvarchar(max) en lugar de text, image y ntext respectivamente.

Los valores predeterminados del cifrado de la conexión han cambiado. El valor predeterminado de Encrypt es ahora Sí y las nuevas palabras clave Optional (Opcional) y Mandatory (Obligatorio) se han introducido como sinónimos de No y Sí, respectivamente. Para conectarse mediante el protocolo TDS 8.0, se ha agregado el modo estricto (Encrypt=Strict). En este modo, el certificado de servidor siempre se comprueba (TrustServerCertificate se omite). Se puede usar una nueva palabra clave, HostnameInCertificate, para especificar el nombre de host esperado que se encuentra en el certificado si difiere del servidor especificado. HostnameInCertificate se puede usar en todos los modos de cifrado y también es aplicable si la opción del lado servidor Force Encryption está habilitada, lo que hará que el controlador compruebe el certificado en los modos Optional o Mandatory (Opcional u Obligatorio), a menos que se deshabilite mediante TrustServerCertificate.

ODBC Driver 18 incluye extensiones SQLGetData. Cuando se habilita, SQLGetData se puede usar para recuperar datos de columna en cualquier orden dentro de una fila, incluido retroceder. La característica se proporciona por motivos de compatibilidad y degradará significativamente el rendimiento y aumentará el uso de memoria. Se recomienda encarecidamente que la aplicación siempre acceda a las columnas en orden ascendente. Para habilitar las extensiones SQLGetData, se puede usar el atributo de cadena de conexión GetDataExtensions o usar la función SQLSetConnectAttr para establecer SQL_COPT_SS_GETDATA_EXTENSIONS en SQL_EN_ON.

La compatibilidad con Windows ARM64 se incluye a partir de ODBC Driver 18.2 y actualmente es una versión preliminar. El controlador ARM64 es solo para aplicaciones ARM64 de 64 bits y no incluye controladores de emulación ARM ni x86/amd64 de 32 bits.

Microsoft ODBC Driver 17.4 for SQL Server en Windows

El controlador ODBC 17.4 incluye la capacidad de ajustar la configuración de conexión persistente TCP. Puede modificarse agregando valores a las claves del Registro de DSN o el controlador. Las claves se encuentran en HKEY_LOCAL_MACHINE\Software\ODBC\ para los orígenes de datos del sistema y en HKEY_CURRENT_USER\Software\ODBC\ para los orígenes de datos de usuario. En el caso de DSN, los valores deben agregarse a ...\Software\ODBC\ODBC.INI\<DSN Name> y, en el caso del controlador, a ...\Software\ODBC\ODBCINST.INI\ODBC Driver 17 for SQL Server.

Si quiere obtener más información, consulte Entradas del registro para componentes ODBC.

Los valores son REG_SZ y son los siguientes:

  • KeepAlive controla la frecuencia con la que TCP intenta comprobar que una conexión inactiva sigue intacta mediante el envío de un paquete de conexión persistente. El valor predeterminado es 30 segundos.

  • KeepAliveInterval determina el intervalo que separa las retransmisiones de conexión persistente hasta que se recibe una respuesta. El valor predeterminado es 1 segundo.

Microsoft ODBC Driver 13.1 for SQL Server en Windows

ODBC Driver 13.1 for SQL Server contiene toda la funcionalidad de la versión anterior (11). También agrega compatibilidad para Always Encrypted y la autenticación de Microsoft Entra ID (anteriormente llamado Azure Active Directory).

Always Encrypted permite a los clientes cifrar datos confidenciales en aplicaciones de cliente y nunca revelar las claves de cifrado en SQL Server. Un controlador habilitado para Always Encrypted instalado en el equipo cliente consigue esta seguridad al cifrar y descifrar automáticamente los datos confidenciales en la aplicación cliente de SQL Server. El controlador cifra los datos en columnas confidenciales antes de pasarlos a SQL Server. También reescribe automáticamente las consultas para que se conserve la semántica de la aplicación. De forma similar, el controlador descifra de forma transparente los datos almacenados en columnas de base de datos cifradas que se incluyen en los resultados de la consulta. Para obtener más información, vea Uso de Always Encrypted con ODBC Driver.

Microsoft Entra ID permite a los usuarios, los DBA y los programadores de aplicaciones usar la autenticación de Microsoft Entra. Para más información, consulta Uso de Microsoft Entra ID con el controlador ODBC y Conexión a Azure SQL o Azure Synapse Analytics mediante autenticación de Microsoft Entra.

Microsoft® ODBC Driver 11 for SQL Server® en Windows

ODBC Driver for SQL Server contiene todas las funciones del controlador ODBC de SQL Server Native Client incluido en SQL Server 2012 (11.x). Para obtener más información sobre SQL Server Native Client, consulte Programación de SQL Server Native Client. El controlador ODBC de SQL Server Native Client se basa en el controlador ODBC que se incluye en el sistema operativo Windows. Para obtener más información sobre ese controlador, vea SDK de componentes de Windows Data Access.

Esta versión de ODBC Driver for SQL Server contiene las siguientes características nuevas:

Opción bcp.exe -l para especificar un tiempo de espera de inicio de sesión

La opción -l especifica el número de segundos que tienen que transcurrir antes de que un inicio de sesión de bcp.exe en SQL Server agote el tiempo de espera cuando se trate de conectar a un servidor. El tiempo de espera de inicio de sesión predeterminado es de 15 segundos. El período de tiempo de espera de inicio de sesión debe ser un número comprendido entre 0 y 65534. Si el valor proporcionado no es numérico o no está dentro de ese rango, bcp.exe genera un mensaje de error. Un valor de 0 especifica un tiempo de espera infinito. Un tiempo de espera de inicio de sesión de menos de 10 segundos (aproximadamente) no resulta confiable.

Agrupación de conexiones dependientes del controlador

ODBC Driver for SQL Server es compatible con la agrupación de conexiones dependientes del controlador. Para obtener más información, consulte Agrupación de conexiones dependientes del controlador en ODBC Driver for SQL Server | Microsoft Docs.

Ejecución asincrónica (método de notificación)

ODBC Driver for SQL Server es compatible con la ejecución asincrónica (método de notificación). Para ver un ejemplo de uso, consulte Ejemplo de ejecución asincrónica (método de notificación).

Resistencia de la conexión

Para garantizar que las aplicaciones permanecen conectadas a una base de datos SQL de Microsoft Azure, el controlador ODBC de Windows puede restaurar conexiones inactivas. Para obtener más información, consulte Resistencia de conexión en el controlador Windows ODBC.

Cambios de comportamiento

En SQL Server Native Client, la opción -y0 para sqlcmd.exe hizo que se truncara la salida en 1 MB si el ancho de pantalla era 0.

A partir de la versión 11 de ODBC Driver for SQL Server, no existe ningún límite en la cantidad de datos que se pueden recuperar en una sola columna al especificar -y0. sqlcmd.exe ahora transmite columnas de hasta 2 GB (tamaño máximo del tipo de datos de SQL Server).

Otra diferencia radica en que especificar tanto -h como -y0 genera ahora un error que informa de que las opciones son incompatibles. -h, que especifica el número de filas que se van a imprimir entre los encabezados de columna y que nunca ha sido compatible con -y0, se omitía, aunque no se imprimiera ningún encabezado.

-y0 puede provocar problemas de rendimiento tanto en el servidor como en la red, en función del tamaño de los datos devueltos.

Consulte también

Microsoft ODBC Driver for SQL Server en Windows