我正在SSIS中创建一个包,这将根据查找操作插入记录,如下所示。
来源:查看 目的地:表格
是否我在插入记录时遇到问题我需要插入一个不在源中的目标列,该列需要自动增加1.如何在此处执行此操作。
欢迎任何建议?
此致
答案 0 :(得分:1)
您可以添加定义为IDENTITY/AUTO_INCREMENT/DEFAULT sequence_name.NEXTVAL
的目标表列。
在您的SSIS包中,您需要跳过该列以允许DB填充该列。
答案 1 :(得分:1)
我们说列名是“Id”。如果列“Id”已经拥有它的身份,那么你就是好的。如果没有,那么在目标表中,您将必须创建一个新的标识列,删除“Id”列,然后将新列重命名为“Id”。
ALTER TABLE(yourTable)ADD NewColumn INT IDENTITY(1,1) ALTER TABLE(yourTable)DROP COLUMN Id EXEC sp_rename'yourTable.NewColumn','Id','COLUMN'
在您的SSIS目的地之后,不要将任何列从源列映射到Id列,数据库中的Id列将从值1开始,并自动递增值1.希望它有所帮助。