为什么 Talend tMSSqlSP 或 tMSSqlRow 没有输出

Why no output from Talend tMSSqlSP or tMSSqlRow

我对 ETL 并不陌生,正在努力熟悉 Talend。我似乎无法获得存储过程(使用 tMSSqlSP)或查询(使用 tMSSqlRow)的任何输出。注意:我读到的内容表明 tMSSqlRow 不会产生柱状输出但不确定是否正确。

下面显示的作业运行但没有来自 tMSSqlSP 组件的输出。跟踪调试显示输出标题为空。但是,在SSMS中手动执行SP成功,同时显示objid和title。

SP 执行接受单个输入参数 (int) 的简单查询并输出两列 -- objid (int) 和标题(string):

create procedure st_sp_case_title_get
    @objid int
as
select [objid], [title] from [dbo].[table_case] where [objid] = @objid   

您需要使用 tParseRecordSet 才能从 tMSSqlRowtMSSqlSP 检索和解析结果集:

除了输入列(我的输入参数是 personid)之外,定义一个列作为 Object 类型的结果集(我的名称为 result)。在 tMSSqlSP 参数选项卡中,将 personid 设置为 IN 类型,将 result 设置为 RECORD SET.

类型

tParseRecordSet 模式:

它解析结果列并获取 FirstnameLastname 列(您的 objidtitle 列)

tMSSqlRow 非常相似。在这里查看我之前的 示例。