Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El controlador mssql-python es el controlador oficial de Microsoft para Python en SQL Server, Azure SQL Database, Azure SQL Managed Instance y base de datos SQL en Microsoft Fabric. El controlador se mantiene activamente en GitHub y se libera a través de PyPI. Este artículo trata sobre versiones, compatibilidad de plataformas y plazos de soporte.
Soporte de versiones
Utiliza siempre la última versión para obtener nuevas funciones, mejoras de rendimiento y soluciones de seguridad. Las nuevas funcionalidades solo se agregan a la versión actual.
Versión actual
La versión 1.14.0 es la versión actual de disponibilidad general (GA).
Historial de versiones
| Versión | Fecha de lanzamiento | Situación | Características clave |
|---|---|---|---|
| 1.14.0 | Agosto de 2026 | Actual | Canalización nativa de enlace de parámetros, connect(timeout=) establece el tiempo de espera de autenticación, la copia masiva acepta timeout=0, tipos de Arrow View en la copia masiva |
| 1.13.0 | Agosto de 2026 | Anterior | Copia masiva de Apache Arrow, parámetro token_provider, agrupación de conexiones con reconocimiento de identidad, paquete complementario mssql-python-odbc requerido |
| 1.12.0 | Julio de 2026 | Anterior | Paquete complementario mssql-python-odbc independiente, corrección del tiempo de espera de conexión en la copia masiva, corrección de los UDT de CLR en la copia masiva |
| 1.11.0 | Julio de 2026 | Anterior | Confirmación o reversión en el administrador de contexto, corrección en Apple Silicon, corrección de la copia masiva de la entidad de servicio |
| 1.10.0 | Junio de 2026 | Anterior | Copia masiva con ActiveDirectoryServicePrincipal, correcciones de VARCHAR en Arrow |
| 1.9.0 | Junio de 2026 | Anterior | Copia masiva con objetos de fila, tipos de parámetros NULL mejorados |
| 1.8.0 | Mayo de 2026 | Anterior | Copia masiva con ActiveDirectoryMSI, indexación por clave de cadena de fila |
| 1.7.1 | Mayo de 2026 | Anterior | Paquetes wheel de RHEL 8, simultaneidad más amplia y correcciones Unicode |
| 1.6.0 | Abril de 2026 | Anterior | Sanitización de cadenas de conexión basada en un analizador sintáctico, correcciones de concurrencia en la conexión y desconexión |
| 1.5.0 | Abril de 2026 | Anterior | Recuperación en Arrow, sql_variant, UUID nativo |
| 1.4.0 | Febrero de 2026 | Anterior | Soporte de copias masivas (BCP) |
| 1.3.0 | Enero de 2026 | Anterior | Clase de configuración, configuración del módulo |
| 1.2.0 | Enero de 2026 | Anterior | Métodos de descubrimiento de esquemas |
| 1.1.0 | Diciembre de 2025 | Anterior | Convertidores de salida personalizados |
| 1.0.0 | Noviembre de 2025 | Anterior | Lanzamiento inicial de disponibilidad general |
Importante
Solo la versión actual (1.14.0) recibe nuevas funciones y correcciones de errores. Las versiones anteriores siguen funcionando pero no reciben actualizaciones.
compatibilidad con versiones de Python
El controlador mssql-python requiere Python 3.10 o posterior. Si vas a empezar un proyecto nuevo, apunta a la versión más reciente de Python soportada en la matriz de compatibilidad para la ventana de soporte más larga.
| Versión de Python | Estado de soporte |
|---|---|
| Python 3.14 | Soportado |
| Python 3.13 | Soportado |
| Python 3.12 | Soportado |
| Python 3.11 | Soportado |
| Python 3.10 | Compatible (mínimo) |
| Python 3.9 y anteriores | No soportado |
Importante
Use siempre una versión de Python compatible. Las versiones de Python anteriores no reciben actualizaciones de seguridad.
compatibilidad con versiones de SQL Server
El controlador mssql-python utiliza el protocolo TDS y funciona con todas las versiones de SQL Server que son soportadas activamente.
| Versión de SQL Server | Estado de soporte |
|---|---|
| Todas las versiones compatibles de Microsoft SQL Server | Totalmente compatible |
Servicios de Azure SQL
| Service | Estado de soporte |
|---|---|
| Azure SQL Database | Totalmente compatible |
| Instancia Gestionada de Azure SQL | Totalmente compatible |
| Azure Synapse Analytics (pools dedicados) | Soportado |
Microsoft Fabric
| Endpoint | Estado de soporte |
|---|---|
| Base de datos SQL en Fabric | Totalmente compatible |
| Almacenamiento de datos de tejido | Soportado |
| Endpoint de analítica SQL (Lakehouse) | Soportado |
| Punto de conexión de análisis SQL (base de datos reflejada) | Soportado |
Compatibilidad del sistema operativo
El controlador mssql-python utiliza DDBC (Conectividad Directa de Bases de Datos) y no requiere instalar el controlador ODBC de Microsoft. Eliminar la dependencia externa simplifica el despliegue, especialmente en contenedores y canalizaciones de CI/CD.
| Sistema operativo | Architecture | Estado de soporte |
|---|---|---|
| Windows 11 | x64, ARM64 | Soportado |
| Windows Server 2019, 2022 y 2025 | x64 | Soportado |
| Ubuntu 22.04, 24.04, 26.04 | x64, ARM64 | Soportado |
| Debian 11, 12 | x64, ARM64 | Soportado |
| Red Hat Enterprise Linux 8, 9 | x64, ARM64 | Soportado |
| macOS 14, 15, 26 | Intel, Apple Silicon (ARM64) | Soportado |
| Alpine Linux | x64 | Soportado |
Compatibilidad de características
Las siguientes tablas enumeran las características de SQL Server y su estado de soporte en la versión actual (1.14.0) del controlador mssql-python. Si no se soporta alguna función que necesites, como Always Encrypted o MARS, considera usar pyodbc en su lugar. Para información sobre las características añadidas en versiones anteriores, consulta Qué hay de nuevo en mssql-python.
Características de SQL Server
| Feature | Soporte para MSSQL-Python |
|---|---|
| Conexiones cifradas (TLS) | Soportado |
| Siempre Cifrado | No soportado |
| autenticación de Microsoft Entra | Soportado |
| Conjuntos de resultados activos múltiples (MARS) | No soportado |
| Copia masiva (BCP) | Soportado |
| Recuperación en Apache Arrow | Soportado |
| Columnas de sql_variant | Soportado |
| UUID nativo | Soportado |
| Resistencia de la conexión | Soportado |
| Enrutamiento de solo lectura | Soportado |
Conformidad con DB-API 2.0
| Feature | Support |
|---|---|
| Interfaz de módulo | Compliant |
| Interfaz de conexión | Compliant |
| Interfaz de cursor | Cumple en su mayor parte |
| Objetos tipo | Compliant |
| Excepciones | Compliant |
callproc() |
No implementado |
Note
El callproc() método no se implementa. Llama a procedimientos almacenados usando EXECUTE sentencias con métodos estándar de consulta.
Requisitos de dependencia
El controlador mssql-python tiene dependencias mínimas:
| Dependencia | Purpose | Versión |
|---|---|---|
| azure-identity | Autenticación de Microsoft Entra ID | Obligatorio (>= 1.12.0) |
| MSSQL-PYTHON-ODBC | Paquete complementario que distribuye los binarios del controlador ODBC | Obligatorio (== 18.6.2.1) desde mssql-python 1.13.0 |
El pip install mssql-python comando instala automáticamente el mssql-python-odbc paquete complementario. Ese paquete proporciona los binarios del controlador ODBC que el controlador carga durante el arranque. No necesitas instalar el controlador ODBC de Microsoft para SQL Server por separado.
El paquete complementario es obligatorio en tiempo de ejecución. El conductor no recurre a binarios dentro del mssql-python volante. Instala explícitamente mssql-python-odbc==18.6.2.1 en estas condiciones:
- Instalas con
--no-deps. - Lo instalas desde un índice privado que no refleja el paquete complementario.
Migración desde pyodbc
El controlador mssql-python simplifica el despliegue (no se requiere controlador ODBC) y proporciona pooling de conexiones integrado. Las principales diferencias a tener en cuenta al migrar:
| Consideración | Notas |
|---|---|
| Estilo de parámetro | PYODBC utiliza qmark parámetros posicionales. mssql-python utiliza por defecto parámetros con nombre pyformat y también admite qmark por compatibilidad. |
| Acceso a filas | El acceso a atributos está soportado en ambos. |
| Procedimientos almacenados | Use EXECUTE (no callproc). |
| Agrupación de conexiones | Pooling integrado en el controlador mssql-python. |
Consulta Migrar desde pyodbc para obtener instrucciones detalladas.
Migración desde pymssql
El controlador pymssql ya no se mantiene activamente. El controlador mssql-python ofrece una alternativa soportada con sintaxis de conexión similar pero con características modernas como la agrupación de conexiones integrada y la autenticación Microsoft Entra.
| Consideración | Notas |
|---|---|
| Dependencia de FreeTDS | No es necesario. El controlador mssql-python utiliza DDBC. |
| Parámetros de conexión | Estilo similar, pero nombres de parámetros diferentes. |
| Acceso a filas | Ambos admiten patrones de acceso tipo diccionario y mediante atributos. |
| Procedimientos almacenados | Use EXECUTE (no callproc). |
Consulta Migrar desde pymssql para una guía detallada.
Directiva de cambios importantes
- Versiones principales (2.0, 3.0): Los cambios importantes en la versión significan cambios recientes en la API.
- Versiones menores (1.4, 1.5): Incluyen nuevas funciones y mantienen la compatibilidad hacia atrás.
- Versiones de parche (1.4.1, 1.4.2): Incluyen solo correcciones de errores.
El equipo documenta los cambios de última hora en las notas de lanzamiento y proporciona guías de migración.
Cómo mantenerse al día
El controlador mssql-python lanza versiones menores con frecuencia. Revisa las actualizaciones regularmente, especialmente antes de los despliegues en producción.
Comprobación de la versión instalada
Verifica qué versión del controlador está instalada actualmente en tu entorno:
import mssql_python
print(mssql_python.__version__)
Actualización a la versión más reciente
Actualiza a la última versión para obtener las últimas funciones y correcciones de seguridad.
pip install --upgrade mssql-python
Suscribirse a actualizaciones
- Estate atento al repositorio de GitHub.
- Consulta PyPI para nuevas novedades.
- Revisa el registro de cambios de cada versión.
Obtener soporte
Problemas de GitHub
Informe de errores y características de solicitud en GitHub:
Documentation
Community
- Stack Overflow: Etiqueta las preguntas con
mssql-python. - Debates en GitHub: Úsalo para preguntas y debates generales.