这个问题非常奇怪,我认为与Access本身有关。
我试图以这种方式插入(真正的简化版本,但无论如何错误都是一样的):
INSERT INTO phones(a, b)
select * from ( select C, D from banks) AS BB;
访问返回错误,说:
指令INSERT INTO包含未知字段C
然后我尝试了另一个看起来相同的查询:
INSERT INTO phones(a, b)
select BB.* from ( select C, D from banks) AS BB;
错误:字段数不匹配。
但是没有子查询的查询工作真棒!
INSERT INTO phones(a, b)
select C, D from banks;
这就错了吗?
答案 0 :(得分:0)
正如我现在所看到的,Access无法匹配字段本身,这就是为什么子查询中的名称应该相同:
INSERT INTO phones(a, b)
select * from ( select C as a , D as b from banks) AS BB;
浪费了超过1小时才能解决。