动态网站制作指南
[  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库学院 > 数据库技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Access教程,DB2教程,数据库安全,数据库文摘
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ 数据库技巧 ]的信息

本月文章推荐
.正确配置和使用SQL mail.
.如何获取SQL Server数据库里表的.
.安装时出现一般网络性错误的解决.
.xp sp2 + sql server 2000 devel.
.用一个案例讲解SQL Server数据库.
.如何获取指定表中指定字段内的可.
.MS SQL SERVER 图像或大文本的输.
.利用UltraEdit快速将SQL语句转换.
.SQL Server数据对象结构的动态建.
.SQL SERVER中一些常见性能问题的.
.安装SQL Server 2005时出现计数器.
.关于sql的小玩意 sql server添加.
.了解SQL Server 2008的新压缩特性.
.SQL Server 7.0 一般问题.
.轻松掌握"SQL"服务存储过程的实例.
.拨云见日 正确认识password file.
.SQL中查询数据表字段名称的查询语.
.Sql Server 2000+Sql Server Mob.
.SQL Server 本机 Web 服务的使用.
.三种实现方法实现数据表中遍历寻.

用一个存储过程实现分步删除数据表记录

文章类别:数据库技巧 | 发表日期:2008-4-10 |


简介在实际的工作和学习中,我们需要分步删除数据表的一些记录,分批提交用以减少对Undo的使用,在本中我们将介绍一个简单的存储过程用于实现此逻辑。

大家可以根据各自的需要进行适当调整。

参考示例如下:

SQL> create table test as select * from dba_objects;Table created.SQL>

create or replace procedure deleteTab 2 /** 3 ** Usage:

run the script to create the proc deleteTab 4 **

in SQL*PLUS, type "exec deleteTab('Foo','ID>=1000000','3000');" 5 **

to delete the records in the table "Foo", commit per 3000 records. 6 **

7 **/ 8 ( 9 p_TableName in varchar2,

--The TableName which you want to delete from 10 p_Condition in varchar2,

--Delete condition, such as "id>=100000" 11 p_Count in varchar2

--Commit after delete How many records 12 ) 13 as 14

pragma autonomous_transaction; 15 n_delete number:=0; 16

begin 17 while 1=1 loop 18 EXECUTE IMMEDIATE 19

'delete from '||p_TableName||' where '||p_Condition||'

and rownum <= :rn' 20 USING p_Count; 21

if SQL%NOTFOUND then 22 exit; 23 else 24

n_delete:=n_delete + SQL%ROWCOUNT; 25 end if; 26

commit; 27 end loop; 28 commit; 29 DBMS_OUTPUT.PUT_LINE('Finished!');

30 DBMS_OUTPUT.PUT_LINE('Totally '||to_char(n_delete)||' records deleted!');

31 end; 32 /Procedure created.SQL> insert into test select * from dba_objects;

6374 rows created.SQL> /6374 rows created.SQL> /6374 rows created.SQL> commit;Commit

complete.SQL> exec deleteTab('TEST','object_id >0','3000')Finished!Totally 19107

records deleted!PL/SQL procedure successfully completed.


上一篇:快速解决日志文件满造成的无法写入问题 人气:452
下一篇:数据库差异备份与增量备份的不同之处 人气:375
点击此处浏览全部存储过程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-5-16 乘风多用户PHP统计系统 v3.4
2008-5-16 轩溪下载系统 v3.78 build 0515
2008-5-16 普沙B2B 浙江省商贸网 v2.0
2008-5-16 asp抓蜘蛛的小程序 v1.0
2008-5-16 齐齐乐网私服发布站 仿haosf新版
2008-5-16 IssTech信息反馈系统 v1.0
2008-5-16 自由领域大头贴(js接口版) 修正版
2008-5-16 医院网站系统
2008-5-16 智拓-分类信息管理系统 v5.0
2008-5-7 Windows XP SP3 官方英文版
2008-5-7 Windows XP SP3 官方香港中文版
2008-5-7 Windows XP SP3 官方繁体中文版
2008-5-7 Windows XP SP3 官方简体中文版
2008-4-30 Multiple Unzip Wizard 1.02
2008-4-30 Multiple Unrar Wizard 1.0.0
2008-4-30 WinZip Install/Try/Uninstall a
2008-4-30 ZIP压缩文件修复器WzipFix 2.0
2008-4-30 Pentazip 6.01 Build 189 For Wi
  发表评论
姓 名: 验证码: [ 全部贴吧 ] [ 浏览评论 ]
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報