我正在学习 SSIS,我有一个关于如何规范化文本文件中现有数据的问题。
在我的目录中,我有一个针对美国每个州的文本文件,因此 AK.txt 和 AL.txt 具有以下结构:
AK,F,1910,Mary,14
AL,F,1910,Mary,875
这代表state,sex,year,name,frequency
如果我有以下表格:
- 状态(id,状态)
- 性别(id,sex)
- 年份(id,年份)
- 名称(id,名称,频率)
我将使用 SSIS 中的什么转换将每个数据元素放入其各自的表中?
我正在学习 SSIS,我有一个关于如何规范化文本文件中现有数据的问题。
在我的目录中,我有一个针对美国每个州的文本文件,因此 AK.txt 和 AL.txt 具有以下结构:
AK,F,1910,Mary,14
AL,F,1910,Mary,875
这代表state,sex,year,name,frequency
如果我有以下表格:
我将使用 SSIS 中的什么转换将每个数据元素放入其各自的表中?
A. 首先捕获多个文件,这里有两个选项:
使用 For Each File 迭代器循环遍历每个文件并加载到某些内容(行集对象、原始文件或临时表)中,然后将其用作 B 部分的源
或者为每个文件创建一个平面文件源并使用联合运算符将它们连接起来(不推荐)
B. 让单个数据流到多个表中
使用多播将数据投射到 5 个流中。然后对它们进行排序和区分以获得不同的记录,然后将它们加载到表中。
我个人的偏好是加载到临时表中,然后通过 SQL 执行所有操作。
如果您的文件以comma
“状态、性别、年份..”分隔,最简单的方法是使用平面文件源。您可以将其设置为使用逗号作为列分隔符和换行符作为行分隔符。确保在高级下设置正确的数据类型。然后,输出是每个分隔字段的列。然后使用目的地之一(OLE DB ..)并将这些东西放在你的表中。
如果您有任何问题,请告诉我