知识大全 分别删除数据表记录的方法
Posted 知
篇首语:其实最美好的日子就是,我对你闹,你对我笑。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 分别删除数据表记录的方法相关的知识,希望对你有一定的参考价值。
很多情况下我们需要分别删除数据表的一些记录 分批来提交以此来减少对于Undo的使用 下面我们提供一个简单的存储过程来实现此逻辑
SQL> create table test as select * from dba_objects;
Table created
SQL> create or replace procedure deleteTab
/**
** Usage: run the script to create the proc deleteTab
** in SQL*PLUS type exec deleteTab( Foo ID>= );
** to delete the records in the table Foo mit per records
** Condition with default value = and default Commit batch is
**/
(
p_TableName in varchar The TableName which you want to delete from
p_Condition in varchar default = Delete condition such as id>=
p_Count in varchar default Commit after delete How many records
)
as
pragma autonomous_transaction;
n_delete number:= ;
begin
while = 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;
mit;
end loop;
mit;
DBMS_OUTPUT PUT_LINE( Finished! );
DBMS_OUTPUT PUT_LINE( Totally ||to_char(n_delete)|| records deleted! );
end;
/
Procedure created
SQL> insert into test select * from dba_objects;
rows created
SQL> /
rows created
SQL> /
rows created
SQL> mit;
Commit plete
SQL> exec deleteTab( TEST object_id > )
Finished!
Totally records deleted!
PL/SQL procedure successfully pleted
注释 在此实例中修正了一下 增加了 个缺省值 以下是具体过程:
create or replace procedure deleteTab
(
p_TableName in varchar
The TableName which you want to delete from
p_Condition in varchar default =
Delete condition such as id>=
p_Count in varchar default
Commit after delete How many records
)
as
pragma autonomous_transaction;
n_delete number:= ;
begin
while = 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;
mit;
end loop;
mit;
DBMS_OUTPUT PUT_LINE( Finished! );
DBMS_OUTPUT PUT_LINE( Totally ||to_char(n_delete)|| records deleted! );
cha138/Article/program/Oracle/201311/18562
相关参考
Oracle数据库删除重复记录的方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 做项目的时候
cha138/Article/program/net/201311/14242
用VisualC#来修改和删除数据库记录 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在前面的一
Oracle数据库删除表中重复记录的常见方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 方法
这是一款asp教程删除指定记录程序代码哦实例由点击连接到删除页面并且执行删除 <%数据库教程连接subopendb()setrs=serverCreateObject("adodbreco
苹果手机聊天记录删除了怎么恢复苹果手机恢复微信聊天记录可以使用下面这个方法,按照步骤操作就可以了:1:下载安装iTunes,用iTunes备份手机数据。2:打开强力苹果恢复精灵,选择“从iTunes备
如何彻底删除苹果手机微信聊天记录打开微信——设置——通用——储存空间——管理微信聊天数据——选择你想删除的即可按照上面的步骤操作即可..1.打开迅捷微信聊天记录恢复器,点击软件界面上的“打开目录”,在
重复记录分为两种第一种是完全重复的记录也就是所有字段均重复的记录第二种是部分关键字段重复的记录例如Name字段重复而其它字段不一定重复或都重复 第一种重复很容易解决不同数据库环境下方法相似 M
个人征信由中国人民银行征信中心统一管理,非数据报送机构都无权删除和修改。凡是自称金融平台、网贷平台客服,提供注销不良网贷征信记录和账户的都是诈骗。()
个人征信由中国人民银行征信中心统一管理,非数据报送机构都无权删除和修改。凡是自称金融平台、网贷平台客服,提供注销不良网贷征信记录和账户的都是诈骗。()A、正确B、错误正确答案:A
个人征信由中国人民银行征信中心统一管理,非数据报送机构都无权删除和修改。凡是自称金融平台、网贷平台客服,提供注销不良网贷征信记录和账户的都是诈骗。()
个人征信由中国人民银行征信中心统一管理,非数据报送机构都无权删除和修改。凡是自称金融平台、网贷平台客服,提供注销不良网贷征信记录和账户的都是诈骗。()A、正确B、错误正确答案:A