[pgsql-jp: 27090] JDBCにおけるトランザクション制御について

丸山 宏徳 kutsugi @ avis.ne.jp
2002年 8月 20日 (火) 17:05:00 JST


いつもお世話になっております。JDBCドライバの件では大変ありがとうございま
した。

さて、今回の表題の件なのですが……「今Insertしたレコードのserialの値を
currvalで取得し、そのSerialを元にして情報を編集、同じレコードをUpdateす
る」という処理があります。
この処理に伴って、Serial=PostgreSQLのSequenceの動作を調べましたが

Q.他のユーザとの競合状態を避けるためには、currval() と nextval() は使わ
ないほうがよいのでしょうか? 
A.バックエンドが上手に処理するので、競合状態になることは有りません。 

というQ&Aと、Sequenceに関してはトランザクションは効かない、というFAQを発
見するに留まっています。

この「バックエンドが上手に処理する」というのは、JDBCにおいてはコネクショ
ン毎に動作するのでしょうか? それともステートメント毎なのでしょうか?

もしご存知の方がいらっしゃいましたらご教授頂ければと存じます。よろしくお
願い致します。


丸山 宏徳

E-Mail:kutsugi @ avis.ne.jp




pgsql-jp メーリングリストの案内