2014/9/28

Question:
VB.net裡擷取資料庫的資料,
不管用datareader或dataset或其他的物件,
如果資料表中的資料是null值,都會出現DBNull的錯誤訊息。
其實也沒有很難解,只是要養成習慣來寫程式才不會一直發生錯誤。

Solve:
方法一:使用資料前先利用DBNull.Value來檢查是不是null值

Dim dr As DataReader
Dim value As String

If dr.Item("info") Is DBNull.Value Then
  value = ""
Else
  value = dr.Item("info")
End If

最簡單的就是判斷是不是null,空的塞空白~
不過上例是接一個資料表中的值而已,
若10個以上想必就是杯具了...

方法二:ToString()

Dim dr As DataReader
Dim value As String

value = dr.Item("info").ToString()

ToString會自動將DBNull轉換成空白~
養成習慣每個都加ToString就不會怕DBNull的錯誤訊息一直發生囉!


1 意見:

  1. 網誌管理員已經移除這則留言。

    回覆刪除