2013-05-07 92 views
0

我有一個帶有gridview的VB頁面。 gridview允許用戶添加一個值並用它更新數據庫。類型是Double。如果用戶將數值從數字更改爲空白,如何將單元格的值設置爲NULL。例如gridview中的值爲10,並且它們將其刪除,我希望DB返回NULL。從VB更新SQL單元格爲NULL

我試過以下,但它沒有改變任何東西。

If text = "" Then 
        amendedvalue = Nothing 
       Else 
        amendedvalue = CDbl(CType(gv.Rows(x).Cells(2).FindControl("txtstartH"), TextBox).Text) 

        UpdateData(amendedvalue, id) 
       End If 

回答

0
If text = "" Then 
    UpdateData(DBNull.Value, id) 
Else 
    amendedvalue = CDbl(CType(gv.Rows(x).Cells(2).FindControl("txtstartH"), TextBox).Text) 
    UpdateData(amendedvalue, id) 
End If 

這將解決您的問題

+0

嗨,作爲amendedvalue是雙重它指出錯誤價值類型爲「System.DBNull」不能轉換爲「雙師型」 – Silentbob 2013-05-07 09:42:04

+0

編輯您的' UpdateData'參數設置爲'UpdateData(byval revisedvalue as Nullable(of Double),byval id as integer)'這樣就可以了 – 2013-05-07 09:44:12

+0

它的奇怪我仍然在DBNull.value上發生錯誤 – Silentbob 2013-05-07 10:05:21