[Seasar-user:6734] Re: [S2Dao] PostgreSQLでのバッチ更新
SETO Azusa
[E-MAIL ADDRESS DELETED]
2007年 3月 18日 (日) 19:25:49 JST
せとあずさです。
On Sun, 18 Mar 2007 19:18:13 +0900
duran <[E-MAIL ADDRESS DELETED]> wrote:
> PostgreSQL8.2で、
> SERIAL型のカラムを持つテーブルに対してバッチ更新を行うと
> シーケンスが取得されずに更新されます。
> 対象エンティティはIDアノテーションでシーケンス指定を行っています。
> insertBatch(List entityList);
申し訳ありませんが、バッチ更新時にIDアノテーションが
反映されないのは現バージョンのS2Daoの使用です。
これはバッチ更新の場合、複数レコードの更新・削除を
まとめて行うためID値の取得を行うタイミングがないためです。
(1件ずつINSERTする場合はINSERT文を発行する直前にSEQUENCEから
nextvalを取得していますが、バッチ更新の場合はnextvalを取
得するタイミングが無いため。)
# ドキュメント・FAQに追記しておきます。
--
せとあずさ
[E-MAIL ADDRESS DELETED]
http://www.fieldnotes.jp/d/
Seasar-user メーリングリストの案内