oracle 存储过程 open游标提示权限不足

阿蛋111 2012-11-10 03:58:56
请教各位大神们,我在存储过程中open哟个游标时报错,提示权限不足;
存储过程本身编译没问题,但是在进行测试的时候就出错;


报错代码如下

IF Str_药品取价方式 = '3' THEN
OPEN cur_库存明细 FOR ----报错行

SELECT 科室编码,
项目编码,
nvl(门诊价, 0) AS 单价,
nvl(大单位门诊价, 0) AS 大单价,
SUM(nvl(数量, 0)) AS 总库存,
SUM(nvl(占用数量, 0)) AS 占用数量,
SUM(nvl(数量, 0)) - SUM(nvl(占用数量, 0)) AS 可用数量
FROM 药房药库_库存数量
WHERE 机构编码 = Str_机构编码
AND (数量 > 0 OR months_between(sysdate, 入库时间) <= 6)
AND 有效状态 = '有效'
GROUP BY 科室编码, 项目编码, 门诊价, 大单位门诊价;
END IF;


求大神给个问题所在,在线等
...全文
388 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
forgetsam 2012-11-23
  • 打赏
  • 举报
回复
grant select any table to 存储过程所属用户
阿蛋111 2012-11-23
  • 打赏
  • 举报
回复
引用 4 楼 iihero 的回复:
引用 3 楼 lidan0902061210 的回复:现在在plsql中已经不报错了,但在代码中调用时还是提示权限不足,有没有高手指导下 确保是同一个连接用户。
确认是一个取价方式,问题莫名其妙的好了,换个机器就能正常运行,很奇怪
iihero 2012-11-11
  • 打赏
  • 举报
回复
引用 3 楼 lidan0902061210 的回复:
现在在plsql中已经不报错了,但在代码中调用时还是提示权限不足,有没有高手指导下
确保是同一个连接用户。
阿蛋111 2012-11-10
  • 打赏
  • 举报
回复
现在在plsql中已经不报错了,但在代码中调用时还是提示权限不足,有没有高手指导下
阿蛋111 2012-11-10
  • 打赏
  • 举报
回复
引用 1 楼 ssqtjffcu1 的回复:
SELECT 科室编码, 项目编码, nvl(门诊价, 0) AS 单价, nvl(大单位门诊价, 0) AS 大单价, SUM(nvl(数量, 0)) AS 总库存, SUM(nvl(占用数量……
把这段语句单独执行是没有问题的
ssqtjffcu 2012-11-10
  • 打赏
  • 举报
回复
SELECT 科室编码, 项目编码, nvl(门诊价, 0) AS 单价, nvl(大单位门诊价, 0) AS 大单价, SUM(nvl(数量, 0)) AS 总库存, SUM(nvl(占用数量, 0)) AS 占用数量, SUM(nvl(数量, 0)) - SUM(nvl(占用数量, 0)) AS 可用数量 FROM 药房药库_库存数量 WHERE 机构编码 = Str_机构编码 AND (数量 > 0 OR months_between(sysdate, 入库时间) <= 6) AND 有效状态 = '有效' GROUP BY 科室编码, 项目编码, 门诊价, 大单位门诊价; 会不会没有对药房药库_库存数量表的select权限呢?试试单独执行这语句看行不行?

17,090

社区成员

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

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