2009-05-07 6 views
1

私のhibernateバージョン管理では、明白な理由がないのにupdate文を発行しています。私の銀行口座のマッピングファイルでhibernateのバージョニングが何の理由もなくupdate文を発行しています

<version type="dbtimestamp" name="modified" column="Modified"/> 

inthe AvailableBalanceマッピングファイル:

<many-to-one name="bankAccount" class="model.businessdomain.orm.BankAccount" fetch="select" > 
    <column name="BankAccountId" not-null="true" /> 
</many-to-one> 

選択は、(機能経由)AvailableBalanceテーブルから行われたときに、発行されたSQL文:

17:12:16,152 DEBUG SQL:401 - select * from dbo.get_availablebalancelist(?) ab where ab.bankAccountId = ? 
17:12:31,539 DEBUG SQL:401 - select current_timestamp 
17:12:31,625 DEBUG SQL:401 - update dbo.BankAccount set Modified=?, BankAccountTypeId=?, BankID=?, InterestSchemeID=?, BankAccNo=?, SysParamID=?, BankAccName=?, BranchCode=?, UserRef=?, CAMSCode=?, Provision=?, ProvisionPerc=?, OverDraftLimit=?, isIslamic=?, Active=? where BankAccountId=? and Modified=? 

答えて

0

どのような方法でもオブジェクトがメモリ内で変更されていますか選択?オブジェクトがダーティでマークされている場合、トランザクション戦略によっては、暗黙的にデータベースを更新するコミットが発生している可能性があります。

0

この更新の理由は、投稿したコードにはほとんどない可能性があります。

デバッグするには、ロギング機能でブレークポイントを設定し、このステートメントを発行するスタックを確認します。

関連する問題