SQL Server 2008:如何将数据从DB1中的表复制到DB2中的表?

时间:2010-10-21 19:52:55

标签: sql-server sql-server-2008

我在同一台服务器上有两个相同的数据库。在部署过程中,我在数据库A中的表中有数据需要复制到数据库B中的表中。编程完成此任务的最简单方法是什么?

编辑:

  • 表格有标识列。
  • 存在具有外键约束的表,因此插入顺序很重要。
  • 需要复制所有行。据我所知,情况总是如此。

2 个答案:

答案 0 :(得分:4)

假设表没有标识列并且属于默认(dbo)模式,请尝试下面的TSQL插入查询;

Insert Into DatabaseB.dbo.DestinationTable
Select * From DatabaseA.dbo.SourceTable

如果您有一个标识列,则执行以下语句

    SET IDENTITY_INSERT DatabaseB.dbo.DestinationTable ON
GO

        Insert Into DatabaseB.dbo.DestinationTable
        Select * From DatabaseA.dbo.SourceTable
GO

    SET IDENTITY_INSERT DatabaseB.dbo.DestinationTable OFF
GO

答案 1 :(得分:2)

如果数据库位于不同的服务器中:

exec sp_addlinkedserver ServerA

Insert Into DatabaseB.dbo.DestinationTable
Select * From ServerA.DatabaseA.dbo.SourceTable