我使用 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
最佳答案
根据MSDN您应该能够在连接字符串中设置这些:
cnxn = pyodbc.connect("DSN=someDSN;UID=someUser;PWD=somePass;QuotedID=Yes;AnsiNPW=Yes")
关于python - 使用 Pyodbc + UnixODBC + FreeTDS 设置连接设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3416814/