Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Connecting to database using SQLAlchemy

I'm trying to connect to a database on my local machine.

import sqlalchemy
engine = sqlalchemy.create_engine('mssql+pyodbc://localhost\\SQLEXPRESS/NCM')

It fails with the following error:

DBAPIError: (pyodbc.Error) ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')

And also outputs this warning:

C:\Miniconda\envs\bees\lib\site-packages\sqlalchemy\connectors\pyodbc.py:82: SAWarning: No driver name specified; this is expected by PyODBC when using DSN-less connections
"No driver name specified; "

Where should I be looking to diagnose the problem?

like image 540
Jamie Bull Avatar asked Jun 04 '15 07:06

Jamie Bull


1 Answers

As shown in this link, as of version 1.0.0 you need to specify the driver explicitly for hostname connections.

Changed in version 1.0.0: Hostname-based PyODBC connections now require the
SQL Server driver name specified explicitly. SQLAlchemy cannot choose an 
optimal default here as it varies based on platform and installed drivers.
like image 165
Jamie Bull Avatar answered Sep 26 '22 06:09

Jamie Bull