Pyodbc

Latest version: v5.1.0

Safety actively analyzes 630602 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 6

4.0.12

Not secure
The new pyodbc.drivers() implementation buffer was too small, so names would get truncated.

Also fixed a potential double-decrement during import, but did not have a case where it crashed.

Ignore driver-reported max varchar if <=255. Some drivers like FileMaker return -1, etc., which caused a hang when writing.

4.0.11

Not secure
Added support for reading IBM DB/2 columns as Unicode text.

Merged in pull request that adds a localhost homebrew directory to the include paths on macOS. Thanks sgivens0

Merged in a long-neglected pull request that adds pyodbc.drivers(). Thanks sergiodlc

4.0.9

Not secure
Accept UUID objects as parameters. If pyodbc.native_uuid is True, return SQL_GUID columns
as UUID objects. If False, the default for backwards compatibility, return them as Unicode
strings.

4.0.8

Not secure
Issue 84 Previously all Python 3 longs were sent via SQL_BIGINT but Access does not support this so now SQL_INTEGER is used when possible. This is also a nice optimization for other drivers.

Also fixed 195 - Python 3 text and Python 2 unicode was always passed as SQL_WVARCHAR even if the encoding was set to something like UTF-8 that should be SQL_VARCHAR.

4.0.7

Not secure
Recently a change was made to use SQLDescribeColW so that Unicode column names could be retrieved properly. Unfortunately this uncovered some weirdness with some drivers, this time Teradata.

I'm not sure if the issue is iODBC (which Apple doesn't ship anymore) is using a 4-byte
SQLWCHAR or if Teradata is returning UCS4/UTF-32LE for column names in SQLDescribeColW. Either
way I've added a hack that assumes 4-byte chars if the decoding for SQL_WMETADATA (a pyodbc
specific constant) is set to any of the UTF-32 encodings. The encoding is then actually used.


cnxn.setdecoding(pyodbc.SQL_WMETADATA, encoding='utf-32le')


Fixes 194

4.0.5

Not secure
Fix decoding of Cursor.description column names. Fixes 190 - The issue was a column alias with an i with acute which caused an error. pyodbc now (1) uses the Unicode version of SQLDescribeColumn and (2) uses the configured SQL_C_WCHAR encoding. I've added SQL Server test decode_meta for this.

When a connection is used in a `with` clause (as a context manager), the connection has always been committed if successful. However, when an exception is raised it now issues a specific rollback. In the past neither was performed if an exception was raised.

Page 5 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.