create  function test (x int)
return boolean
as
begin
 return (x>10);
end;这样可以返回true 吗?

解决方案 »

  1.   

    SQL> create  function test (x int)
      2  return boolean
      3  as
      4  begin
      5  return (x>10);
      6  end; 
      7  /函数已创建。SQL> declare
      2  a boolean;
      3  begin
      4  a:=test(10);
      5  if a then
      6   dbms_output.put_line('true');
      7  else
      8   dbms_output.put_line('false');
      9  end if;
     10  end;
     11  /
    falsePL/SQL 过程已成功完成。SQL> 
      

  2.   

    如果 select test(10) from dual
    会出错。
      

  3.   

    因为没有布尔型的字段,所以不能select
      

  4.   


    oracle没有boolean的数据类型,但是plqsl里是有的,所以ls的有问题,而在function写的没有问题。
      

  5.   

    在pl/sql里也不能select 布尔型 from 吧
    布尔型不是有效的字段类型,尽管pl/sql里有这个数据类型