我想删除数据库中与SerialNo
相关的记录。
这是我的代码:
Using con = New MySqlConnection("server=" & server & ";" & "user id=" & userid & ";" & "password=" & password & ";" & "database=" & database)
con.Open()
Dim sqlText = "DELETE * FROM datatable WHERE SerialNo = @ulogin"
Using cmd = New MySqlCommand(sqlText, con)
cmd.Parameters.AddWithValue("@ulogin", frmmain.txtinput.Text)
cmd.ExecuteNonQuery()
End Using
con.Close()
End Using
该代码不起作用。当我运行该程序时,出现以下错误:
请善意地提出合适的解决方案。
注意:221 表示输入的数字。
最佳答案
*
不属于。您不能仅删除记录中的特定列。您要么删除整个记录,要么不执行任何操作,因此 DELETE
语句没有列列表部分。
当我在这里时,无需调用 con.Close()
(Using
block 会为您处理该问题),并且最好避免 AddWithValue()
支持 Add()
重载,让您明确参数类型。
Const sqlText As String = "DELETE FROM datatable WHERE SerialNo = @ulogin"
Using con As New MySqlConnection("server=" & server & ";" & "user id=" & userid & ";" & "password=" & password & ";" & "database=" & database), _
cmd AS New MySqlCommand(sqlText, con)
cmd.Parameters.Add("@ulogin", MySqlDbType.Int32).Value = frmmain.txtinput.Text
con.Open()
cmd.ExecuteNonQuery()
End Using
关于vb.net - 在VB.NET中从SQL数据库中删除记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41702461/