2014-08-30 27 views
0

我有下表组合物1,PRO,COMPRADO和下一个SQL查询和参数fecha1,fecha2,买办加入,并在那里与参数子句

此返回语法错误在查询

什么是错的这个代码? (是一个字符串的SQL ADODB VBA Excel宏)

SELECT DISTINCT compi.DOCCOMPI,compi.FECHCOMPI,compi.MACOD,compi.MANOM,compi.MAREF, 
    compi.MADIM,compi.CPCOMPI,compi.MAUNI,pro.PRONOM,comprado.NOMBRE 
FROM comprado 
INNER JOIN compi ON comprado.CODIGO=compi.COMPRADOR 
INNERJOIN pro ON compi.NITCOMPI=pro.PRONIT 
WHERE compi.TEMPCOMPI='h' AND 
    compi.FECHCOMPI BETWEEN " & "#" & fecha1 & "#" & 
    "AND " & "#" & fecha2 & "#" & " AND 
    comprado.CODIGO=" & comprador & " 
+0

你'innerjoin'需要空间,我敢肯定''&''最后的东西也不是有效的sql。它看起来像MS Access VBA? – Andomar 2014-08-30 18:20:56

+0

你使用了什么数据库? – 2014-08-30 18:22:29

+0

Adomar tahnk你为你的及时答案我有空间,不工作 – 2014-08-30 18:23:12

回答

0

尝试删除空间内的连接,并使用单引号的字符串,而不是双引号:

SELECT DISTINCT compi.DOCCOMPI,compi.FECHCOMPI,compi.MACOD,compi.MANOM,compi.MAREF, 
    compi.MADIM,compi.CPCOMPI,compi.MAUNI,pro.PRONOM,comprado.NOMBRE 
FROM comprado 
INNER JOIN compi ON comprado.CODIGO=compi.COMPRADOR 
INNER JOIN pro ON compi.NITCOMPI=pro.PRONIT 
WHERE compi.TEMPCOMPI='h' AND 
    compi.FECHCOMPI BETWEEN ' & "#" & fecha1 & "#" & 
    ' AND ' & "#" & fecha2 & "#" & ' AND 
    comprado.CODIGO=' & comprador & '