首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

oracle 剔除大量数据

2012-07-04 
oracle 删除大量数据create or replace procedure delBigTab(p_TableNameinvarchar2,p_Conditioninvarchar

oracle 删除大量数据
create or replace procedure delBigTab
(
  p_TableName       in    varchar2,
  p_Condition       in    varchar2,
  p_Count        in    varchar2
)
as
  pragma autonomous_transaction;
  n_delete number:=0;
begin
while 1=1 loop
   EXECUTE IMMEDIATE
     'delete from '||p_TableName||' where '||p_Condition||' and rownum <= :rn'
   USING p_Count;
   if SQL%NOTFOUND then
      exit;
   else
            n_delete:=n_delete + SQL%ROWCOUNT;
   end if;
   commit;
end loop;
commit;
end;
/

热点排行