0
我想使用下面的VBA后面的按钮删除数据库中的某些内容。Microsoft Access运行时错误'3075'语法错误
不幸的是,它给了我一个运行时错误,我不知道为什么。我查看了Access如何给SQL语句返回,并且在SQL Server中,它不会给我带来任何错误。
VBA:
Private Sub btnDeleteTaak_Click()
If Not IsNull(Me.lstTaakMonteur) Then
If Not IsNull(Me.comboMonteur.Value) Then
If Not IsNull(Me.comboOpdracht.Value) Then
Dim DeleteSQL As String
DeleteSQL = "DELETE OpdrachtTaak WHERE opdrachtnr = " & Me.comboOpdracht.Value & " AND taaknr = " & Me.lstTaakMonteur.Value & " AND monteurcode = '" & Me.comboMonteur.Value & "'"
DoCmd.RunSQL (DeleteSQL)
Me.lstTaakMonteur.Requery
Else
MsgBox ("Er is geen opdracht geselecteerd")
End If
Else
MsgBox ("Er is geen monteur geselecteerd")
End If
Else
MsgBox ("Er is geen taak geselecteerd")
End If
End Sub
错误:
Syntax error (missing operator) in query expression 'OpdrachtTaak WHERE opdrachtnr = 1 AND taaknr = 6 AND monteurcode = 'LM1"
表结构OpdrachtTaak:
opdrachtnr NUMERIC(5) <pk,fk2> NOT NULL
taaknr NUMERIC(3) <pk, fk3> NOT NULL
tijdsduur NUMERIC(4,1) NULL
Monteurcode VARCHAR(3) <fk1> NULL
将是巨大的,如果你能帮助我。
也许它需要一个FROM子句?将SQL更改为'DELETE * FROM OpdrachtTaak WHERE opdrachtnr ...'? – Acantud
@Acantud哇,做了这项工作先生。不要相信我错过了。感谢你的回答。 – JoeriSmits
你打赌,有时只需要第二套眼睛 – Acantud