Talend:tExtractRegexFields 和 globalMap
Talend : tExtractRegexFields and globalMap
我的工作就是这样组成的:
tRest >> tExtractJSonFields >> ttExtractRegexFields > (row3) > tMSSqlRow
我正在使用带有 3 个输出变量的 tExtractRegexFields 组件。
下一个组件是 tMSSqlRow。
我想在我的 SQL 查询中使用 tExtractRegexFields 的输出作为参数。
我的 SQL 查询是这样的:
; 与 nums AS
(SELECT 1 作为页面
联合所有
SELECT PAGE + 1 AS 值
从数字
WHERE nums.PAGE < "+(整数)globalMap.get("row3.lastpage")")
插入 flight.Calendar_Page (DT_CAL, NUM_PAGE)
SELECT '2016-01-01', 页
从数字
选项(最大递归 32767);“
"row3.lastpage" 是 tExtractRegexFields 的输出变量。
这个总是包含 NULL 值。
我不明白为什么 globalMap.get("row3.lastpage") 为空。有人知道如何使用 tExtractRegexFields 的输出吗?
谢谢大家
不要在 tMSSqlRow
的 SQL 查询中使用 globalMap.get("row3.lastpage")
,只需将 row3.lastpage
与 SQL 字符串连接即可。 row3.lastpage
不是字符串,但 row3
是 Talend 生成的代码中的 Java class,lastpage
是其字段之一。该字段包含您要注入 SQL 语句的数据。
globalMap.get("row3.lastpage")
将始终由 null
.
您的查询应该是这样的:
WITH nums AS (SELECT 1 AS PAGE UNION ALL SELECT PAGE + 1 AS value FROM nums WHERE nums.PAGE < " + row3.lastpage + ") INSERT INTO flight.Calendar_Page (DT_CAL, NUM_PAGE) SELECT '2016-01-01', PAGE FROM nums option (maxrecursion 32767);
我的工作就是这样组成的:
tRest >> tExtractJSonFields >> ttExtractRegexFields > (row3) > tMSSqlRow
我正在使用带有 3 个输出变量的 tExtractRegexFields 组件。 下一个组件是 tMSSqlRow。 我想在我的 SQL 查询中使用 tExtractRegexFields 的输出作为参数。
我的 SQL 查询是这样的: ; 与 nums AS (SELECT 1 作为页面 联合所有 SELECT PAGE + 1 AS 值 从数字 WHERE nums.PAGE < "+(整数)globalMap.get("row3.lastpage")") 插入 flight.Calendar_Page (DT_CAL, NUM_PAGE) SELECT '2016-01-01', 页 从数字 选项(最大递归 32767);“
"row3.lastpage" 是 tExtractRegexFields 的输出变量。 这个总是包含 NULL 值。
我不明白为什么 globalMap.get("row3.lastpage") 为空。有人知道如何使用 tExtractRegexFields 的输出吗?
谢谢大家
不要在 tMSSqlRow
的 SQL 查询中使用 globalMap.get("row3.lastpage")
,只需将 row3.lastpage
与 SQL 字符串连接即可。 row3.lastpage
不是字符串,但 row3
是 Talend 生成的代码中的 Java class,lastpage
是其字段之一。该字段包含您要注入 SQL 语句的数据。
globalMap.get("row3.lastpage")
将始终由 null
.
您的查询应该是这样的:
WITH nums AS (SELECT 1 AS PAGE UNION ALL SELECT PAGE + 1 AS value FROM nums WHERE nums.PAGE < " + row3.lastpage + ") INSERT INTO flight.Calendar_Page (DT_CAL, NUM_PAGE) SELECT '2016-01-01', PAGE FROM nums option (maxrecursion 32767);