当前主题: 软件编程

Oracle存储过程中如何将表名作为参数?

作者:Kaka    时间:2009-11-17 19:11:9    浏览:    评论:0

Oracle存储过程中将表名作为参数,处理方法不同于Oracle带参数存储过程的执行,从存储过程的编写来看,将表名作为参数的存储过程更为复杂一些。

实例代码如下:


create procedure proc002(tblName in varchar2) is
  tblnm   char(50);
  strsql  char(250);
  cursor c_fl is select * from it_fl;
  begin
  for cv_fl in c_fl loop
     begin
       tblnm:=tblname;
       strsql:='update '||tblnm||' SET FL = '''||cv_fl.FL||''' WHERE OLDFL = '||cv_fl.OLDFL;
       dbms_output.put_line(strsql);
       execute   immediate   strsql;
     end;
  end loop;
  commit;
end proc002;

      如黑体部分('''为3个单引号),需要用到使用动态sql,用execute   immediate来实现。

上一篇: 简单实例:Oracle带参数存储过程的执行
下一篇: 利用waysonline代理突破QQ、炒股等软件的封锁

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-Blog 1.8 Walle Build 91204 Designed by Han'space

Copyright @2009 All Rights Reserved. 粤ICP备09073737号