为什么我不能删除 table 中的行
Why Cant i delete rows in a table
我无法删除 table 中的行
它没有提出任何错误信息
con 已用于其他语句并且工作正常
textbox1 是只读的,并从填充了 "Driver" 列值的列表框中获取输入
而 check() 只是刷新包含值
的列表框
con.Open()
Try
success = True
Dim cmd As New SqlCommand("DELETE FROM Driver WHERE Driver='" & TextBox1.Text & "';", con)
Catch ex As Exception
MsgBox(ex.Message)
success = False
End Try
If success Then
MsgBox("Success")
End If
con.Close()
check()
你永远不会执行命令。添加对 SqlCommand::ExecuteNonQuery
的调用
Dim cmd As New SqlCommand("DELETE FROM Driver WHERE Driver='" & TextBox1.Text & "';", con)
cmd.ExecuteNonQuery() ' added
也就是说,在向 sql 语句添加值时,您应该 不 使用字符串连接。而是使用可防止 sql 注入攻击的参数。
Dim cmd As New SqlCommand("DELETE FROM Driver WHERE Driver= @driver", con)
cmd.Parameters.Add("@driver", SqlDbType.VarChar).Value = TextBox1.Text ' add parameter
cmd.ExecuteNonQuery() ' added
假设
Driver
是 table 中同名的列 Driver
。如果不是这种情况,那么您不理解 table 和列或基本形式为 DELETE FROM [TABLE] WHERE [condition on one or more columns]
的 DELETE 语句
我无法删除 table 中的行 它没有提出任何错误信息 con 已用于其他语句并且工作正常 textbox1 是只读的,并从填充了 "Driver" 列值的列表框中获取输入 而 check() 只是刷新包含值
的列表框 con.Open()
Try
success = True
Dim cmd As New SqlCommand("DELETE FROM Driver WHERE Driver='" & TextBox1.Text & "';", con)
Catch ex As Exception
MsgBox(ex.Message)
success = False
End Try
If success Then
MsgBox("Success")
End If
con.Close()
check()
你永远不会执行命令。添加对 SqlCommand::ExecuteNonQuery
Dim cmd As New SqlCommand("DELETE FROM Driver WHERE Driver='" & TextBox1.Text & "';", con)
cmd.ExecuteNonQuery() ' added
也就是说,在向 sql 语句添加值时,您应该 不 使用字符串连接。而是使用可防止 sql 注入攻击的参数。
Dim cmd As New SqlCommand("DELETE FROM Driver WHERE Driver= @driver", con)
cmd.Parameters.Add("@driver", SqlDbType.VarChar).Value = TextBox1.Text ' add parameter
cmd.ExecuteNonQuery() ' added
假设
Driver
是 table 中同名的列 Driver
。如果不是这种情况,那么您不理解 table 和列或基本形式为 DELETE FROM [TABLE] WHERE [condition on one or more columns]