Thread: [ODBC] SQLGetTypeInfo tiny column sizes
I’m the maintainer of pyodbc which is a Python / ODBC bridge and am getting really poor performance from psqlODBC varchar and wvarchar writes. The project has to work with all drivers so I have to use whatever the driver says - in this case SQLGetTypeInfo for these types return a column size of 255 bytes. Any writes above this size have be sent 255 bytes at a time using SQLPut, but this is obviously significantly slower.
Now, I’ve provided a way to override it, but I can’t do it automatically for people so it would be ideal if we could review what the proper value should be.
https://github.com/mkleehammer/pyodbc/wiki/Connecting-to-PostgreSQL
Do you see any problem increasing this size in the driver?
Thanks,
Michael Kleehammer
Hi Michael,
You can set the max varchar size using MaxVarcharSize option in a connection string or Datasource setting.
regards,
Hiroshi Inoue
On 2017/02/18 7:50, Michael Kleehammer wrote:
I’m the maintainer of pyodbc which is a Python / ODBC bridge and am getting really poor performance from psqlODBC varchar and wvarchar writes. The project has to work with all drivers so I have to use whatever the driver says - in this case SQLGetTypeInfo for these types return a column size of 255 bytes. Any writes above this size have be sent 255 bytes at a time using SQLPut, but this is obviously significantly slower.
You can set the max varchar size using MaxVarcharSize option in a connection string or Datasource setting.
regards,
Hiroshi Inoue
Now, I’ve provided a way to override it, but I can’t do it automatically for people so it would be ideal if we could review what the proper value should be.Do you see any problem increasing this size in the driver?Thanks,Michael Kleehammer