您的位置:首页 > 数据库 > Oracle

oracle中函数和过程没有参数问题

2011-03-14 11:30 232 查看
上次遇到一个小小的问题,准确的说是设计上的缺陷,先看看问题在哪里,
3、针对DEPT和EMP表,查询出下面格式的结果并要求按部门编号和工资降序排列。【过程打印】
      部门名称  员工姓名  工资
create or replace procedure up_getde(v_did number)
as
cursor mycur is select d.dname as dname ,e.ename as ename,e.sal as sal
from dept d ,emp e
where d.deptno = e.deptno
order by d.deptno ,e.sal desc;
begin
for i in mycur loop
   dbms_output.put_line(i.dname || '    ' || i.ename ||'    '|| i.sal);
end loop;
end;
    
最后执行过程: exec up_getde(0);
 
有一个没有意义的参数v_did ,多余的,今天发现了解决的办法,,
如果函数和存储过程没有参数,则函数名和存储过程名后面不应该有扩号(),否则会报告函数有编译错误。
而调用时时要加上()的
如下select e.eid ,e.uf_getYearSal() from newstaff e where e.eid=1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐