我想知道数据类型布尔的大小,我使用 VSIZE()函数,但不工作用于布尔值和 想要将布尔值打印并存储到表中。 请让我知道oracle存储布尔值的方式,有没有其他方法可以查看数据类型 和布尔变量的值。 Atleast告诉我布尔的大小
当我在vsize()
中使用boolean时出现此错误ERROR“表达式类型错误”
DECLARE
a boolean;
b number(7):=7;
c number(2):=2;
BEGIN
a:=b>c;
select vsize(a) into
b
from dual;
dbms_output.put_line(b);
END;
答案 0 :(得分:1)
SQL标准没有BOOLEAN数据类型,Oracle不支持。这就是VSIZE()
抛出异常的原因。
在PL / SQL中,boolean实现为枚举,这很有趣,因为PL / SQL不支持枚举。但是,ADA - 构成PL / SQL基础的语言 - 确实如此。 Pete Finnegan写了更多关于此的内容; check it out。
答案 1 :(得分:0)
How to use BOOLEAN type in SELECT statement
我不能说我掌握了这个确切场景的第一手资料,但我想在这里使用CASE
作为您正在寻找的解决方案。
http://www.oracle.com/technology/sample_code/tech/pl_sql/htdocs/x/Case/start.htm