欢迎投稿

今日深度:

oracle自定义函数demo分享,oracle自定义demo

oracle自定义函数demo分享,oracle自定义demo


oracle自定义函数demo分享

create or replace function f1(id int)
return varchar2
as
       ename1 varchar2(20);
begin
  select ename into ename1 from emp where empno=id;
  return ename1;
end;
--调用
declare
  id int:=7900;
begin  
  dbms_output.put_line( f1(id));          --函数不是存储过程,不能直接调用
end;

--存储过程和游标的结合使用
create or replace procedure p7(salary int)         --salary 定义的工资目标
as
       cursor curs1 is select * from emp01 where sal<salary;
       emper emp01%rowtype;
begin
  open curs1;  
  loop 
    fetch curs1 into emper;
    exit when curs1 % notfound;
    if emper.sal < salary then  --注意此处的判断条件,要使用emper而不是emp01表
      update emp01 set sal=sal*1.1 where empno=emper.empno;
    end if;
    if emper.sal*1.1 < salary then 
      update emp01 set sal=salary where empno=emper.empno;                 
    end if;                     
  end loop; 
  close curs1;
end;
--调用
declare
begin
  p7(968);
end;       

www.htsjk.Com true http://www.htsjk.com/oracle/24272.html NewsArticle oracle自定义函数demo分享,oracle自定义demo oracle自定义函数demo分享 create or replace function f1(id int)return varchar2as ename1 varchar2(20);begin select ename into ename1 from emp where empno=id; return ename1;end;--调用...
评论暂时关闭