【发布时间】:2010-10-29 19:34:03
【问题描述】:
我正在尝试创建一个与所有主要关系数据库(MySQL、PostgreSQL、Derby、SQLite...)兼容的选择语句。
这里是简单的选择语句:SELECT * FROM taggings WHERE public IS TRUE
问题是,例如 SQLite 不支持布尔数据类型,所以我将我的语句重写为:SELECT * FROM taggings WHERE public = 1
据我所知,它对 SQLite(公共字段使用某种字节)和 MySQL(将 1 解释为 true,因为它对公共字段使用布尔类型)有效。
PostgreSQL 也使用布尔公共字段时怎么样?从手册看来,我必须写SELECT * FROM taggings WHERE public = '1'。或者在这种情况下是否等同于上述陈述? (我没有机会在这里设置 PostgreSQL 数据库。)
感谢您的帮助!
【问题讨论】:
标签: sql mysql database sqlite postgresql