如何使用 vb.net 中的 sql 语句更新 table 的多个字段?
how to update multiple fields of a table using a sql statement in vb.net?
当尝试使用表单更新多个字段时,我收到一条错误消息 "No value given for one or more required parameters." 在 .ExecuteNonQuery() 中有人可以澄清我是否应该为我正在更新的字段使用 .AddwithValue 吗?还是我的 "WHERE" 字段? (RunnerID) 提前致谢
(我有一个 public class 来设置数据库连接,我已经导入了 Oledb 并且能够在我的另一个表单中将布尔字段更新为 True。)
Private Sub ChangeBtn_Click(sender As Object, e As EventArgs) Handles ChangeBtn.Click
conn.Open()
Dim sqlQuery As String = "UPDATE tblPersonal SET Phone = @Phonetxt, Email = @Emailtxt, Age = @Agetxt, Full_Name = @Nametxt, Login_Key = @Passwordtxt WHERE RunnerID = @RunnerIDtxt"
Dim sqlCommand As New OleDbCommand
With sqlCommand
.CommandText = sqlQuery
.Parameters.AddWithValue("@Phonetxt", Phonetxt.Text)
.Parameters.AddWithValue("@Emailtxt", Emailtxt.Text)
.Parameters.AddWithValue("@Agetxt", Agetxt.Text)
.Parameters.AddWithValue("@Nametxt", Nametxt.Text)
.Parameters.AddWithValue("@Passwordtxt", Passwordtxt.Text)
.Connection = conn
.ExecuteNonQuery()
End With
conn.Close()
End Sub
您没有提供足够的参数。您的查询有 6 个参数,而您只为其中的 5 个参数指定了值。
您需要为 @RunnerIDtxt
提供一个值。
当尝试使用表单更新多个字段时,我收到一条错误消息 "No value given for one or more required parameters." 在 .ExecuteNonQuery() 中有人可以澄清我是否应该为我正在更新的字段使用 .AddwithValue 吗?还是我的 "WHERE" 字段? (RunnerID) 提前致谢
(我有一个 public class 来设置数据库连接,我已经导入了 Oledb 并且能够在我的另一个表单中将布尔字段更新为 True。)
Private Sub ChangeBtn_Click(sender As Object, e As EventArgs) Handles ChangeBtn.Click
conn.Open()
Dim sqlQuery As String = "UPDATE tblPersonal SET Phone = @Phonetxt, Email = @Emailtxt, Age = @Agetxt, Full_Name = @Nametxt, Login_Key = @Passwordtxt WHERE RunnerID = @RunnerIDtxt"
Dim sqlCommand As New OleDbCommand
With sqlCommand
.CommandText = sqlQuery
.Parameters.AddWithValue("@Phonetxt", Phonetxt.Text)
.Parameters.AddWithValue("@Emailtxt", Emailtxt.Text)
.Parameters.AddWithValue("@Agetxt", Agetxt.Text)
.Parameters.AddWithValue("@Nametxt", Nametxt.Text)
.Parameters.AddWithValue("@Passwordtxt", Passwordtxt.Text)
.Connection = conn
.ExecuteNonQuery()
End With
conn.Close()
End Sub
您没有提供足够的参数。您的查询有 6 个参数,而您只为其中的 5 个参数指定了值。
您需要为 @RunnerIDtxt
提供一个值。