我有2个具有相同表格的数据库。 DBProduction和DBLocal都有testTable。如何用DBLocal替换DBProduction的testTable?在DBLocal的testTable中插入了一些新行和一些更新的行。
使用SQL Server 2008
答案 0 :(得分:3)
如果它们位于同一台服务器上并具有相同的表结构,则可以执行此操作:
Truncate Table DBProduction.dbo.testTable
Go
Insert Into DBProduction.dbo.testTable
Select * From DBLocal.dbo.testTable
如果它们位于不同的服务器上,您可以运行上面的truncate语句,然后右键单击DBProduction并选择Import Data。这将启动向导并为您导入数据。
编辑:
我还要补充一点,如果表结构不同,你应该Drop Table DBProduction.dbo.testTable
然后使用Import Data向导导入(并默认重新创建)DBProduction中的testTable。
编辑2:
如果要在将列设置为Identity时插入(不列出所有列),则需要执行以下操作:
Set Identity_Insert DBProduction.dbo.testTable On
Insert Into DBProduction.dbo.testTable
Select * From DBLocal.dbo.testTable
Set Identity_Insert DBProduction.dbo.testTable Off
这将暂时忽略身份播种。
HTH
百里