在Oracle数据库中是否存在布尔类型,类似于Ms SQL Server中的BIT数据类型?


当前回答

如果你使用Java和Hibernate,那么使用NUMBER(1,0)是最好的方法。正如您在这里看到的,Hibernate会自动将这个值转换为布尔值。

其他回答

在pl/sql中有一个布尔类型,但没有一个可以用作列的数据类型。

而不是SQL级别,这很遗憾 但是在PLSQL中有一个

只是因为还没有人提到它:使用RAW(1)似乎也是常见的实践。

DECLARE
error_flag  BOOLEAN := false;
BEGIN

error_flag := true;
--error_flag := 13;--expression is of wrong type

  IF error_flag THEN 

UPDATE table_a SET id= 8 WHERE id = 1;

END IF;
END;

不,不存在类型布尔,但你可以你1/0(类型数字),或'Y'/'N'(类型char),或'true'/'false'(类型varchar2)。