当前位置:首页 » 存储配置 » oracle存储过程删除数据

oracle存储过程删除数据

发布时间: 2023-06-07 15:21:03

㈠ 求一个oracle的批量删除的存储过程

sql">declarecursorc1isselect*fromtable_A;
li_linenonumber(8);
begin
li_lineno:=1;
fortinc1loop
deletefromtable_Awherexbie00='1';
ifmod(li_lineno,1000)=0then
commit;
endif;
li_lineno:=li_lineno+1;
endloop;
end;
/

㈡ oracle 通过存储过程 删除一张表的n天前的数据。

delete from a_b_c_123 where "日期"=(
select “日期" from a_b_c_123
where "日期=N天")

以上语句能看懂吧?最后一句可以换变量,然后整个写作存储过程

㈢ Oracle存储过程中如何获得DELETE语句执行后删除的记录数

存储过程中可以通过在delete语句执行的前后分别select count(*) from tablename 查询出当前表的记录条数,然后相互相减就可以得到delete语句删除的条数。

createorreplaceprocerep_procereas
numinteger;
beforenuminteger;
afternuminteger;
begin
selectcount(*)intobeforenumfromtb1;
EXECUTEIMMEDIATE'deletefromtb1where.';
selectcount(*)intoafternumfromtb1;
num:=beforenum-afternum;
end;

㈣ oracle删除多张表数据, 存储过程

报什么错,能把错误贴一下吗
另外注意delete语句和select还是有区别的,delete时只能删除满足条件的行,所以在delete后面不用指定列字段,即
delete D2_HC t where fkpkid in (d2_cpkid) and hctype='2';

㈤ Oracle 存储过程 删除表记录时删除不存在的记录也是显示删除成功

删除不存在的数据并不会促发Oracle的异常
对于delete from dept where deptno=p_deptno;
判断是否有数据被删除可以用sql%rowcount,sql%notfound 来判断
if sql%rowcount = 0 then
dbms_output.put_line('部门删除失败...');
end if;
或者
if sql%notfound then
dbms_output.put_line('部门删除失败...');
end if;

㈥ ORACLE创建一个存储过程(删除指定数据)

sql_dl='delete from report_data t where t.address in ('广东省')'

这行双重单引号,你不觉得有问题吗?需要转义一下。

还有个问题,你的这条sql明明可以不用in的,是还有别的省份没写进来吗?如果没有别的省份,建议使用=而不要用in,因为in与=的性能差距可是很大的,数据量越大,性能差距越明显。

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:593
制作脚本网站 发布:2025-10-20 08:17:34 浏览:888
python中的init方法 发布:2025-10-20 08:17:33 浏览:581
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:765
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:684
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1012
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:255
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:113
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:806
python股票数据获取 发布:2025-10-20 07:39:44 浏览:712