0
私はpyodbc 3.0.10とPostgreSQL 9.6をネイティブPostgre ODBCドライバ(Postgre Unicode(x64))を使って使用しています。私はテストテーブルを作成しましたPostgreとpyodbcのブール値は互換性がありませんか?
create table test (col boolean)
そして私はPythonブール値を挿入しようとしました。どのようなパラメータの置換が行われたのかわかりませんが、pyodbcはPostgreSQLのすべてのデータ型で動作するようには見えません。あなたのODBC接続文字列の末尾にBoolsAsChar = 0 ';ゴード・トンプソンは、先に指摘したよう
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)')
てみてください
;BoolsAsChar=0
を追加しています。それは私の問題を解決したようです。 –それはうまくいった、ありがとう! – swmfg