La stringa DSN basata su file viene interpretata da SQLAlchemy come nome del server =c , nome database =users .
Preferisco connettermi senza utilizzare i DSN, è un'attività di configurazione in meno da affrontare durante le migrazioni del codice.
Questa sintassi funziona utilizzando l'autenticazione di Windows:
engine = sa.create_engine('mssql+pyodbc://server/database')
O con l'autenticazione SQL:
engine = sa.create_engine('mssql+pyodbc://user:example@sqldat.com/database')
SQLAlchemy ha una spiegazione completa delle diverse opzioni della stringa di connessione qui.