Ssis 插入具有OLEDB目标的数据时主键列出错
嗨,我在SSIS 2008工作。我有一个OLEDB源和OLEDB目标对象,用于将数据从源移动到目标。我的目标表有一个数据类型为uniqueidentifier的主列,默认值设置为NewSequeNetAlid() 对于存储过程,向目标表插入数据没有问题,主键列接受sql生成的guid(),没有任何问题。但当我尝试使用oledb目的地插入SSI时,它会抱怨主键列无法插入NULL值。有关我的OLEDB目的地的设置,请参见下面的附图。标识列未映射到任何源列Ssis 插入具有OLEDB目标的数据时主键列出错,ssis,oledb,bulkinsert,Ssis,Oledb,Bulkinsert,嗨,我在SSIS 2008工作。我有一个OLEDB源和OLEDB目标对象,用于将数据从源移动到目标。我的目标表有一个数据类型为uniqueidentifier的主列,默认值设置为NewSequeNetAlid() 对于存储过程,向目标表插入数据没有问题,主键列接受sql生成的guid(),没有任何问题。但当我尝试使用oledb目的地插入SSI时,它会抱怨主键列无法插入NULL值。有关我的OLEDB目的地的设置,请参见下面的附图。标识列未映射到任何源列 取消选中“保留空值”解决了我的问题。我不理解
取消选中“保留空值”解决了我的问题。我不理解这个选项。如果选中,它将尝试在未与任何源列映射的列中插入NULL。取消选中“保留NULL”解决了我的问题。我不理解这个选项。如果选中,则它将尝试将NULL插入到未与任何源列映射的列中。因此,可能不要将NULL插入PrimaryKey列并保留
忽略如果这不起作用,则需要显示可能有效的过程…@Justin取消选中“保留NULL”为我工作,但它现在没有插入所有的记录。它将跳过任何列中包含Null的记录。标记保留Null
并显示OLE DB Destination的Mappings
选项卡,我的意思是,如果在过程中可以插入,则必须尝试在OLE DB Destination中执行相同的操作。。。您需要在PrimaryKey列中插入或不插入正确的值,现在我看不到您在OLE DB D中插入的内容。如果该过程有效,您可以显示该过程,可能会有一些有用的内容。我现在没有问题。我想这个问题已经得到了回答。谢谢@justin。所以也许不要在PrimaryKey列中插入NULL,而让忽略
如果这不起作用,你需要显示可能起作用的过程…@justin取消选中“保留NULL”对我起作用,但现在不会插入所有记录。它将跳过任何列中包含Null的记录。标记保留Null
并显示OLE DB Destination的Mappings
选项卡,我的意思是,如果在过程中可以插入,则必须尝试在OLE DB Destination中执行相同的操作。。。您需要在PrimaryKey列中插入或不插入正确的值,现在我看不到您在OLE DB D中插入的内容。如果该过程有效,您可以显示该过程,可能会有一些有用的内容。我现在没有问题。我想这个问题已经得到了回答。谢谢你,贾斯汀。