site top | diary | column | tips | gallery

PL/SQLでバルクインサート処理

仕事のメモ書き。


PL/SQLでバルクインサート処理をする際の注意点。

・UNDO領域について
一気に大量のUPDATEやDELETEをCOMMITした場合、UNDO領域が足りなくなる可能性があるらしい。UNDO領域はCOMMITをしても開放されず、コネクションを切断する必要がある。

・ProceducerとSQL
プロシージャのほうが複雑な処理に使える&共通関数を作成できるので、複雑な処理を使いまわしできる。デメリットとしては、DBへインストールする作業が発生するのでリリース作業がめんどくさい。
SQLは普通にCSHなどから呼び出して実行するだけ。複雑な処理になると可読性が下がる。

・ループの中で数値の操作などをするときはFORALLではなく、FOR文にすること
FORALLにすると、フェッチしてきた型(レコード型コレクション)に一致するエンティティにしか代入できない(と思われる)。


トラックバック

このエントリーのトラックバックURL:

コメント

コメントしてください




保存しますか?

(書式を変更するような一部のHTMLタグを使うことができます)

2010年11月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        

Recent Comments

Recent TrackBack

you16.com 2007 all right reserved