[Seasar-user:3326] Re: [S2Dao] Timestamp 排他制御改善要望
上原 慶三
[E-MAIL ADDRESS DELETED]
2006年 3月 5日 (日) 03:07:02 JST
上原です。返事が遅くなってすいません。
保坂 亮 wrote:
> はじめまして。保坂と申します。
> 度々すみません。保存書庫を見ましたら文字化けしておりましたので再投稿いたします。
>
>
> 現在、S2Dao の使用を検討しております。
> そこで下記 2 点の要望をご検討いただきたくお願いいたします。
>
> ●要望1
>
> 【現在の動作】
>
> Timestamp による排他制御を設定していて、DB にデータを INSERT すると
> Timestamp 排他制御しているカラムには、S2Dao にて自動で設定された Timestamp 値が挿入される。
>
> 【改変要望】
>
> Timestamp 排他制御しているカラムに指定した Timestamp 値を挿入したい。
>
> 【実装希望例】
>
> Timestamp 排他制御している Java Beans のプロパティに値が入っていれば、
> その値をそのままカラムに挿入する。
> 値が null の場合は、自動で Timestamp 値を挿入する(現状どおり)。
>
> ---------------------------------------------
>
> 現在 DB のテーブルに「登録日時」と「更新日時」という Timestamp 型のカラムを設け、
> 「更新日時」にて排他制御をしたいと考えております。
> そして、INSERT 時は「登録日時」と「更新日時」に同一の Timestamp 値を登録するという
> 仕様となっております。
>
> その際、現在の S2Dao の仕様ですと、「更新日時」は Timestamp 排他制御カラムとなりますので、
> INSERT 時に自動で Timestamp 値が設定されます。
> そうしますと「登録日時」は自動設定ではなくコード上で設定することになるため、
> 「登録日時」と「更新日時」に同一の Timestamp 値を登録するという仕様が満たせないということになります。
>
現在S2Daoの実装ではInsertとUpdateの動きを特に区別していないので、
これをやろうと思うと結構大変なような気がします。
いつぐらいにこの機能が必要になるかによるのですが、もしすぐにでも必要でし
たら、SQLファイルやSQLアノテーションでSQLを書けば、S2Daoは何もしないの
で、ご希望どうりの動作になると思います。
このようなテーブルがたくさんあると面倒ですが。
>
> ●要望2
>
> 【現在の動作】
>
> Timestamp 用のカラムの値に null が設定されていると比較に失敗する。
>
> 【改変要望】
>
> Timestamp 用のカラムの値に null が設定されていて、
> かつ比較用の Java Beans プロパティの値も null の場合は値がイコールとみなし、更新削除を行いたい。
>
>
> 以上、いきなりの要望で失礼ではございますが、
> 何卒、ご検討いただきたくお願いいたします。
こちらも、SQLファイルやSQLアノテーションを使えば現状のまま
でできなくはないと思います。
3月以降でよければ、対応できると思いますが、
いつぐらいまでに必要でしょうか?
--
---
上原 慶三<[E-MAIL ADDRESS DELETED]>
Seasar-user メーリングリストの案内