我不清楚SSIS中输出列和外部列之间的区别.我在网上寻找解释,但我还不清楚.例如,此博客条目:http://consultingblogs.emc.com/jamiethomson/archive/2006/05/23/SSIS_3A00_-The-difference-between-output-columns-and-external-columns.aspx和此问题:http://social.msdn.microsoft.com/forums/en-US/sqlintegrationservices/thread/f5fa8785-46cc-44e1-9251-8503d2725523/.
例如,如果您有一个带有此查询的SQL OLEDB源:
SELECT ID, Name FROM Person
Run Code Online (Sandbox Code Playgroud)
然后将结果写入文本文件.然后每个都有一个输出列和一个外部列.在某些网页上,它表示外部列包含元数据.例如,如果Name是SQL OLEDB数据源中的VARCHAR(30),并且它是文本文件中的VARCHAR(50),那么输出列和外部列的值是什么?
有人能指出我的MSDN文章清楚地解释了这些差异吗?今天早上我搜索了一个多小时.
我还没有找到完整的 MSDN 文章,但我认为这篇 MSDN 文章的第一张图清楚地表明了这一点。
一般来说,数据源具有外部列,用于存储有关源中数据结构的信息,输出列用于存储通过数据路径发送的信息的结构。它将数据从外部列复制到输出列。数据目标具有输入列,用于存储有关从数据路径接收到的日期结构的信息,以及外部列,用于描述目标中的结构。它将数据从输入列复制到外部列。
在你的情况下它应该是:
Source:
External columns:
Name Type Length
Id DT_I4 0
Name DT_STR 30
Output columns:
Name Type Length
Id DT_I4 0
Name DT_STR 30
Destination:
Input columns:
Name Type Length
Id DT_I4 0
Name DT_STR 30
External columns:
Name Type Length
Name DT_STR 50
Run Code Online (Sandbox Code Playgroud)