[seasar-dotnet:2113] Re: [DBFlute.NET]OutsideSQLのインサート時の警告ログ

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2011年 11月 21日 (月) 10:30:10 JST


uparrowと申します。

久保さん、ご回答ありがとうございます。

> DBFlute.NETなので、ここはS2Dao.NETの挙動ですね。
> S2Dao.NETだと、バインド変数コメントは null の値を警告とするようです。
> 基本的にはIFコメントで「null じゃなければ」と囲うことが推奨されます。
S2Dao.NETの挙動なのですね。
IFコメントを利用し、明示的にnullじゃない時とnullの時を記載しました。
WARNログが出力されなくなることが確認できました。

> ※DBFluteランタイム.NETを早く作りたいですねぇ...
これからも利用させていただきたいと思っておりますので、
期待しております。

ありがとうございました。

> 久保(jflute)です。
> 
> uparrowさん、こんにちは
> 
> DBFlute.NETなので、ここはS2Dao.NETの挙動ですね。
> S2Dao.NETだと、バインド変数コメントは null の値を警告とするようです。
> 基本的にはIFコメントで「null じゃなければ」と囲うことが推奨されます。
> 
> ちなみにJavaのDBFluteだと、検索系は null を許したくないので例外で、
> 更新系では null を許す必要があるので null も受け入れる、という仕様です。
> また、内部でWARNログを出すことはないです。
> 
> ということで気にする必要はないですが、
> 邪魔であれば Log4netの設定で、BindVariableNodeのWARNログを
> 抑制してしてもいいかと思います。ただしその場合は、
> 検索系とかでパラメータが不意に null になってしまっても、
> WARNログは出なくなります。
> 
> 
> ※DBFluteランタイム.NETを早く作りたいですねぇ...
> 
> 2011/11/18  <[E-MAIL ADDRESS DELETED]>:
> > uparrowと申します。
> >
> > DBFluteでAccessのデータベースに対してOutsideSQLでインサート処理を行っています。
> > 処理自体は想定の内容で行われ問題ないのですが、その処理時に出力されるログに
> > 気になる出力がありメールいたしました。
> >
> > 以下のようなログです。(他の部分を添付しました)
> >
> > 2011-11-18 11:25:55,666 [9] WARN ?Seasar.Dao.Node.BindVariableNode - Argument(pmb.FinishedDate) not found
> >
> > WARNで出力されるので、無視するわけにもいかず困っています。
> >
> > OutsideSQLを実行する部分は
> > ? ? ? ? ? ? ? ?string path = AccTehaiFBhv.PATH_updateAtOkuridashi;
> >
> > ? ? ? ? ? ? ? ?AccAtOkuridashiPmb pmb = new AccAtOkuridashiPmb();
> > ? ? ? ? ? ? ? ?pmb.ShijiNo = XXXX;
> > ? ? ? ? ? ? ? ?pmb.WorkingQty = XXXX;
> > ? ? ? ? ? ? ? ?pmb.DefectQty = XXXX;
> > ? ? ? ? ? ? ? ?pmb.FinishedFlg = XXXX;
> > ? ? ? ? ? ? ? ?pmb.FinishedDate = null;
> > ? ? ? ? ? ? ? ?pmb.ProcessQty1 = XXXX;
> > ? ? ? ? ? ? ? ?pmb.ProcessDate1 = XXXX;
> > ? ? ? ? ? ? ? ?....
> > ? ? ? ? ? ? ? ?pmb.ProcessQty4 = 0;
> > ? ? ? ? ? ? ? ?pmb.ProcessDate4 = null;
> > ? ? ? ? ? ? ? ?....
> > ? ? ? ? ? ? ? ?accTehaiBhv.OutsideSql().Execute(path, pmb);
> >
> > のようにしており、nullを設定している箇所でWARNが出ているようです。
> > これは、どのような警告を意味しており、何が問題なのでしょうか?
> > また、どのようにして回避するのが良いのでしょうか?
> >
> > dbflute-0.8.9.32のバージョンを利用しております。
> > OutsideSQLのSQLも添付します。(AccTehaiFBhv_updateAtOkuridashi.sql)
> > ここで、該当するデータベースの項目の完了日、最終日付Xのデータ型は
> > 日付/時刻型としております。
> >
> > 他に、Updateを行っている箇所や、別テーブルに対してのInsert,Update
> > でも同様のログが出力されております。
> >
> > よろしくお願いいたします。
> > _______________________________________________
> > seasar-dotnet mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/seasar-dotnet
> >
> >
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet



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