Como Conectar e Testar uma Conexão com SQL Server Usando Python (pyodbc)
- Amanda Nascimento

- 24 de jul.
- 3 min de leitura
Atualizado: 29 de set.
Se você está desenvolvendo aplicações ou analisando dados, em algum momento vai precisar se conectar a um banco de dados. Neste post, vou te mostrar como conectar o Python ao SQL Server usando a biblioteca pyodbc.
Considerando que você já tem instalado o SQL Server (clique aqui para saber mais), uma IDE e Python instalados, você pode abrir o visual studio code, abrir o terminal, e digitar: pip install pyodbc
Após a instalação da biblioteca você poderá testar o script abaixo no vs code, lembrando que se você alterou o nome padrão do servidor, não esqueça de substituí-lo abaixo no lugar de "localhost"
Exemplo de conexão com o autenticação via windows
import pyodbc
def best_driver_and_crypto():
try:
drivers = [d.lower() for d in pyodbc.drivers()]
if 'odbc driver 18 for sql server' in drivers:
return 'ODBC Driver 18 for SQL Server', 'Encrypt=yes;TrustServerCertificate=yes;'
else:
return 'ODBC Driver 17 for SQL Server', 'Encrypt=no;TrustServerCertificate=yes;'
except:
return 'ODBC Driver 18 for SQL Server', 'Encrypt=yes;TrustServerCertificate=yes;'
driver, crypto = best_driver_and_crypto()
server = r'localhost'
# ex.: 'MACHINE\SQLEXPRESS' ou 'insira aqui o ip do servidor,insira aqui o número da porta'
database = 'master'
try:
conn = pyodbc.connect(
f'DRIVER={{{driver}}};'
f'SERVER={server};'
f'DATABASE={database};'
f'Trusted_Connection=yes;'
f'{crypto}'
f'MARS_Connection=Yes;',
timeout=5
)
print("✅ Conexão (Windows) bem-sucedida!")
cursor = conn.cursor()
cursor.execute("SELECT name FROM sys.databases ORDER BY name;")
for row in cursor.fetchall():
print("📂 Banco:", row.name)
conn.close()
except Exception as e:
print("❌ Erro ao conectar (Windows):", e)
Exemplo de conexão com o autenticação via SQL SERVER
import pyodbc
def best_driver_and_crypto():
try:
drivers = [d.lower() for d in pyodbc.drivers()]
if 'odbc driver 18 for sql server' in drivers:
return 'ODBC Driver 18 for SQL Server', 'Encrypt=yes;TrustServerCertificate=yes;'
else:
return 'ODBC Driver 17 for SQL Server', 'Encrypt=no;TrustServerCertificate=yes;'
except:
return 'ODBC Driver 18 for SQL Server', 'Encrypt=yes;TrustServerCertificate=yes;'
driver, crypto = best_driver_and_crypto()
server = r'localhost' # ex.: 'ip servidor,nº da porta'
database = 'master'
user = 'insira aqui o nome do usuário'
password = 'insira aqui a senha do usuário'
try:
conn = pyodbc.connect(
f'DRIVER={{{driver}}};'
f'SERVER={server};'
f'DATABASE={database};'
f'UID={user};PWD={password};'
f'{crypto}'
f'MARS_Connection=Yes;',
timeout=5
)
print("✅ Conexão (SQL Auth) bem-sucedida!")
cursor = conn.cursor()
cursor.execute("SELECT name FROM sys.databases ORDER BY name;")
for row in cursor.fetchall():
print("📂 Banco:", row.name)
conn.close()
except Exception as e:
print("❌ Erro ao conectar (SQL Auth):", e)
Se o nome do servidor esta correto e o SQL esta funcionando normalmente e deu erro de conexão, possivelmente esta faltando o driver de conexão.
Para saber se você tem o driver, abra o cmd (prompt de comando) e digite: odbcad32.exe

Clique aqui para fazer o download
Depois disso, você poderá adicionar manualmente a conexão inserindo nome de usuário e senha, ou login pela conta do windows.
Se ainda asism não funcionar, reinicie o serviço do SQL digitando na lupa do windows: Configuration Manager, no menu do lado esquerdo clique em Serviços do SQL Server e em nome, selecione o serviço e clique com o botão direito para reiniciar.
Também é possível executar o script em python em uma IDE para identificar quais drivers estão instalados...
Microsoft ODBC Driver para SQL Server
É o driver oficial da Microsoft que permite que aplicações (como Python via pyodbc, SSIS, Power BI, Excel, etc.) se conectem ao SQL Server usando o protocolo ODBC (Open Database Connectivity). Funciona como um tradutor entre o aplicativo e o SQL Server: você manda instruções SQL pelo pyodbc, e o driver converte isso em chamadas que o SQL Server entende.
Para saber qual drive esta instalado, no terminal da IDE

Para instalar, abra o Power Shell




