2017-03-01 49 views
0

插入我有兩個數據庫從表中複製數據,並在不同的SQL Server數據庫

  • databaseone
  • databasetwo

,我必須在數據庫中類似的表,表的名字tableemployeedetails

在我databaseone,我有表tableemployeedetails 500列。

在我databasetwo,我有表tableemployeedetails 10列。

,因爲我想將數據插入到不同的數據庫,我不能使用insert into select query

什麼是我的情況要做到這一點的最好方法是什麼?

我只是想在這兩個數據庫

+0

你爲什麼不能插入到不同的數據庫? – Azar

回答

1

試試這個合併tableemployeedetails

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

如果這兩個數據庫有不同的記錄,那麼你需要兩個INSERT語句如下。如果他們有相同的,那麼你需要更喜歡哪些數據庫記錄是最新的,然後寫入更新除了下面的插入。

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 
相關問題