IsDBNullでエラー
- 題名: IsDBNullでエラー
- 著者: ぽくお
- 日時: 2008/08/08 16:47:54
- ID: 22637
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: IsDBNullでエラー
- 著者: るしぇ
- 日時: 2008/08/08 17:20:22
- ID: 22638
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: IsDBNullでエラー
- 著者: H.K.R.
- 日時: 2008/08/08 21:34:08
- ID: 22640
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: IsDBNullでエラー
- 著者: ぽくお
- 日時: 2008/08/08 21:35:51
- ID: 22641
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: IsDBNullでエラー
- 著者: ぽくお
- 日時: 2008/08/08 22:05:08
- ID: 22643
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: IsDBNullでエラー
- 著者: H.K.R.
- 日時: 2008/08/08 23:15:39
- ID: 22646
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: IsDBNullでエラー
- 著者: ぽくお
- 日時: 2008/08/09 14:52:31
- ID: 22648
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[5]: IsDBNullでエラー
- 著者: H.K.R.
- 日時: 2008/08/09 18:08:50
- ID: 22651
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[6]: IsDBNullでエラー
- 著者: ぽくお
- 日時: 2008/08/11 9:32:30
- ID: 22654
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
データリーダーで、値を読み込むときに、フィールドの値がNULLであるか事前にチェックしています。
そこで、以下のようなエラーがでます。
'System.InvalidCastException' のハンドルされていない例外が Microsoft.VisualBasic.dll で発生しました。
追加情報 : 型 'DBNull' から型 'String' へのキャストが有効ではありません。
Dim dtReader As SqlDataReader
Dim sStr as String
If IsDBNull(dtReader.Item("フィールド名")) Then
sStr = dtReader.Item("フィールド名"))
End If
このような感じで、読み取りますが、今までは、うまくいったのに、
ある日突然、上のエラーになるようになって、どうにもならなくなります。
なにか環境がかわったせいなのかもしれませんが、回避する方法がなくて困っています。
dtReader.Item("フィールド名")自体は、値が入っていても、
NULLの場合でも、両方エラーになります。
フィールド名が、JANコードや○○コードのようにカタカナ交じりの場合になるような気がします。
dtReader.Item("フィールド名")をdtReader.Item("[フィールド名]")
と変えても、状況は同じです。
今のところ、該当する部分をスキップさせるした対処法がありません。
データベースを入れ換えるとうまくいきます。
ダメになったデータベースは、ずっとダメなままです。
データベースはMSDEです。
データが壊れているわけでもないのに、何かが変わってしまったのだと思うのですが、何が原因かわかりません。
どなたか分かる方、よろしくお願いします。