请问在oracle中一个SQL执行后怎么判断是否成功? 使用SQL游标属性SQL%ROWCOUNT 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 begin insert ...exceptionwhen others then-- 出错处理 ...end maohaisheng太勤劳了,不过说的没错,我这里再补充补充.大体有如下几个:1、sql%found、sql%notfound,以sql%found为例,在语执行之前为null,当语句执行后,sql%found为有如下属性:insert成功会返回truedelete或update至少一行记录也会返回trueselect into选到了数据2、可以用sql%rowcount属性,也不用细说了,当语句影响到了或返回了数据也就会返回相应的行数。3、sql%isopen,这个和你的问题无关了,它是用于判断游标是否打开了。 可以用 WHENEVER SQLERROR...... 来处理呀,具体用法要看你程序设计的目的以及实现的方法代码,可以去看一下ORACLE自带的帮助,很好用的:-) create or replace function name_freturn varchar2asstr varchar2(10);begin begin insert into a values(...); exception when others then return ...; end; begin insert into b values(...); exception when others then return ...; end;end; 不成功的话,会报错的,直接exception了 mfc连接与数据库的连接 如果隔离同一实例下的两个不同用户的资源 oracle 查询条件的截取 Oracle sequence怎么生成的?》 一个极其奇怪的错误(A component named Field58 already exists!!) 高手们,没有监听器和TNS操作超时的问题 Oracle中批量资料结转怎样处理(200K笔) 在Oracle中可不可以找到一个表最近修改的相关信息 请问谁用7张碟安装过oracle9i JDBC连接Oracle 如何在 sql plus里面运行一个存储过程? 大力兄,帮忙解决一个很急的问题,我不能在pl/sql中调用另一个用户的存储过程
insert ...
exception
when others then
-- 出错处理
...
end
大体有如下几个:
1、sql%found、sql%notfound,以sql%found为例,在语执行之前为null,当语句执行后,sql%found为有如下属性:
insert成功会返回true
delete或update至少一行记录也会返回true
select into选到了数据
2、可以用sql%rowcount属性,也不用细说了,当语句影响到了或返回了数据也就会返回相应的行数。
3、sql%isopen,这个和你的问题无关了,它是用于判断游标是否打开了。
return varchar2
as
str varchar2(10);
begin
begin
insert into a values(...);
exception
when others then
return ...;
end;
begin
insert into b values(...);
exception
when others then
return ...;
end;
end;