各种关系数据库的兼容布尔数据类型

时间:2010-10-29 19:34:04

标签: sql mysql database sqlite postgresql

我正在尝试创建一个与所有主要关系数据库(MySQL,PostgreSQL,Derby,SQLite,...)兼容的select语句。

这里是简单的select语句:SELECT * FROM taggings WHERE public IS TRUE

问题是例如SQLite不支持布尔数据类型,因此我将我的语句重写为:SELECT * FROM taggings WHERE public = 1

据我所知,它对SQLite(对公共字段使用某种字节)以及MySQL(将1解释为真,因为它使用公共字段的布尔类型)有效。

PostgreSQL何时使用布尔公共字段?从手册看起来我必须写SELECT * FROM taggings WHERE public = '1'。或者在这种情况下与上述陈述相同? (我没有机会在这里设置PostgreSQL数据库。)

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

SELECT * FROM taggings WHERE public