【发布时间】:2010-10-11 04:55:39
【问题描述】:
使用 pysqlite 如何将用户定义类型用作比较中的值,例如。 g: “... WHERE columnName > userType”?
例如,我定义了一个带有必要注册、转换器等的 bool 类型。Pysqlite/Sqlite 按预期响应 INSERT 和 SELECT 操作(bool 'True' 存储为整数 1 并返回为 True)。
但是当 bool 用于“SELECT * from tasks WHERE display = True”或“... WHERE display = 'True”时,它会失败。 “ 第一种情况 Sqlite 报错没有名为 True 的列。在第二种情况下,不返回任何记录。如果使用 1 代替 True,则选择有效。在使用 pysqlite 自己的日期和时间戳适配器时,我似乎遇到了同样的问题。
我可以解决此用户类型和其他用户类型的这种行为,但这并不那么有趣。我想知道是否可以在查询中使用用户定义的类型,这样我就不会一直撞到这个特定的墙上。
谢谢。
【问题讨论】: