4

我需要根据用户的输入将文本MALEFEMALE插入表中。

我曾经使用以下代码插入,但如果没有选择(男性/女性) ,则代码插入值1

query = "INSERT INTO student_profile_table(gender) VALUES(@gender)"
cmd = New SqlCommand(query, con)

If rbtmale.Checked = True Then
   cmd.Parameters.AddWithValue("@gender", "Male")
ElseIf rbtfemale.Checked = True Then
   cmd.Parameters.AddWithValue("@gender", "Female")
Else
   cmd.Parameters.AddWithValue("@gender", vbNull)
End If

con.Open()
cmd.ExecuteNonQuery()
con.Close()

需要一些建议/更正

4

3 回答 3

8

我相信你想要System.DbNull.Value而不是vbNull.

System.DbNull.Value是 SQL Server 理解为 null 的常量。

vbNull旨在指示 Variant 类型是否为空。

于 2013-08-12T13:56:17.543 回答
0

我在网上搜索过,但没有得到答案。我所做的是,如果没有图片将被保存,我将使用存储为默认图片的空白图片(全白图片)。希望这会有所帮助。

于 2016-12-13T08:53:37.810 回答
0

我以这种方式解决了它以设置 NULL 值。

 If yourVariable Is Nothing Then
    comm.Parameters.AddWithValue("@detalleDesc", DBNull.Value)
Else
    comm.Parameters.AddWithValue("@detalleDesc", yourVariable )
End If

问候

于 2020-03-04T19:58:51.167 回答