Oracle 按照Rownum删除数据的一种方法
2011-02-16 10:14
423 查看
最近在做Sql到Oracle的移植工作,由于Oracle中没有像Sql 里那样的Identity列,所以遇到很多麻烦,最近遇到了一个要根据自增列的值删除数据的存储过程,弄了半天找到了一种方法。
/*在Oracle中的操作过程*/ --创建表,由于Oracle中没有identity,所以去掉aid列,在后面使用rownum create table TempTable ( SearchID number(10,0) ) --删除Rownum为5的值 declare cursor tmp_cursor is select rownum aid,searchid from TempTable for update; tmp_record tmp_cursor%rowtype; begin open tmp_cursor; loop fetch tmp_cursor into tmp_record; exit when tmp_cursor%notfound; if(tmp_record.aid=5)--如果rownum为5 then begin delete TempTable where current of tmp_cursor; end; end if; end loop; close tmp_cursor; commit; end;
相关文章推荐
- ORACLE删除重复数据的一种高效的方法
- ORACLE删除重复数据的一种高效的方法(转)
- Oracle查询重复数据与删除重复记录方法
- 恢复ORACLE被误更新或删除数据的方法
- Oracle删除重复记录只保留一条数据的几种方法
- Oracle查询重复数据与删除重复记录方法
- ORACLE恢复删除数据的方法之flashback
- oracle 快速删除大批量数据方法(全部删除,条件删除,删除大量重复记录)
- Oracle 删除数据的几种方法
- oracle 用rownum方法查询最近更新的n条数据
- Oracle之删除数据之后如何恢复的方法总结
- oracle 10.2.0.1.0 误删除数据文件 后的处理方法
- oracle 锁住的数据删除 方法 -留着自己看
- oracle巨大表的数据删除的方法,20分钟搞定
- oracle误删除数据的恢复方法
- oracle误删除数据的恢复方法
- Oracle查询重复数据与删除重复记录方法
- 删除oracle重复数据简单方法
- Oracle意外删除数据文件恢复方法
- oracle误删除表数据的恢复方法