我正在开发一个项目,我的需求只是将数据库从本地服务器更新到目标服务器(所有表,视图,函数,行和存储过程)。
现在我想将本地数据库表与目标数据库表进行比较,并将新插入的行从本地数据库插入目标表。
E.g。 :我有一个数据库dbsource
和dbDestination
,并且都包含一个表table1
。现在我将新行插入dbsource.table1
。
现在我想比较两个数据库表并将新行插入目标表。
请帮帮我。
答案 0 :(得分:1)
为什么重新发明轮子?有许多商业应用已经为您做到了这一点:
答案 1 :(得分:0)
假设两个Table1表都有一个主键(唯一)列,您可以在这里实现它。我将PK列ID命名为:
INSERT INTO DBDESTINATION.<SCHEMA_NAME>.TABLE1
(SELECT T1.* FROM DBSOURCE.<SCHEMA_NAME>.TABLE1 AS T1
LEFT OUTER JOIN DBDESTINATION.<SCHEMA_NAME>.TABLE1 AS T2 ON T1.ID=T2.ID
WHERE T2.ID IS NULL)
希望有所帮助。