Oracle数据库中是否存在类似于Ms SQL Server中的BIT
数据类型的布尔类型?
发布于 2010-09-16 20:54:38
Oracle的SQL (而不是PL/SQL)中不仅缺少boolean数据类型,而且他们也没有明确建议使用哪种数据类型。请参阅asktom上的this thread。当有人指出'Y'/'N'
依赖于英语时,他们会从推荐CHAR(1) 'Y'/'N'
转向NUMBER(1) 0/1
,而例如德国程序员可能会使用'J'/'N'
。
最糟糕的是,他们为这个愚蠢的决定辩护,就像他们捍卫''=NULL
的愚蠢一样。
发布于 2014-06-25 05:17:17
发布于 2017-06-16 20:27:56
不,Oracle数据库中没有布尔类型,但您可以这样做:
您可以在列上放置check约束。
如果您的表没有检查列,您可以添加它:
ALTER TABLE table_name
ADD column_name_check char(1) DEFAULT '1';
添加寄存器时,默认情况下,此列的值为1。
在这里,您设置了限制列值的检查,只需设置1或0即可
ALTER TABLE table_name ADD
CONSTRAINT name_constraint
column_name_check (ONOFF in ( '1', '0' ));
https://stackoverflow.com/questions/3726758
复制相似问题