使用pentaho数据集成插入SQL标识列

时间:2012-06-01 02:46:31

标签: etl pentaho data-integration

我是Pentaho数据集成工具的新手。我正在尝试将数据从源表移动到目标表中......两者都是SQL Server。这些表是相同的,并且有一个标识列。

尝试了很多选项,但是......每次说“Indentity insert设置为OFF”时都会出错...

尝试在中间引入一个跳来执行一个SQL语句来“SET identity_insert tblname ON”..仍然工作。

任何建议都将受到高度赞赏。

感谢。

2 个答案:

答案 0 :(得分:0)

将它放在一个跳中肯定不会工作,因为PDI / kettle每步使用一个连接。您需要将该设置放在数据库连接的高级选项中,然后您应该没问题 - 然后它将用于该数据库连接的所有实例。

还要确保“共享”数据库连接,否则如果在每次转换中手动创建它们,则需要将该设置应用于每次转换中的每个数据库连接。 (除非你使用数据库或EE存储库,在这种情况下连接是集中的,所以你没事)

答案 1 :(得分:0)

您可以尝试的另一件事是从用于从源传递到目标的选择中删除标识列。

这样,您将确保SQL将为试图插入它们的每一行创建一个新的标识,