在对这个问题做了更多的研究后,看起来就是这样 ValidatExternalMetadata 没有做你想要的。 的 它只会跟踪所选列上发生的元数据更改 强> 。
ValidatExternalMetadata
基于此,我认为SSIS中没有选项来执行此操作,您必须将自定义验证添加到包中,例如:
SELECT Count(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = ?
SELECT Count(*) FROM Information_schema.Column T1 LEFT JOIN Source Columns T2 ON T1.COLUMN_NAME = T2.Column_name WHERE T2.Column_Name IS NULL
您可以通过设置OLEDB源来实现此目的 ValidatExternalMetadata 财产到 True 。
True
添加新列时,应该抛出类型的异常。
VS_NEEDSNEWMETADATA
请注意,执行程序包时可能需要额外的时间。
有关更多信息,请参阅: