我在vba access中运行此行时出现3075错误:
Dim sqlMZG As String
sqlMZG = "SELECT MAZeitenGesamt.* Where MAZeitenGesamt.MA = 'JPA' FROM MAZeitenGesamt;"
JPA是一个常数值。我尝试了以下表格,但都没有。
SELECT MAZeitenGesamt.* Where MAZeitenGesamt.[MA] = '" & "JPA" & "' FROM MAZeitenGesamt;
SELECT MAZeitenGesamt.* Where MAZeitenGesamt.MA = '" & "JPA" & "' FROM MAZeitenGesamt;
SELECT MAZeitenGesamt.* Where MAZeitenGesamt.MA = ""JPA"" FROM MAZeitenGesamt;
SELECT MAZeitenGesamt.* Where MAZeitenGesamt.MA = \"JPA\" FROM MAZeitenGesamt;
SELECT MAZeitenGesamt.* Where MAZeitenGesamt.MA = \'JPA\' FROM MAZeitenGesamt;
有什么想法吗?
答案 0 :(得分:2)
我建议您使用参数而不是引用文字。也就是说,@ gizlmeier是对的,因为你的语法开头是错误的。
Dim sqlMZG As String
sqlMZG = "parameters [MAParam] text; " & _
"SELECT MAZeitenGesamt.* FROM MAZeitenGesamt Where MAZeitenGesamt.MA = [MAParam];"
从那里,当您创建查询时,您可以设置参数的值:
Set qry = CurrentDb.CreateQueryDef("GetMaz", sqlMZG)
qry.Parameters("MAParam") = JPA
没有凌乱的引用担心等等。