Using pyodbc with Progress Data Direct ODBC Drivers

117 views
Skip to first unread message

Ivan Gomez

unread,
Feb 7, 2017, 3:53:20 PM2/7/17
to pyodbc
Hello everyone,

First of all thank you for making pyodbc so awesome :)

I have licensed the Progress DataDirect SQL Server ODBC Driver and I'm trying to use pyodbc to connect to my database, but I'm running into some complications. 

Some relevant information about my setup:

Versions

OS: RHEL 7

pyodbc: 4.0.3


ODBC Information

Install location: /gpfs/grid/progress

$LD_LIBRAY_PATH=/gpfs/grid/progress/lib:/gpfs/grid/ppm/9.1/linux2.6-glibc2.3-x86_64/lib:/gpfs/grid/lsf/9.1/linux2.6-glibc2.3-x86_64/lib:/opt/rh/devtoolset-6/root/usr/lib64:/opt/rh/devtoolset-6/root/usr/lib

$ODBC_INI=/gpfs/grid/progress/odbc.ini

$ODBCINST=/gpfs/grid/progress/odbcinst.ini

I was able to get through `setup.py build` by adding the following to setup.py after line 180:


settings['extra_link_args'].append('-L/gpfs/grid/progress/lib/')
settings['include_dirs'].append('/gpfs/grid/progress/include/')


My current problem:


If I start python and try to `print pyodbc.dataSources` I get the following error:

`Fatal Python error: Unable to set SQL_ATTR_CONNECTION_POOLING attribute.`


I was able to work around it with `pyodbc.pooling = False`


Now `print pyodbc.dataSources()` runs, but I'm not seeing any of my data sources defined in my odbc.ini file and the connection fails if I try to use one of my DSN's:

>>>pyodbc.pooling = False
>>>pyodbc.dataSources()

{'SQL Server Legacy Wire Protocol': 'DataDirect 7.1 SQL Server Legacy Wire Protocol', '': '', 'SQL Server Wire Protocol': 'DataDirect 7.1 SQL Server Wire Protocol'}


I greatly appreciate any guidance you can provide.


Thanks,

Ivan G.





Reply all
Reply to author
Forward
0 new messages