[英]Microsoft Access run-time error '3075' Syntax Error
我想使用后面帶有以下VBA的按鈕刪除數據庫中的某些內容。
不幸的是,這給了我一個運行時錯誤,我也不知道為什么。 我已經看過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
如果您能幫助我,那將很好。
MS Access數據庫中的Delete語句與SQL Server中的Delete語句完全不同。 在MS Access中,必須在刪除查詢中包括From語句。 因此,您的代碼將是:
DeleteSQL = "DELETE * FROM OpdrachtTaak WHERE opdrachtnr = " & Me.comboOpdracht.Value & " AND taaknr = " & Me.lstTaakMonteur.Value & " AND monteurcode = '" & Me.comboMonteur.Value & "'"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.