Dynamic SSIS:动态数据流OLEDB目标组件不';更新元数据

Dynamic SSIS:动态数据流OLEDB目标组件不';更新元数据,dynamic,ssis,dataflow,Dynamic,Ssis,Dataflow,我正在将prod数据移动到dev。我在dev端有一个表,其中有一个表列表,还可以选择一个列名,该列名是一个日期列,用于将数据传输限制到特定的日期范围。我为每个循环设置了一个for-each循环来遍历每个表,并将数据从prod移动到dev。有两个数据流任务,一个在有日期列时执行,另一个在没有日期列时执行。如果有日期列,数据流任务的源组件将使用查询变量,如果没有,源将使用变量中的表。每个数据流的延迟验证属性都设置为true。数据流源组件是OLEDB,验证元数据属性设置为false。数据流目标是tab

我正在将prod数据移动到dev。我在dev端有一个表,其中有一个表列表,还可以选择一个列名,该列名是一个日期列,用于将数据传输限制到特定的日期范围。我为每个循环设置了一个for-each循环来遍历每个表,并将数据从prod移动到dev。有两个数据流任务,一个在有日期列时执行,另一个在没有日期列时执行。如果有日期列,数据流任务的源组件将使用查询变量,如果没有,源将使用变量中的表。每个数据流的延迟验证属性都设置为true。数据流源组件是OLEDB,验证元数据属性设置为false。数据流目标是table from变量,验证元数据属性再次设置为false。 在数据流任务的第一次迭代中,当有一个日期列时,它会正确地传输数据。在第二次迭代中,它正确地更新源的元数据,而不是目标的元数据,并且失败。 在数据流任务的第一次迭代中,当没有日期列(source设置为table variable)时,它的行为方式与日期列案例的第二次迭代相同。
如何强制目标组件为每次迭代动态更新元数据?

为什么要更新元数据?在问题的开头,您说有两种不同的数据流。为什么您需要在第二次迭代时更新数据流中的元数据?在第二次迭代时,它可能是另一个表的副本。如果我在正确链接的线程上阅读了您的回复,那么数据流中的表变量访问方法只有在变量可能指向的每个表的元数据都相同时才有用。这是正确的,您不能循环使用具有不同元数据的表,并使用相同的数据流。@瑟斯特认为元数据可以被更新,您将如何实时地进行列映射??!!!!我同意TabAlleman的观点,如果元数据不相同,就不能这样做。