.NETちょこっとリファレンス

C#、VB.NET、ASP.NET、VisualStudioのリファレンスです

データベース関連

[C#] DBNullエラーを発生させずにDataRowから値を取得する

投稿日:

DBNullエラーを発生させずに、DataRowから値を取得する方法です。

サンプルソース

DataRowから以下のように値を取得するとDBNullエラーが発生する可能性があります。

例)DBNullエラーが発生する可能性があるソース

これは、DataRowからNull値が返る可能性があるにもかかわらず、
NULL値不可のint型やbool型にセットしようとしているからです。


なので、エラーを出さないようにするにはDataRowから取得した値がNullの場合は
以下のように他の値に変換する処理を入れればOKです。

例1)DBNullエラーが発生しないソース

nullの場合は、上は0、下はfalseに置き換えています。


以下のようにも記述できます。

例2)DBNullエラーが発生しないソース

nullの場合は、上は0、下はfalseに置き換えています。

備考

  • String型はnullでも構わないためNull値判定を入れなくてもエラーにはなりません。
    (Nullを空文字に置き換えたい場合は判定を入れてください。)
  • DataRowから取得した値をnullable型(int?やbool?など)にセットする場合はエラーにはなりません。

関連記事


スポンサーリンク

スポンサーリンク

-データベース関連

執筆者:




comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です