Instalación de mssql-django

El paquete mssql-django es el controlador de base de datos oficial de Django, con soporte oficial de Microsoft, para SQL Server, Azure SQL Database, Azure SQL Managed Instance y la base de datos SQL de Microsoft Fabric. En este artículo se explica cómo instalar el paquete y sus dependencias.

Prerequisites

  • Python 3.10 a 3.14. Django 6.0 y versiones posteriores requieren al menos Python 3.12.
  • Administrador de paquetes pip (incluido con Python 3.4 y versiones posteriores)
  • Microsoft ODBC Driver 17 o 18 para SQL Server, para alias de base de datos que usan el controlador por defectopyodbc. Consulte Descarga del controlador ODBC para SQL Server.

Importante

mssql-django La versión 2.0 requiere mssql-python la versión 1.15.0 o posterior, incluso cuando todos los alias de la base de datos usan pyodbc. El paquete solo se instala en plataformas que tienen una distribución compatible mssql-python . Los proyectos en otras plataformas permanecen en la versión 1.8.0. Para la lista de plataformas, véase soporte y ciclo de vida de mssql-django.

Instalar desde PyPI

Instala el paquete usando pip. Este comando también instala Django, pyodbc, mssql-python, y tzdata automáticamente:

pip install mssql-django

Para actualizar una instalación existente:

pip install --upgrade mssql-django

Para instalar una versión específica:

pip install mssql-django==2.0.0

Compatibilidad de dependencias y versiones

Para la mssql-django versión 2.0, los metadatos del paquete incluyen estas restricciones de dependencia:

Componente Guía de versión
Python 3.10 a 3.14
Django >=5.2 y <6.2
pyodbc >=3.0
mssql-python >=1.15.0
tzdata Instalado como dependencia

Tip

Deje que pip resuelva versiones compatibles, a menos que tenga un archivo de bloqueo verificado. Anclar una versión anterior pyodbc puede provocar problemas en tiempo de ejecución incluso cuando la instalación se realiza correctamente.

Elige un controlador de base de datos

pyodbc es el controlador por defecto y no necesita configuración. Para ejecutar un alias de base de datos en mssql-python su lugar, añade "python_driver": "mssql_python" al diccionario de OPTIONS ese alias. Los alias pueden usar diferentes controladores en el mismo proyecto. Para las diferencias de comportamiento y las opciones que cada controlador ignora, consulta Seleccionar el controlador de base de datos para mssql-django.

Comprobación de la instalación

Después de la instalación, compruebe que el paquete está instalado correctamente:

pip show mssql-django

Resultado esperado:

Name: mssql-django
Version: 2.0.0
Summary: Django backend for Microsoft SQL Server

Verifica la capa ODBC que utiliza la ruta predeterminada pyodbc :

import pyodbc

print(f"pyodbc version: {pyodbc.version}")
print(f"Available ODBC drivers: {pyodbc.drivers()}")

Note

El mssql-django backend se configura automáticamente en el sistema de enrutamiento de bases de datos de Django. No lo importe directamente en el código de la aplicación. En su lugar, establezca ENGINE en mssql en la configuración de DATABASES.

Uso de un entorno virtual

Use un entorno virtual de Python para aislar las dependencias del proyecto:

python -m venv .venv

Active el entorno virtual:

.venv\Scripts\activate

A continuación, instale mssql-django dentro del entorno virtual:

pip install mssql-django

Notas específicas de la plataforma

Los alias de base de datos que usan el controlador predeterminado pyodbc necesitan un controlador ODBC instalado por separado, y los pasos de instalación varían según el sistema operativo. Los alias que usan mssql-python no necesitan estos pasos. En su lugar, instala los requisitos previos de la plataforma para mssql-python, incluyendo OpenSSL en macOS y las bibliotecas necesarias en Linux.

Windows

Instale el controlador Microsoft ODBC Driver 18 para SQL Server con el instalador .msi de Descargar ODBC Driver para SQL Server.

Linux

Instale el controlador ODBC mediante el administrador de paquetes de la distribución. Consulte Instalación del controlador ODBC de Microsoft para SQL Server (Linux) para obtener instrucciones específicas de la plataforma.

macOS

Instale el controlador ODBC con Homebrew:

brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
HOMEBREW_ACCEPT_EULA=Y brew install msodbcsql18

Dependencias

El mssql-django paquete instala automáticamente las siguientes dependencias:

Package propósito
Django Marco web
pyodbc Controlador de base de datos ODBC por defecto para Python
mssql-python Controlador de base de datos Python con opción de activación, instalado incondicionalmente
tzdata Base de datos de zonas horarias IANA para el módulo estándar de biblioteca zoneinfo

El backend convierte los valores conscientes datetime de la zona horaria utilizando el módulo estándar de biblioteca zoneinfo . zoneinfolee la base de datos de zonas horarias IANA del sistema operativo cuando existe una y vuelve al tzdata paquete de otro modo, que cubre Windows y imágenes mínimas de contenedores. pytz ya no es una dependencia.