Postgre 和 pyodbc 的布尔值不兼容?



我使用的是Pyodbc 3.0.10和PostgreSQL 9.6,使用本机PostGre ODBC驱动程序(Post Gre Unicode(x64))。我创建了一个测试表

create table test ( col boolean )

我试图插入一个python布尔。我看不出完成了什么参数替代,但似乎没有PYODBC与所有Post -Gre datatypes一起使用?

In [3]: cur = cxn.cursor()
In [4]: cur.execute('insert into test values (?)', (True,))
---------------------------------------------------------------------------
ProgrammingError                          Traceback (most recent call last)
<ipython-input-4-5a0edc50457d> in <module>()
----> 1 cur.execute('insert into test values (?)', (True,))
ProgrammingError: ('42804', '[42804] ERROR: column "col" is of type boolean but
expression is of type "char";nError while preparing parameters (1) (SQLExecDirectW)')

正如戈德·汤普森(Gord Thompson)指出的那样,您要做的就是将;BoolsAsChar=0添加到连接字符串

相关内容

  • 没有找到相关文章

最新更新