【发布时间】:2018-05-23 08:02:55
【问题描述】:
我有一个用于归档和删除的查询。存储过程正在将数据从链接服务器获取到另一台服务器。然后 sp 正在从源服务器中删除插入的行。
--Table_B and A parameterized. They can change with parameter
INSERT INTO [Server_1].[DB_1].[dbo].[Table_A_1] (ColumnList1)
--ColumnList has a lot of columns like Column1,Column2
SELECT ColumnList FROM [Server_2].[DB_2].[dbo].[Table_B_1] WHERE (Condition);
DELETE FROM [Server_2].[DB_2].[dbo].[Table_B_1] WHERE (Condition);
INSERT INTO [Server_1].[DB_1].[dbo].[Table_A_2] (ColumnList1)
SELECT ColumnList FROM [Server_2].[DB_2].[dbo].[Table_B_2] WHERE (Condition);
DELETE FROM [Server_2].[DB_2].[dbo].[Table_B_2] WHERE (Condition);
INSERT INTO [Server_1].[DB_1].[dbo].[Table_A_3] (ColumnList1)
SELECT ColumnList FROM [Server_2].[DB_2].[dbo].[Table_B_3] WHERE (Condition);
DELETE FROM [Server_2].[DB_2].[dbo].[Table_B_3] WHERE (Condition);
INSERT INTO [Server_1].[DB_1].[dbo].[Table_A] (ColumnList1)
SELECT ColumnList FROM [Server_2].[DB_2].[dbo].[Table_B] WHERE (Condition);
DELETE FROM [Server_2].[DB_2].[dbo].[Table_B] WHERE (Condition);
当我手动运行 sp 通常它正在工作。但有时 sp 会给出如下错误。此外,当我尝试从 Windows 服务运行 sp 时,它经常会出错。 Table_B_1、Table_B_2 和 Table_B_3 正在收集(它们是 Table_B 的数据,如数字、文件等),但 Table_B(主要和重要的表)没有收集。
链接服务器“Server_2”的 OLE DB 提供程序“SQLNCLI11”报告了表“DB_2”的架构版本在编译时间(“185688636079091”)和运行时间(“185718681838570”)之间发生了变化。“dbo”。表_B""。
如果我开始服务工作超过 50-60 次,参数大约 10 个表正在归档,但其他表没有。我需要一个解决方案。
SQL Server 版本相同。一台机器是快照机器。版本是:
Microsoft SQL Server 2016 (SP1) (KB3182545) - 13.0.4001.0 (X64)
【问题讨论】:
-
support.microsoft.com/en-us/help/2498818/…什么版本的sql server?
-
Microsoft SQL Server 2016 (SP1) (KB3182545) - 13.0.4001.0 (X64) 它们是相同的。
标签: sql sql-server oledb sql-server-2016 linked-server