包含执行计划时,远程过程调用失败

时间:2015-02-19 14:20:41

标签: sql-server sql-server-2012 ssms sql-execution-plan

我有一个非常离奇的错误,我无法理解。

以下T-SQL:

CREATE TABLE #Contribs ( ID VARCHAR(100), Contribution FLOAT )
INSERT INTO #Contribs
EXEC [linkedserver].[catalogue].[schema].LocalContrib
SELECT * FROM #Contribs

在我的服务器中创建一个简单的临时表,用来自链接服务器的数据填充它并查看数据。

当我自己运行远程过程时,它为我提供了(text,float)对的列表。

当我在没有请求实际执行计划的情况下运行整个T-SQL时,它会在临时表中正确显示这个对列表。

当我运行整个T-SQL 及其实际执行计划时,它会失败并返回消息'列名或提供的值的数量与表定义不匹配'。

有谁知道为什么会这样或者我能做些什么呢?对我来说,执行计划的显示应该干扰语句本身的执行似乎是不正常的。这很烦人,因为我希望检查包含此代码的父存储过程的执行计划。我不知道内部调用的“LocalContrib”程序是什么样的,我正在运行SQL Server 2012.

感谢。

0 个答案:

没有答案