[Seasar-user:20855] Re: 【DBFlute】OracleのTIMESTAMPでシステム日付が勝手にセットされてしまう

kubo [E-MAIL ADDRESS DELETED]
2011年 7月 21日 (木) 21:28:21 JST


久保(jflute)です。

豊里さん、こんばんは

特にその名前が特別なことはありません。
DBFluteでは唯一 VERSION_NO という名前のカラムは
排他制御カラムとして自動判別しますが、それ以外はありません。
以下を確認してみてください。

o setTimeStamp() を呼び出さないで insert() するとどうなるか?
o setTimeStamp() をオーバーライドしてログを出力してみて、
 予期しないセッターメソッドの呼び出しが他にないか?

2011/7/21 [E-MAIL ADDRESS DELETED] <[E-MAIL ADDRESS DELETED]>:
> 豊里と申します。
> 久保様、先程はご迷惑をおかけしてすみませんでした。
>
> 現在DBFlute-0.9.8.7を使用しています。
> 件名の通りですが、TIME_STAMPという名前のカラム名でデータ型もTIMESTAMP型で
> Insertする際にJava側で値をセットしても、システム日付が勝手にセットされてしまいます。
>
> 例)
> ~DDL~
> CREATE TABLE PDMSSYS.T_HOGE
> (
>   HOGE_ID                   VARCHAR2(10) NOT NULL,
>   HOGE_NM                   VARCHAR2(100),
>   TIME_STAMP                     TIMESTAMP(6),
>   CONSTRAINT SYS_C005018 PRIMARY KEY (HOGE_ID)
> );
>
>
> ~Java~
> MHoge entity = new MHoge();
>
> entity.setHogeId("test");
> entity.setHogeNm("テスト");
>
> Timestamp ts = '未来日付';
> entity.setTimeStamp(ts);
>
> tHogeBhv.insert(entity);
>
>
> insert前にセットされたTimeStampの値を確認したら未来日付が入っていました。
> しかしログ、データを確認するとシステム日付が自動設定されます。
> もちろんcommonColumnMap.dfpropにはTIME_STAMPを設定していません。
>
> TIME_STAMPというカラム名は問題ですか?
>
> 以上。
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


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