我试图通过Key从一个表中检索Key的值,在SSIS中使用一个简单的select语句。但是找不到这个错误。
我使用了一个带有字符串数据类型的输入变量,并在Execute SQL Task中的参数映射中使用了这个变量。
执行查询“从表中选择强制转换(键为Int),其中列= ?”失败:“将结果提取为类型变量(DBTYPE_I4)时发生错误”。可能的失败原因:查询出现问题、"ResultSet“属性未正确设置、参数未正确设置或连接未正确建立。
注意:Key列的数据类型是tinyint
发布于 2015-08-11 13:29:30
当参数的默认数据类型保持为'LONG‘而不是任何必需的值时,就会发生此消息.在您的例子中,这应该是“字节”。

发布于 2012-06-19 02:42:34
Tinyint不是i4,而是UI1。http://msdn.microsoft.com/en-us/library/ms345165.aspx
如果将SSIS类型更改为字节,则应该能够将查询结果分配给值。
Variable User::input Data Type Byte Value 2
Variable User::output Data Type Byte Value 0源查询SELECT CAST(1 AS tinyint) AS [key], ? AS foo
执行SQL任务、OLE DB CM、单行结果集参数映射选项卡
映射到用户::output的第1列的结果
执行SQL后检查值,结果为2(预期)
发布于 2012-06-19 16:15:55
从表中写入类似于->的查询,选择强制转换(键为Int)作为键,列=?
https://stackoverflow.com/questions/11091583
复制相似问题