如何在vb.net中使用sql语句更新表的多个字段?

如何在vb.net中使用sql语句更新表的多个字段?,sql,vb.net,visual-studio,.net-4.0,Sql,Vb.net,Visual Studio,.net 4.0,尝试使用表单更新多个字段时,我收到一条错误消息“没有为一个或多个必需参数提供值”。在.ExecuteNonQuery()处,是否有人可以澄清我是否应该为正在更新的字段使用.AddwithValue;还是我的“哪里”字段?(RunnerID)提前谢谢 (我有一个设置数据库连接的公共类,我已经导入了Oledb,并且能够在我的另一个表单中将布尔字段更新为True。) 您没有提供足够的参数。您的查询有6个参数,您只为其中5个指定值 您需要为@RunnerIDtxt提供一个值,错误消息非常清楚。。。您缺少

尝试使用表单更新多个字段时,我收到一条错误消息“没有为一个或多个必需参数提供值”。在.ExecuteNonQuery()处,是否有人可以澄清我是否应该为正在更新的字段使用.AddwithValue;还是我的“哪里”字段?(RunnerID)提前谢谢

(我有一个设置数据库连接的公共类,我已经导入了Oledb,并且能够在我的另一个表单中将布尔字段更新为True。)


您没有提供足够的参数。您的查询有6个参数,您只为其中5个指定值


您需要为
@RunnerIDtxt

提供一个值,错误消息非常清楚。。。您缺少
@RunnerIDtxt
的参数绑定。希望@Passwordtxt不是纯文本密码,对此表示抱歉。。我对Vb很陌生。我不明白我需要为我正在更改的字段和我正在引用的字段添加参数绑定。@SvampebobCameron要回答您的第二个问题,您需要为查询中指定的所有参数提供绑定。我真的需要为RunnerIDtxt指定值吗?
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