Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 合并四个访问表的脚本_Sql_Ms Access_Vba_Ms Access 2007 - Fatal编程技术网

Sql 合并四个访问表的脚本

Sql 合并四个访问表的脚本,sql,ms-access,vba,ms-access-2007,Sql,Ms Access,Vba,Ms Access 2007,我正在尝试编写一个access脚本,该脚本将只在一个表和下一个表之间添加不存在的记录,跟踪哪些记录未合并,并保留我将要更新的第二个表之间的关系。我无法理解如何使用VBA或SQL将源表中的数据插入到目标表中不存在的目标表中。 当表B中没有两个行字段时,有人能为我提供一种将数据从表a复制到表B的方法吗? 例如,我有四行的表A,还有另外四行的表B。我希望复制表A中的所有数据,其中X和Y字段的值在表B的X和Y字段中都不存在。 先谢谢你 INSERT INTO tableB (columns) SELEC

我正在尝试编写一个access脚本,该脚本将只在一个表和下一个表之间添加不存在的记录,跟踪哪些记录未合并,并保留我将要更新的第二个表之间的关系。我无法理解如何使用VBA或SQL将源表中的数据插入到目标表中不存在的目标表中。 当
表B
中没有两个行字段时,有人能为我提供一种将数据从
表a
复制到
表B
的方法吗? 例如,我有四行的
表A
,还有另外四行的
表B
。我希望复制
表A
中的所有数据,其中
X
Y
字段的值在
表B
X
Y
字段中都不存在。 先谢谢你

INSERT INTO tableB (columns)
SELECT [values]
FROM tableA AS A
LEFT OUTER JOIN tableB AS B
ON (A.X = B.X AND A.Y = B.Y)
WHERE B.X IS NULL

外部联接将包括表B中没有值的条目,以及仅在这些行上的where过滤器

感谢您的快速回答。我试过你的建议,它说“重复输出目标'PID'”。字段PID是两个表中的主键字段,并且两个表中的某些主键相同。如何修复此错误?PID是否设置为自动增量?如果是这样,您可以将其从insert语句中删除。如果不是,那么快速而肮脏的解决方案将是使用类似于SELECT A.PID+1000的东西来确保没有重叠。这不是一个长期的解决方案,虽然它在两个表中都设置为自动递增,所以我不包括它。谢谢你的帮助。如果答案对你有用,你可以接受它,这有助于其他用户寻找类似的答案(并提高我的分数)