0

以下のように機能する場合、TrueまたはFalseを使用できません

case([(table.c.item_id == None, False)], else_= True).label('saved')

クエリは sqlalchemy で構築されていますが、asyncpg を使用しているこの非同期ライブラリhttps://github.com/encode/databasesで実行されます

実行しようとすると、次のエラーが表示されます。

File "asyncpg\protocol\protocol.pyx", line 181, in bind_execute
File "asyncpg\protocol\prepared_stmt.pyx", line 171, in asyncpg.protocol.protocol.PreparedStatementState._encode_bind_msg
asyncpg.exceptions.DataError: invalid input for query argument $3: False (expected str, got bool)

sqlalchemy で使用しようとしましたが、正しく True/False 値を返しています。

engine = create_engine(DATABASE_URL)
conn = engine.connect()
result = conn.execute(query)

asyncpgに問題がありますか?True/False を「True」/「False」に置き換えようとしましたが、機能しています。ブール値を返す別の方法はありますか?

敬具

4

0 に答える 0