今天主要进行ETL控件的学习。主要是使用微软的SSDT工具。使用DataFlowTask 将数据源导出到目标文件的方式。
1、打开SSDT新建一个SSIS的project,如下图所示:
2、在SSIS下面新建一个package,初学的时候要注意要用严格的命名规范。如下图:
3、从SSIS Toolbox 拖放一个Data Flow Task到Control Flow里面,如图:
4、双击Data Flow Task,进入Data Flow,新建一个数据源OLE DB Source,双击进入OLE DB Source,new 一个OLE DB connection manager,Server name 如果是本机的话,
就写Localhost,如图,然后选择好数据库之后点击ok。如图:
5、OLE DB Source Editor里面的Data access mode 有多种方式,可以直接选择表,也可以直接粘贴sql语句,最好是直接粘贴sql语句,因为这样可以手动的去选择要加载的列。如图:
6、接下来从SSIS Toolbox里面拖拽一个Flat File Destination ,通过这个控件去设置到处文件的地址,格式,字符集等,对于字符集的选择,也要特别注意,如果数据中不含有中文,可以通过转换解决问题的就不用担心,但是如果字符集里面包含中文,就要特别小心了,因为在转换的时候会出现问题,系统的解决办法可以查看我转载的文摘,如图所示:
在选择Column时,Column delimiter的选择要根据数据的特点进行选择,如果数据里面包含逗号,如果再用逗号去分割,就会出现问题,解决办法是可以在列的开头和结尾加一些符号,
但也要根据真实数据的特点去选择。
7、点击ok,我们的数据源和目标的导出设置就都设置好了,接下来可以执行我们设置的task了,执行办法很简单右键我们新建的package名字,点击Execute package,就可以了。然后去你指定的路径下面去查找导出的文件即可。