2016-01-13 203 views
1

我在ACCESS.I上使用VBA有奇怪的问题。这里的主要是查询INSERT INTO SELECT无法正常工作

INSERT INTO [Temp2] ([Prodotto pulizie],Materiale,Compatibility) VALUES 
(SELECT CD.[Prodotto pulizie],CD.Materiale,CD.Risultato 
FROM [Compatibilità_detergenti] as CD 
WHERE CD.[Prodotto pulizie] = 'P1' and CD.Fonte = 'INTERNA' and CD.Materiale = 'ABS;); 

它告诉我,有一个sintax错误,但如果我尝试插入和他们的工作选择separatley,其实

INSERT INTO [Temp2] ([Prodotto pulizie],Materiale,Compatibility) VALUES ('P1','INTERNA','ABS')作品!

SELECT CD.[Prodotto pulizie],CD.Materiale,CD.Risultato 
FROM [Compatibilità_detergenti] as CD 
WHERE CD.[Prodotto pulizie] = 'P1' and CD.Fonte = 'INTERNA' and CD.Materiale = 'ABS; 

作品! SELECT返回我手动插入INSERT的记录。 所以基本上这个问题只出现在我合并插入和选择,是否有任何sintax错误,你可以看到?

回答

2

我不知道VBA,但当我检查你的查询你写VALUES。删除此根据MySQL的 试试这个

INSERT INTO [Temp2] ([Prodotto pulizie],Materiale,Compatibility) 
SELECT CD.[Prodotto pulizie],CD.Materiale,CD.Risultato 
FROM [Compatibilità_detergenti] as CD 
WHERE CD.[Prodotto pulizie] = 'P1' and CD.Fonte = 'INTERNA' and CD.Materiale = 'ABS'; 

INSERT INTO...SELECT for all MySQL columns

+0

粘贴您的代码,但告诉我语法错误在WHERE线 – nescionomen93

+0

真的感谢它的工作原理,但你是怎么改? – nescionomen93

+0

我在查询中做了两处更改,第一个删除了'VALUES',第二个是最后一个单独的''''。 –