如何在存储过程中使用序列

[复制链接]
查看11 | 回复5 | 2008-10-24 13:19:51 | 显示全部楼层 |阅读模式
有如下存储过程
create or replace procedure aa( p1 output varchar2)
as
begin
insert into bb values ('123',seq_aa.nextval);
select column1 into p1 from bb;
end;

进行编译时,提示出错,必须说明"seq_aa"组件.
请问如何解决 这一个问题啊?
回复

使用道具 举报

千问 | 2008-10-24 13:19:51 | 显示全部楼层
seq_aa 是某一个用户的 序列生成器吧?!
回复

使用道具 举报

千问 | 2008-10-24 13:19:51 | 显示全部楼层
当前用户的,但在sql plus中可以执行,就是在存储过程中不能执行.
回复

使用道具 举报

千问 | 2008-10-24 13:19:51 | 显示全部楼层
insert into bb select '123',seq_aa.nextval from dual 行不行?
回复

使用道具 举报

千问 | 2008-10-24 13:19:51 | 显示全部楼层
试试GRANT SELECT ANY SEQUENCE TO 当前用户;
回复

使用道具 举报

千问 | 2008-10-24 13:19:51 | 显示全部楼层
建同义词
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行