簡體   English   中英

vb.net 將復選框值插入 MS 服務器數據庫

[英]vb.net insert Checkbox value to the MS server database

我想將復選框值插入 MS 服務器數據庫但不起作用,顯示一些錯誤“未為字符串和復選框定義運算符'&'”

這是我的代碼和數據庫表名“test”列名“chk”,任何人都可以給我建議嗎? 謝謝!

 Protected Sub chk(sender As Object, e As EventArgs) Handles chk.CheckedChanged Dim connectionString As String = "data source=xxxxx;Initial Catalog=xxx;User Id=xxx;Password=xxx;Integrated Security=SSPI" Using cn2 As New SqlConnection(connectionString) Dim cmd2 As New SqlCommand If cbxIsCloud.Checked = True Then cmd2 = New SqlCommand("Insert into test (chk) VALUES (chk)", cn2) cn2.Open() cmd2.ExecuteNonQuery() cn2.Close() End If End Using

 <td> <asp:CheckBox runat="server" ID="chk" AutoPostBack="true" CssClass="uamCheckBox" Width="10px" /> </td>

我認為你在整個參數方面還有點偏離,像這樣的事情是我認為你需要去的地方

Protected Sub chk(sender As Object, e As EventArgs) Handles chk.CheckedChanged

 Dim connectionString As String = "data source=xxxxx;Initial Catalog=xxx;User Id=xxx;Password=xxx;Integrated Security=SSPI"
    Using cn2 As New SqlConnection(connectionString)
        Dim cmd2 As New SqlCommand
        If cbxIsCloud.Checked = True Then
            cmd2 = New SqlCommand("Insert into test (chk) VALUES (@chk)", cn2)
            cmd2.Parameters.Add("@chk", SqlDbSqlDbType.Bit).Value = chk.Value
            cn2.Open()
            cmd2.ExecuteNonQuery()
            cn2.Close()

        End If
    End Using
End Sub

你會注意到這里,我是專門輸入參數的,我正在查看復選框控件的值。 您上面的示例,您正在嘗試將復選框本身保存到數據庫中,這將不起作用或產生不希望的結果

需要注意的一件事是,我不能 100% 確定 DB 中 Test.Chk 的 DataType。 我假設它是 boolean 這里,但我記得從你原來的問題中,它看起來像你在保存字符串值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM