【问题标题】:Inserting localserver database tables records into host server corresponds database tables records将localserver数据库表记录插入主机服务器对应数据库表记录
【发布时间】:2016-10-26 08:17:24
【问题描述】:

我已通过链接服务器与我的本地服务器连接到托管服务器。

我在本地服务器上有数据库 AA1 和相关表 aa1、aa2、aa3、aa4,我在主机服务器上也有数据库 AA2 和相关表 aa1、aa2、aa3、aa4。

每个本地服务器数据库AA1表中有50条记录, 数千条记录到每个主机服务器数据库 AA2 表中。

现在我想将我所有的本地服务器数据库 AA1 表记录插入到相应的主机服务器数据库 AA2 表中。这样,在主机服务器数据库中插入所有表数据后,主机服务器数据库 AA2 就会消失在 aa1、aa2、aa3、aa4 表中的所有数千条记录,并且只有我的本地服务器数据库 AA1 数据到相应的表中。

帮助我处理 SQL Server 查询。 提前致谢

【问题讨论】:

  • 请有人帮我提供合适的答案

标签: sql-server database


【解决方案1】:

如果我理解您的问题,您想用本地表替换远程表。如果是这种情况,请截断远程服务器上的表,然后将本地表插入远程表中。

要截断表格,您可以使用:

EXEC ('TRUNCATE TABLE aa2.dbo.aa1') AT [LINKEDSERVER]
EXEC ('TRUNCATE TABLE aa2.dbo.aa2') AT [LINKEDSERVER]
EXEC ('TRUNCATE TABLE aa2.dbo.aa3') AT [LINKEDSERVER]

然后,将本地记录插入远程服务器。

INSERT INTO [LINKEDSERVER].aa2.dbo.aa1 
SELECT * FROM aa1.dbo.aa1

INSERT INTO [LINKEDSERVER].aa2.dbo.aa2
SELECT * FROM aa1.dbo.aa2

INSERT INTO [LINKEDSERVER].aa2.dbo.aa3
SELECT * FROM aa1.dbo.aa3

【讨论】:

  • 这可能没有截断或删除...?
  • 如果要将数据保留在远程主机上,则不要执行截断部分,只需执行插入语句即可。
  • 我想把远程服务器的所有数据都替换成本地服务器数据
  • 这需要很长时间,因为我在两台服务器上都有一百多个表,我需要替换所有这些表数据
  • 除了截断或删除之外还有其他的sql查询吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多