Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SSIS执行SQL任务错误:多步骤OLE DB操作生成错误--可能是由于参数映射_Ssis - Fatal编程技术网

SSIS执行SQL任务错误:多步骤OLE DB操作生成错误--可能是由于参数映射

SSIS执行SQL任务错误:多步骤OLE DB操作生成错误--可能是由于参数映射,ssis,Ssis,我在SQLServer2008和SSIS中工作。我试图在执行包时生成一个加载ID,并将该ID存储在加载历史表中,然后填充后续表 我的基本SSIS控制流如下所示: 执行SQL任务、数据流任务 通过以下步骤创建负载表: CREATE TABLE dbo.LoadHistory ( LoadHistoryId int identity(1,1) NOT NULL PRIMARY KEY, LoadDate datetime NOT NULL ); 执行SQL任务的编辑器如下所示: 概

我在SQLServer2008和SSIS中工作。我试图在执行包时生成一个加载ID,并将该ID存储在加载历史表中,然后填充后续表

我的基本SSIS控制流如下所示: 执行SQL任务、数据流任务

通过以下步骤创建负载表:

CREATE TABLE dbo.LoadHistory
(
    LoadHistoryId int identity(1,1) NOT NULL PRIMARY KEY,
    LoadDate datetime NOT NULL
);
执行SQL任务的编辑器如下所示:

概述:

结果集=无

ConnectionType=OLE DB

SQLStatement:

INSERT INTO dbo.LoadHistory (LoadDate) VALUES(@[System::StartTime]);
SELECT ? = SCOPE_IDENTITY()
参数映射:

变量名=用户::加载ID

方向=输出

数据类型=长

参数名称=0

参数大小=-1

SSIS正在引发以下错误:

[Execute SQL Task]错误:执行查询插入到dbo.LoadHistory ... 失败,出现以下错误:多步骤OLE DB操作生成错误。检查每个OLE DB状态值(如果可用)。没有做任何工作。。可能的失败原因:查询问题、ResultSet属性设置不正确、参数设置不正确或连接建立不正确


此错误消息并不能真正帮助我找到问题。我最好的猜测是,这是由于参数映射,但我没有看到我的错误。有人能指出我的问题并提供解决方案吗?

我解决了我的问题。System::StartTime需要将DATE作为其数据类型,而不是DBTIMESTAMP。

我传递了三个参数。 在参数名称属性中,我有:

0
1
3
更正为:

0
1
2

它现在可以工作了,没有多步操作生成错误消息。

为什么您的ResultSet=None也是这样,这不是您在执行SQL任务时使用参数的方式我使用以下链接中的选项1作为模板:好吧,那个家伙是个白痴..您需要使用参数吗?在使用OLE DB连接管理器映射中的参数的查询中作为占位符。请参见上的选项