更新数据库中的200个表

时间:2018-09-26 04:24:11

标签: sql sql-server tsql

在SQL Server中,我有两个数据库,每个数据库都有几百个表。两个数据库中的表是90%相同的,每个数据库中大约有20个不同的表。我正在一个存储过程中,用它在database1中共享的表中的数据更新database2。

我正在考虑截断这些表,然后将这些表中的记录插入另一个数据库中,例如:

t‌runcate table database2.dbo.table2

s‌elect * 
into data‌‌‌base2.dbo.table2 
from database1.dbo.table1

这是执行此操作的最佳方法,并且比编写几百条这样的语句有更好的方法吗?‌

1 个答案:

答案 0 :(得分:1)

这可能会导致错误,因为该表已存在于数据库中(按照您的truncate命令)。给定查询将创建一个新表。

“选择* 进入data‌‌‌base2.dbo.table2-创建新表 来自database1.dbo.table1“  如果要使用相同的表结构和数据,则应为模式和数据生成脚本,然后在另一个数据库(DB2)上运行该脚本

  1. 右键单击数据库并选择任务->生成脚本
  2. 下一步->选择所需的表(选择所需的表)
  3. 下一步->单击高级->脚本的数据类型=模式和数据 另外,更改“ Existence--True”的存在检查
  4. 下一步并完成