getredash / redash

Make Your Company Data Driven. Connect to any data source, easily visualize, dashboard and share your data.
http://redash.io/
BSD 2-Clause "Simplified" License
26.46k stars 4.38k forks source link

ODBC Access is DBMS-Specific rather than DBMS-Independent #5240

Open kidehen opened 4 years ago

kidehen commented 4 years ago

Issue Summary

I am unable to make generic ODBC connections using ODBC Drivers of my choosing. Redash is a Python platform that should be using PyODBC or other binding layers to offer generic ODBC access which would be generally beneficial to the platform re usage expansion and growth.

Steps to Reproduce

  1. Attempt to bind to a generic ODBC Data Source rather than SQL Servers ODBC binding
  2. You will discover no such option exists

Technical details:

griffinator76 commented 4 years ago

Hi, Redash already uses pyodbc for one of the Microsoft SQL Server query runners (a TDS based query runner for SQL Server is also included).

In order to use pyodbc with another data source, you can create a new query runner that utilises pyodbc and the ODBC driver for that data source. This is fairly straightforward if you use the SQL Server one as an example. I guess it might be possible to abstract this a little more by having a property that defines the name of the ODBC driver to use?

kidehen commented 4 years ago

Hi, Redash already uses pyodbc for one of the Microsoft SQL Server query runners (a TDS based query runner for SQL Server is also included).

In order to use pyodbc with another data source, you can create a new query runner that utilises pyodbc and the ODBC driver for that data source. This is fairly straightforward if you use the SQL Server one as an example. I guess it might be possible to abstract this a little more by having a property that defines the name of the ODBC driver to use?

Yes. Just make it easier for others to integrate their chosen ODBC Drivers and this platform will benefit from the implicit openness immensely etc :)