【发布时间】:2011-04-13 05:01:14
【问题描述】:
Oracle 数据库中是否有布尔类型,类似于 Ms SQL Server 中的BIT 数据类型?
【问题讨论】:
-
不幸的是,Oracle 在引入该标准时并不完全支持 ANSI SQL:1999 标准 (en.wikipedia.org/wiki/SQL:1999)。
-
另一种观点(为什么 SQL 不应该有布尔类型):vadimtropashko.wordpress.com/2010/09/16/…
-
@JeffreyKemp 该博客毫无意义。仅仅因为某些布尔值可以基于表中的其他字段计算,并不意味着可以计算所有布尔字段。例如“is_trusted_customer”,当且仅当一个人决定“我信任那个人”时这是真的。
-
@JeffreyKemp 恭喜,您刚刚重新发明了 C 风格的布尔值(您使用
ints 代替)。我们绝对应该回到代码中的那些。此外,如果表列和 result 列(来自SELECT)之间的数据类型是共享的,则该参数完全崩溃,因为有时甚至给定返回布尔值作为计算结果是绝对合适的论点的其余部分。 -
是的。像布尔值这样的更多数据类型会提供更精确的表达能力——在这方面你不会从我这里得到任何论据。我很高兴我们至少有一个
DATE类型 - 想象一下必须一直处理日期的字符串表示:)
标签: sql database oracle boolean sqldatatypes