我想使用DataStage将数据插入表中。我们每个月收到大约900个制表符分隔的文本文件。每个文件对应一个表。这些表可以分为18种不同的类型,每种状态的每种类型都有1个表。如果可能的话,我想使用DataStage。目前,我正在插入。对于背景,我们目前为此使用了简单的插入语句s,它允许将大量重复数据加载到可写对象中。
当前,有一个直接连接到ODBC阶段的顺序阶段。对于以下SQL,Sequential Stage文件和ODBC阶段之间的列名不同。没有使用顺序阶段中的所有列。顺序阶段中不存在ODBC阶段中的load_date和Effective_date列。
在顺序阶段中,选中“运行时”列传播框。
在ODBC阶段,“写模式”设置为“插入”,“ Generte SQL”设置为“否”。下面的SQL是insert语句。
在顺序阶段而不是ODBC阶段都没有定义列。我试图保持这种通用性,因为这需要针对大约900个不同的表完成。
插入xxx.ak_bop_terr_zip(邮政编码,rec_count,iso_comm_territory_code,百分比,load_date,生效日期)
选择ORCHESTRATE.ZIP,ORCHESTRATE.RECCNT,ORCHESTRATE.TERR_CODE,ORCHESTRATE.PCT,当前时间戳,当前日期
来自ORCHESTRATE
不存在的地方(选择1
来自xxx.ak_bop_terr_zip
其中zip_code = ORCHESTRATE.ZIP和rec_count = ORCHESTRATE.RECCNT
和iso_comm_territory_code = ORCHESTRATE.TERR_CODE和百分比= ORCHESTRATE.PCT);
ODBC_Connector_2:无效的SQL语句参数名称:PCT。它在设计方案中不存在,并且连接器无法对其进行描述(CC_DBRecordDataSetConsumer :: setDataSetDef,文件/builds/IS_11_3_1_2_RC1/Common_Connectors/Build_Current/CC_Common/DAAPI/build/include/ccl/connector/CC_DBRecordDataSetConsumer.inl,行665)
我不确定SQL语法。您是否可以在执行操作时使用ORCHESTRATE?是否需要以其他方式完成?
答案 0 :(得分:0)
似乎您无法通过ORCHESTRATE进行相关子查询。我现在使用另一种方法将数据加载到临时表中,然后在相关子查询中使用临时表。