如何将表从一个数据库复制到另一个数据库?

时间:2016-06-01 14:27:35

标签: sql copy mysql-management

我想将一些表从我的DB1复制到我的DB2。 DB1中的表与DB2上的表相同,但表中的数据不同。我想将表从DB1复制到DB2,但要在DB2上保留旧表和数据。我如何使用Microsoft SQL Server Management Studio执行此操作?我试图右键单击并执行导出,但在我必须单击“完成”按钮之前,看起来这样只会将所有数据从DB1转移到DB2,我不希望这样。如果有人可以帮忙解决这个问题,请告诉我。谢谢。

4 个答案:

答案 0 :(得分:1)

如果您不想修改它们,可以使用其他名称将表格从DB1导出到DB2。在导出向导中,只需更改目标表的名称。

答案 1 :(得分:1)

USE db2;

CREATE TABLE table2 LIKE db1.table1;

INSERT INTO table2  
    SELECT * FROM db1.table1;

这也是一种将表及其某些数据库的条目复制到另一个数据库的方法。

答案 2 :(得分:0)

所以你想将DB1中的模式和数据合并到DB2中吗?

你应该列出确切的要求,即使有这些信息,问题仍然模糊不清。 你想保留什么数据,什么可以吹灭? 您要保留什么架构,是否存档旧表?更改表名?

如果您真的试图将db1合并到db2中,那么您的问题将是管理将被重新分配的关系ID,因为DB2可能已经在使用DB1中存在的ID。

答案 3 :(得分:0)

如果您想将旧数据保留在目标表中(或者更新它),那么您可以使用Merge

MERGE INTO db2.dbo.table1 B
USING (
  SELECT *
  FROM db1.dbo.table1) A
ON (A.Column1 = B.Column1 )
WHEN MATCHED THEN
  -- update
WHEN NOT MATCHED THEN
  -- insert new rows