关于select语句中不能调用返回值类型为 BOOLEAN 的函数的问题

lzumcj_pa18 2005-06-14 12:32:49
我实现了一个返回值类型为 BOOLEAN 的函数,简写如下:

FUNCTION func
RETURN BOOLEAN
IS

BEGIN

RETURN TRUE;

END func;

sql 的 select 语句中是否不允许调用该函数(因为返回值类型是 BOOLEAN)?

我调用过,不可以,请问有无其他解决办法?或者高版本的数据库支持该类调用?
谢谢!
...全文
235 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzumcj_pa18 2005-06-18
  • 打赏
  • 举报
回复
BOOLEAN 不是 Oracle 的预定义类型,从sql中调用子程序有关于类型的限制。

结帖。
lzumcj_pa18 2005-06-14
  • 打赏
  • 举报
回复
不行
沝林 2005-06-14
  • 打赏
  • 举报
回复
用where func 也不行吗?
lzumcj_pa18 2005-06-14
  • 打赏
  • 举报
回复
不行,
..
where func() -- 这句不知道怎么写
-- func = TRUE 是不对的,pl/sql 的 BOOLEAN 不像c那样 #define TRUE 1
沝林 2005-06-14
  • 打赏
  • 举报
回复
好像不行,布尔型变量只能用于逻辑操作,你把调用函数地方放到WHERE字句里试试
select * from t where fun()...

17,089

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧