[Seasar-user:9881] Re: [DbFlute]entity にidentityの値が設定されない

kubo [E-MAIL ADDRESS DELETED]
2007年 8月 14日 (火) 02:09:17 JST


久保です。

> dbflute-0.5.2
> s2dao-1.0.43
> SQL Server 2005 
> 
> で以下の現象が出ているのですが、設定の問題でしょうか? 
> 
> [現象]
> behaviorでinsertした後にentityにidentityの値が設定されません。
> .NET+SQL Server 2005で使用したときはinsert後にidentityの値を取得できたと記憶していますが、Javaだと何か違うのでしょうか?
> logを見るとselect @@identityは発行されています。
> schema.xmlを見ると主キーは正しく認識されています。 

Javaでもそこは全く同じはずです。
確かにログを見る限りでは、
Identityを利用してInsertして@@identityまではうまくいっているようですね。

SQLServerがどうだったかわかりませんが、例えばMySQLなどでは、
「トランザクションが発行されていないとInsertしたIdentityの値を取得できない」
というようなことがあります。
ですが、ログを見るとしっかり「トランザクションをコミットしました 」と
ありますね。。。

今手元で、Identityを持つテーブルにInsertしてEntityから取得して
正常にIdentityno列が取得できています(Apache Derby)。


すいません、ちょっと思い当たらないので、
他にどこか疑う点がないか、もう少し考えて見ます。





Seasar-user メーリングリストの案内