[seasar-dotnet:238] [S2Dao]Insert時のDBのDefault制約の対応について

kubo jazzflute @ mbn.nifty.com
2006年 6月 11日 (日) 00:31:44 JST


久保です。

○環境
WindowsXP SP2
VS2005 Team Edition
.NET 2.0
S2Container.NET 1.2.0-RC2 (.NET 2.0)
S2Dao.NET 0.4.2
{ASP開発}


要望です。


実際に動かしたわけでなく、Java版の経緯とC#版のソースを見て
判断していることで恐縮ですが、、、

Insert時にあるColumnにDefault制約が存在していた場合、
現状、C#版S2DaoではC#側で与えた何かの値が必ず登録されると
認識しています(Entityにnullが格納されていたら明示的にnullで登録)。

この問題をJava版では、InsertAutoStaticCommandを非推奨にして、
新たにInsertAutoDynamicCommandを作成して、INSERT文の動的生成で
対応しています。(結構最近です)

DBのDefault制約は、開発終盤や運用後のDB変更(Column追加)時など
よく使われる制約なので、C#版での対応も検討して頂きたいです。

単純にInsertAutoDynamicCommandをC#に移行して、
DaoMetaDataImpl#SetupInsertMethodByAuto()にて、
{InsertAutoStaticCommand → InsertAutoDynamicCommand}
の変更をすれば実現できるのかな!?って思っていて、
少し時間に余裕がでたら自分も試してみたいと思います。

検討よろしくお願いします。





-- 
kubo <jazzflute @ mbn.nifty.com>




seasar-dotnet メーリングリストの案内