有些人可以帮我解决这个问题吗?我已经看到很多类似这类问题的问题,但我仍然无法找到解决方案?
myConnection.Open()
Dim cmd As OleDbCommand = myConnection.CreateCommand()
cmd.CommandType = CommandType.Text
cmd.CommandText = "UPDATE Register SET [Name]=@Name, Email=@Email, Password=@Password, Mobile=@Mobile, Address=@Address, Blood=@Blood WHERE Name='Name'"
cmd.ExecuteNonQuery()
myConnection.Close()
MsgBox("Your record update successfully !")
答案 0 :(得分:0)
您的查询已参数化,但未提供所需参数。
例如:
Xamarin.Forms
条件cmd.CommandText = "UPDATE Register SET Email=@Email, Password=@Password, Mobile=@Mobile, Address=@Address, Blood=@Blood WHERE Name=@Name"
cmd.Parameters.Add("@Name", SqlDbType.String).Value = NameTextBox.Text
cmd.Parameters.Add("@Email", SqlDbType.String).Value = EmailTextBox.Text
cmd.Parameters.Add("@Password", SqlDbType.String).Value = "XYZ" 'Must be hashed
cmd.Parameters.Add("@Mobile", SqlDbType.String).Value = "111-111-1111"
cmd.Parameters.Add("@Address", SqlDbType.String).Value = "100 King Street"
cmd.Parameters.Add("@Blood", SqlDbType.String).Value = "A+"
cmd.ExecuteNonQuery()
也很奇怪。我相信它也应该参数化,但是通过名称更新记录仍然不是一个好习惯,你应该使用ID。