(我编写VB.NET并使用ms access 2016作为数据库)
我执行此查询但没有任何反应。我想知道什么是错的。我运行时没有错误。我调试了它,变量中的所有值也是正确的。
我的数据库中也没有发生任何变化
System.Double
答案 0 :(得分:3)
问题是MS Access没有命名的参数 - 而是位置参数。
因此必须指定 正确顺序中的参数,这些参数会出现在SQL语句中。你现在正在做 。
将您的代码更改为:
If Not (TextBoxID.Text = "" Or TextBoxNama.Text = "") Then
Try
Dim sqlquery As String = "UPDATE tblEmployees SET Nama = @nama WHERE IDEmployee = @ide"
Dim sqlcommand As New OleDbCommand
With sqlcommand
.CommandText = sqlquery
.Parameters.AddWithValue("@nama", TextBoxNama.Text)
.Parameters.AddWithValue("@ide", TextBoxID.Text)
.Connection = FormMain.conn
.ExecuteNonQuery()
在设置@nama
的值之前,您必须为@ide
第一次设置值,因为这是订单其中这些参数出现在MS Access SQL语句中。