datastage 相对较新,很可能是一个愚蠢的问题。
从数据阶段,我想对 SQL Server 数据库运行数据库查询。该查询是带有硬编码 WHERE 子句的删除查询(不是我的决定)。
我想不通的是如何在没有输入或输出的情况下通过 ODBC 连接器运行查询。如果我没有将连接器链接到输入或输出,则不会出现 ODBC 连接器的“使用”部分。
是否可以在不链接输入/输出的情况下显示“使用”部分?如果没有,在 datastage 中是否有另一种选择来完成我所描述的?
datastage 相对较新,很可能是一个愚蠢的问题。
从数据阶段,我想对 SQL Server 数据库运行数据库查询。该查询是带有硬编码 WHERE 子句的删除查询(不是我的决定)。
我想不通的是如何在没有输入或输出的情况下通过 ODBC 连接器运行查询。如果我没有将连接器链接到输入或输出,则不会出现 ODBC 连接器的“使用”部分。
是否可以在不链接输入/输出的情况下显示“使用”部分?如果没有,在 datastage 中是否有另一种选择来完成我所描述的?
DataStage 仅在数据来自链接时才写入数据库。
你可以做的是:
您不必在生成的行上使用数据,只需在目标上触发操作即可。
我遇到了同样的问题,现在通过设计如下的工作来实现它,
Row_generator -> Transformer -> copy_stage -> DB_connector
Row_generator - 定义要生成的列(不需要映射到变压器阶段的输出)
Transformer - 添加一个输出列,说“dummy”并将其硬编码为“1”,并且应该取消选中 RCP。
copy_stage - 不要将任何内容映射到输出链接,只需保持启用 RCP即可。
DB_connector - 在查询框中,将删除语句提及为“delete from #Schema#.#Table# where 1=orchestrate.dummy ”
在上述查询中,我们使用的条件 1=orchestrate.dummy始终为 TRUE。让我知道它是否有效!干杯。
将 ODBC 连接器阶段连接到复制阶段
编写一个虚拟选择查询(Oracle,您可以使用“select 1 as dummy from dual”)
在具有数据类型的列中给出虚拟 col 名称
在 ODBC 连接器阶段的 SQL 之前或之后插入您的删除查询
我有相同要求的生产作业。应该像葡萄酒一样顺畅:)
1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '[Security No]、Customer.DOB、Customer.IDNo、Customer.ContactNumber、Customer.cnu' 附近使用正确的语法