我对“尺寸”和“ IKM:增量更新”的自动增量ID有疑问。
我的源表只有一列:SUPPLIER_NAME。它有23行带有供应商名称。
我的目标表有两列:SUPPLIER_ID,SUPPLIER_NAME
接下来,我要在SUPPLIER_ID上为每个新行创建自动增量ID,并使用IKM:增量更新-某人添加新供应商,我只想要更新表(添加新行),并为此供应商添加新ID(自动增量的下一个值)
我该怎么做?
我在数据库上创建序列,例如:
Create sequence autoinc start with 1
increment by 1
minvalue 1
maxvalue 1000000;
在ODI中,我创建序列: AutoIncrementDIm->增量:1, 本机序列-本机序列名称:autoinc
接下来,我创建ODI映射:
源表(具有一个列)映射到目标表(具有ID和NAME)。
将供应商名称映射到供应商名称
对于ID,我使用:#NFS_HD.AutoIncrementDim_NEXTVAL
在逻辑部分中,我设置了集成类型:增量更新 在物理部分中,我设置了IKM:IKM Oracle Merge
对于我的第一次跑步,一切正常。每个供应商的自动增量都从1增加到23。
但是当我在源表中有带有新供应商名称的新行并运行映射时,会得到类似的信息:
新行(具有新的供应商)具有47个ID ...我认为s是因为每行都在运行序列。
我必须更改以更正还是什么是更好的解决方案?