VB.net - ms访问SQL更新查询中的语法错误

时间:2017-02-09 11:24:02

标签: vb.net ms-access

我已经在vb.net中使用access数据库准备了我的项目,但是我在更新声明中遇到了#34;语法错误等错误"

我使用了以下代码:

Dim cn As New OleDb.OleDbConnection
Dim cm As New OleDb.OleDbCommand
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\NAV Vikram\DATABASE NAVPREET.mdb"
cn.Open()
cm.Connection = cn
cm.CommandText = "UPDATE DATAENTRY2  set [DIAGNOSIS]='" & TextBox13.Text & "',WHERE[opdno]='" & TextBox1.Text & "' "
cm.ExecuteNonQuery()

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:1)

WHERE之前省略cm.CommandText = "UPDATE DATAENTRY2 set [DIAGNOSIS]='" & TextBox13.Text & "',WHERE[opdno]='" & TextBox1.Text & "' " 并在其后添加空格。变化:

cm.CommandText = "UPDATE DATAENTRY2  set [DIAGNOSIS]='" & TextBox13.Text & "' WHERE [opdno]='" & TextBox1.Text & "' "

为:

// includes.c
#include <stdio.h>

同样使用SQL参数。 (不太热衷于向vb展示你的例子)

答案 1 :(得分:0)

您的查询中存在语法错误。请删除在查询的where子句之前使用过的逗号(,),因为它用于分隔两个不同的列

Dim cn As New OleDb.OleDbConnection
Dim cm As New OleDb.OleDbCommand
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\NAV Vikram\DATABASE NAVPREET.mdb"
cn.Open()
cm.Connection = cn
cm.CommandText = "UPDATE DATAENTRY2  set [DIAGNOSIS]='" & TextBox13.Text & "' WHERE[opdno]='" & TextBox1.Text & "' "
cm.ExecuteNonQuery()