Skip to Main Content

Japanese

PL/SQLのループでとにかくnot foundを無視してループさせたい。

859671May 10 2011 — edited May 10 2011
お世話になっております。
データが5000件程度あるマスタテーブルをループさせながら一時表に書き込むプログラムを書いています。
こんな感じです。

begin
for i in ( select code, trdate from test1 where trdate=sysdate) loop

select bb into var_bb from test2 where code = i.code ; -- ①

insert into test3 ( code, bb) values ( i.code , var_bb ) ;

end loop

comit;
end ;
/

test2にtest1と同じコードが張っていない場合、no_date_found例外
でとまってしまいます。余り重要でないtest3テーブルなので、なくてもとりあえず全件まわしたいと考えています

この場合、さらっとした書き方は出来ないでしょうか?
① をカーソル宣言して、open , fetch , %notfoud属性を調べれば掛けますが、
もっとサラッと簡単に書ける方法がないか調べています。

よろしくお願いします。
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 7 2011
Added on May 10 2011
6 comments
3,470 views