在迴圈過程中遇到錯誤而繼續執行

2021-06-23 02:33:52 字數 1504 閱讀 8703

sql> create table c(cid varchar2(10),nid varchar2(10));

table created

sql> create unique index ind_c on c(cid);

index created

sql> set serveroutput on

sql>declare

i  varchar2(10) := '11111';

vi int;

begin

for vi in 1 .. 3 loop

i := i || '1';

insert into c (cid, nid) values (i, vi);

insert into c (cid, nid) values (1, 1);

end loop;

exception

when others then

dbms_output.put_line(sqlerrm);

end;

/ora-00001: 違反唯一約束條件 (scott.ind_c)

pl/sql procedure successfully completed

sql> select * from c;

cid        nid

---------- ----------

111111     1

1          1

1111111    2

此時插入了3條,插入第四條(1,1)時有唯一索引衝突,所以終止了程式。

修改一下這個過程(用上面貼的方法):

declare

i  varchar2(10) := '11111';

vi int;

begin

for vi in 1 .. 3 loop

i := i || '1';

insert into c (cid, nid) values (i, vi);

begin

insert into c (cid, nid) values (1, 1);

exception

when others then

null;

end;

end loop;

exception

when others then

dbms_output.put_line(sqlerrm);

end;

/pl/sql procedure successfully completed

sql> select * from c;

cid        nid

---------- ----------

111111     1

1          1

1111111    2

11111111   3

這時插入了四條。當插入(1,1)時產生了唯一索引衝突,但有了異常捕獲(雖然是null),但可以繼續插入後面的資料咯。

在使用Kafka過程中遇到的錯誤

問題一 用kafka命令傳送訊息時候,一直報warn error while fetching metadata with correlation id 0 原因 由於主題沒建立導致的,生成是禁止自動建立的。問題二 created producer rdkafka producer 1 log 3 ...

SSH在整合過程中遇到的錯誤總結

1 error creating bean with name sessionfactory defined in servletcontext 說法1 spring中提供 contextloaderlistenter類,用來載入context的xml檔案。spring為struts提供contex...

iis執行siteserver過程中遇到的問題

問題一 system.web.hosting.hostingenvironmentexception 訪問 iis 元資料庫失敗。解決辦法 1 開啟cmd,進入 c windows microsoft.net framework v2.0.50727 2 輸入 aspnet regiis.exe i...