Instalar mssql-django

O pacote mssql-django é o back-end oficial do banco de dados do Django com suporte da Microsoft para SQL Server, Banco de Dados SQL do Azure, Instância Gerenciada de SQL do Azure e Banco de Dados SQL no Microsoft Fabric. Este artigo explica como instalar o pacote e suas dependências.

Pré-requisitos

  • Python 3.10 a 3.14. Django 6.0 e versões posteriores exigem pelo menos Python 3.12.
  • gerenciador de pacotes pip (incluído com Python 3.4 e versões posteriores)
  • Driver ODBC da Microsoft 17 ou 18 para SQL Server, para aliases de banco de dados que usam o driver padrãopyodbc. Consulte Baixar o Driver ODBC para SQL Server.

Importante

mssql-django A versão 2.0 requer mssql-python 1.15.0 ou superior, mesmo quando todos os aliases de banco de dados usam pyodbc. O pacote é instalado apenas em plataformas que possuem uma distribuição compatível mssql-python . Projetos em outras plataformas permanecem na versão 1.8.0. Para a lista de plataformas, veja suporte e ciclo de vida mssql-django.

Instalar via PyPI

Instale o pacote usando pip. Esse comando também instala Django, pyodbc, mssql-python, e tzdata automaticamente:

pip install mssql-django

Para atualizar uma instalação existente:

pip install --upgrade mssql-django

Para instalar uma versão específica:

pip install mssql-django==2.0.0

Dependência e compatibilidade de versão

Para mssql-django a versão 2.0, os metadados do pacote incluem estas restrições de dependência:

Componente Diretrizes de versão
Python 3.10 a 3.14
Django >=5.2 e <6.2
pyodbc >=3.0
mssql-python >=1.15.0
tzdata Instalado como uma dependência

Tip

Deixe pip resolver versões compatíveis, a menos que você tenha um arquivo de bloqueio testado. Fixar uma versão de pyodbc anterior pode causar problemas em runtime, mesmo que a instalação seja bem-sucedida.

Escolha um driver de banco de dados

pyodbc é o driver padrão e não precisa de configuração. Para executar um alias de banco de dados em mssql-python em vez disso, adicione "python_driver": "mssql_python" ao dicionário OPTIONS desse alias. Aliases podem usar drivers diferentes no mesmo projeto. Para as diferenças de comportamento e as opções que cada driver ignora, veja Selecionar o driver de banco de dados para mssql-django.

Verificar a instalação

Após a instalação, verifique se o pacote está instalado corretamente:

pip show mssql-django

Resultado esperado:

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

Verifique a camada ODBC que o caminho padrão pyodbc usa:

import pyodbc

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

Note

O mssql-django backend é configurado automaticamente no sistema de roteamento de bancos de dados do Django. Não importe diretamente no código do aplicativo. Em vez disso, defina o ENGINE para mssql em sua DATABASES configuração.

Usar um ambiente virtual

Use um ambiente virtual Python para isolar as dependências do projeto:

python -m venv .venv

Ative o ambiente virtual:

.venv\Scripts\activate

Em seguida, instale mssql-django dentro do ambiente virtual:

pip install mssql-django

Notas específicas da plataforma

Aliases de banco de dados que usam o driver padrão pyodbc precisam de um driver ODBC instalado separadamente, e as etapas de instalação variam conforme o sistema operacional. Aliases que usam mssql-python não precisam desses passos. Em vez disso, instale os pré-requisitos da plataforma para mssql-python, incluindo OpenSSL no macOS e as bibliotecas necessárias no Linux.

Windows

Instale o Microsoft ODBC Driver 18 para SQL Server usando o instalador .msi disponível em Baixar o Driver ODBC para SQL Server.

Linux

Instale o driver ODBC usando o gerenciador de pacotes da distribuição. Consulte Instalar o driver ODBC Microsoft para SQL Server (Linux) para obter instruções específicas da plataforma.

macOS

Instale o driver ODBC com Homebrew:

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

Dependencies

O mssql-django pacote instala automaticamente as seguintes dependências:

Package Purpose
Django Estrutura da Web
pyodbc Driver padrão de banco de dados ODBC para Python
mssql-python Driver de banco de dados Python com opção de opt-in, instalado incondicionalmente
tzdata Banco de dados de fusos horários IANA para o módulo padrão de biblioteca zoneinfo

O backend converte valores com reconhecimento de fuso horário datetime usando o módulo zoneinfo da biblioteca padrão. zoneinfo lê o banco de dados de fusos horários IANA do sistema operacional quando disponível e, caso contrário, recorre ao pacote tzdata, que abrange o Windows e imagens mínimas de contêiner. pytz não é mais uma dependência.