1

使用 DataStage,我必须读取一个包含一个 sql 语句的顺序文件,运行该 sql 语句并将结果输出到一个顺序文件中。

这是我尝试过的:使用 Oracle 连接器,我只需将选项设置为“从文件中读取选定语句”,输入包含 SQL stmt 的文件的位置,然后设置“运行时列传播”和最后创建了一个输出顺序文件。这很好用,正确创建了带有 select stmt 数据结果的输出文件。

但是现在,规格发生了变化,它不再是我需要的 oracle 连接器,而是一个 ODBC 连接器,它没有方便的“从文件中读取选定的语句”选项。

我正在考虑执行以下操作:

  • 使用顺序文件阶段读取文件内容
  • 将文件内容移动到变量
  • 将变量传递给 ODBC 连接器
  • ODBC 连接器将读取变量并运行它
  • 将数据传递到顺序文件。

我遇到问题的部分是第 1 到第 4 部分。我几乎是 datastage 的初学者,如果有人可以为我提供指导,将不胜感激。

4

1 回答 1

1

ODBC 连接器确实可以选择从文件中读取 select 语句。您使用的是哪个版本的 Datastage?

另一种解决方法(我认为这不是最佳实践)是将查询放在参数集中,然后在 Datastage 作业中调用此参数集。

你是怎么做的。

  1. 用一个字符串变量 Query 声明一个参数集(比如说 PS1)
  2. 现在您需要登录到 LINUX 框(并转到参数集的位置,它看起来类似于
    /opt/IBM/InformationServer/Server/Projects//ParameterSets/PS1>)
  3. 创建一个包含您的查询的文本文件。(让我们称之为ValueFile)
  4. 现在在你的 ODBC 连接器上 - 你有查询 - 插入参数集变量 (PS1.query)
  5. 在运行时,您可以选择值文件。

我知道这有点棘手,但应该可以正常工作。

阿什什

于 2015-03-17T15:07:32.243 回答