使用Pyodbc + UnixODBC + FreeTDS设置连接设置

时间:2010-08-05 16:14:54

标签: python sql-server odbc pyodbc unixodbc

我有一个使用Pyodbc,UnixODBC和FreeTDS的设置,但在那里的某些选项正在设置,我不知道在哪里。根据SQL Server Management Studio,我的程序在打开连接时发送一些设置:

set quoted_identifier off
set ansi_padding off
set ansi_nulls off
...

但我需要一组不同的设置:

set quoted_identifier on
set ansi_padding on
set ansi_nulls on
...

有没有办法改变这个?如果我不能用我当前的设置做到这一点,我是否可以在Python中使用任何其他库来让我更改它(最好使用Python数据库API)?

更改数据库中的设置不是一个选项,因为我有许多其他项目使用我当前的设置。

解决:

Mark的答案是正确的,但我无法使用FreeTDS / UnixODBC。将该信息添加到我的odbc.ini文件可以很好地完成:

[servername]
... other options ..
AnsiNPW = YES
QuotedID = YES

1 个答案:

答案 0 :(得分:2)

根据MSDN,您应该能够在连接字符串中设置这些:

cnxn = pyodbc.connect("DSN=someDSN;UID=someUser;PWD=somePass;QuotedID=Yes;AnsiNPW=Yes")