Giter Club home page Giter Club logo

Comments (7)

jank avatar jank commented on June 18, 2024

Seems reasonable, will need to have a look into this.

from sqlalchemy-exasol.

fmarczin avatar fmarczin commented on June 18, 2024

I ran into this, too. I think the source of the problem is that for DSN-less connections, the driver name is put into curly braces (pyodbc.py:78). This makes it impossible to directly provide a driver file.

from sqlalchemy-exasol.

jank avatar jank commented on June 18, 2024

Ok I checked this. @FlorianWilhelm, I am not sure if you try to connect via a connection URL (exa+pyodbc://...) or via a DSN.

Connecting via a DSN you can pass the relevant section of the driver ini file as parameter. EXAODBC is just the default. E.g. using the following connecting string

exa+pyodbc://<user>:<pwd>@<ip-range>:<port>/schema?driver=MYDRIVER

would look for the section 'MYDRIVER' in your odbcinst.ini.

This works for me.

from sqlalchemy-exasol.

FlorianWilhelm avatar FlorianWilhelm commented on June 18, 2024

@BY-jk I connected with DSN only, so no connection URL. The problem is that if you provide the DRIVER= parameter inside your DSN section, it still checks for [EXAODBC].

from sqlalchemy-exasol.

jank avatar jank commented on June 18, 2024

Works for me. I removed all entries from the odbcinst.ini (the ini file holding the global driver directive). I added a section like this to my odbc.ini (the file holding system DSNs):

[EXA_TEST]
DRIVER=/path/to/libexaodbc-uo2214lv1.so
EXAHOST=<ip range>:<port>
EXASCHEMA=some_schema

and than connected with

from sqlalchemy import create_engine
e = create_engine('exa+pyodbc://USER:PWD@EXA_TEST')
c = e.connect()
r = c.execute('select 42 from dual;')

And I got the answer I was looking for

from sqlalchemy-exasol.

JivanRoquet avatar JivanRoquet commented on June 18, 2024

@BY-jk this solution leads to the following error:

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

from sqlalchemy-exasol.

jank avatar jank commented on June 18, 2024

Can you please share more details on your setup, e.g.:

  • Operating system
  • (unix?)ODBC version
  • Python version
  • SQLAlchemy_exasol version
  • your odbc configuration

The error message suggests that you do not have the data source EXA_TEST defined (assuming you copied and pasted the connection string from the snippet above.

If this is your connection string: 'exa+pyodbc://USER:PWD@EXA_TEST'

you are using the EXASOL dialect (indicated by 'exa'), connecting using pyodbc (indicated by 'pyodbc'), with USER and PWD as username and password, using the ODBC data source 'EXA_TEST'.

Maybe the data source is not defined in your

from sqlalchemy-exasol.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.