SQL Server 2008的SSIS开发工具中有一个平面文件连接器,使用它,可以处理非数据库结构的数据,这是一个相当强大的功能,摆脱了数据库结构的数据处理,使用之可以对.txt,.csv,.xls等文件类型的数据处理。这个SSIS包中的平面文件连接管理器在使用上要比OLEDB连接管理器复杂的多。
下面我们就.txt文本文件如何在平面文件连接器中被连接来详细讲解一下,打开我们的SSIS包开发工具BIDS,如图1所示:
图1
在图1已经创建好的SSIS项目中新建一个SSIS包来讲解平面文件连接器,并重命名新建的SSIS包为“FlatFileConn.dtsx”,如图2所示:
图2
在图2左侧的底部可以看到有一个“连接管理器”的区域,在这里可以新建平面文件连接管理器,右击“连接管理器”区域,如图3所示:
图3
在图3弹出的菜单中选择“新建平面文件连接”,如图4所示:
图4
图4是SSIS包的平面文件连接管理器的设置,各个设置说明如下:
连接管理器名称:为工作流中的平面文件连接提供唯一的名称。所提供的名称将在连接管理器框中显示。
常规选项卡:使用“平面文件连接管理器编辑器”对话框的“常规”页可以选择文件和数据格式。使用平面文件连接可以将包连接到文本文件。该选项卡中包含以下属性:
文件名:键入要在平面文件连接中使用的路径和文件名。
区域设置:在区域设置下拉框中选中指定的区域位置,以便为排序以日期和时间格式提供语言特性的信息。在设计的时候最好选择英语(美国)选项。
Unicode复选框:指示是否使用Unicode。如果使用Unicode则不能指定代码页。
代码页:在代码页中选中指定非Unicode文本的代码页。设计时最好选择1252(ANSI-拉丁语I)
格式:在格式下拉框中选中文本的格式。带分隔符:各列之间由在“列”页上指定的分隔符隔开。固定宽度:列的宽度固定。右边未对齐:在右边未对齐的文本中,除最后一列之外的每一列的宽度都相同,它有行分割符分割。
文本限定符:指定要使用的文本限定符。例如,可以指定文本字段必须用引号括起来。若选择文本限定符之后,就不能重新选择"无"选项,键入None以取消选择文本限定符。
标题行分隔符:从标题行的分隔符列表中选择,或输入分隔符文本。
{CR}{LF} 标题行由回车符和换行符的组合分隔。
{CR} 标题行由回车符分隔。
{LF} 标题行由换行符分隔。
分号 {;} 标题行由分号分隔。
冒号 {:} 标题行由冒号分隔。
逗号 {,} 标题行由逗号分隔。
制表符 {t} 标题行由制表符分隔。
竖线 {|} 标题行由竖线分隔。
要跳过的标题行数:指定要跳过的标题行数或初始数据行数(如果有的话)。
在第一个数据行中显示列名称:指示在第一个数据行中是否要求列名或提供列名。
图4的相关设置完成之后,我们要构造一个文本文件,如图5所示:
图5
图5是使用Tab键分开的两列数据,存储在.txt文本文件中。现在我们在图4中点击“浏览”按钮找到此文件,如图6所示:
图6