从表复制数据并插入不同的SQL Server数据库

时间:2017-03-01 06:17:56

标签: sql-server database

我有两个数据库

  • databaseone
  • databasetwo

我在数据库中有一个类似的表,表的名称是tableemployeedetails

在我的databaseone中,表tableemployeedetails中有500列。

在我的databasetwo中,表格tableemployeedetails中有10列。

我无法使用insert into select query因为我想将数据插入到不同的数据库中。

在我的情况下,最好的方法是什么?

我只想在两个数据库中合并tableemployeedetails

2 个答案:

答案 0 :(得分:0)

试试这个,

    insert into databasetwo..tableemployeedetails
    SELECT * FROM databaseone..tableemployeedetails  A
    WHERE NOT EXISTS (SELECT 1 FROM databasetwo..tableemployeedetails B
                      WHERE A.COLUMN=B.COLUMN
                      )

答案 1 :(得分:0)

如果两个数据库都有不同的记录,那么您需要两个插入语句,如下所示。如果它们相同,那么您需要更喜欢哪些数据库记录是最新的,然后在下面的插入中添加更新。

insert into databasetwo..tableemployeedetails
SELECT * FROM databaseone..tableemployeedetails  d1
    left join databasetwo..tableemployeedetails d2 on A.PKKEY=B.PKKEY
    where d2.PKKEY is null

insert into databaseone..tableemployeedetails
SELECT * FROM databasetwo..tableemployeedetails  d2
    left join databaseone..tableemployeedetails d1 on A.PKKEY=B.PKKEY
    where d1.PKKEY is null