需要帮助来使用SSIS执行ETL任务

时间:2013-04-20 07:33:01

标签: sql ssis etl

我想使用其IP地址连接到服务器。然后,我想执行保存在该服务器驱动器上的.sql文件。我还想将这个sql的结果存储在服务器本身的文本文件中。我应该将它作为sql任务执行还是作为数据库或其他东西的提取运行?我不知道该怎么做。我需要提示如何继续。

使用的数据库是SQL server 2008。

2 个答案:

答案 0 :(得分:0)

在SSIS上,您可以执行SQL并将其导出到文本文件(csv)。

请参阅这篇文章。 http://dwbi1.wordpress.com/2011/06/05/ssis-export-query-result-to-a-file/

答案 1 :(得分:0)

在SQL Server上创建SSIS解决方案到平面文件。

打开Microsoft Visual Studio 单击创建项目 选择Integration Services项目 命名项目(x2) 设置位置,例如C:\ SSISPackages \ 单击“确定”

单击“数据流”选项卡 单击以创建新的数据流任务 单击“工具箱”选项卡(左下角) 将OLE DB源拖动到数据流部分 将平面文件目标(例如)拖到“数据流”部分 拖动绿色箭头将OLE DB源连接到平面文件目标

双击“OLE DB源” 单击“OLE DB连接管理器”旁边的“新建” 选择YOURSERVER \ YOURDB,然后单击“确定” 将数据访问模式更改为SQL命令 在SQL命令文本下输入过程和参数(例如) 单击“分析查询”以确认SQL命令有效,然后单击“确定”

双击平面文件目标 单击Flat File Connection Manager旁边的New 选择Ragged Right(如果标准固定宽度,每行末尾有CR / LF),然后单击OK 单击“浏览”并选择输出的目标和文件名,然后单击“确定”两次 单击Mappings并确认输入和目标列是否正确,然后单击OK

将当前日期附加到文件名: 单击Package Explorer选项卡(中心窗格的右上角) 单击“变量”选项卡(左下角) 添加一个名为path的变量,Scope = Package,Data Type = String,Value = path to path(不包括文件名的YYYYMMDD.txt部分)

在“平面文件连接管理器的属性”(底部中心,右键单击)中,打开“表达式”,并将“属性”设置为“ConnectionString”和“表达式”:

@[User::path]+
(DT_STR,4,1252) DatePart("yyyy",getdate()) +
Right("0" + (DT_STR,4,1252) DatePart("m",getdate()),2) +
Right("0" + (DT_STR,4,1252) DatePart("d",getdate()),2) + ".txt"

(或者你需要格式化日期和文件名)

单击“评估表达式”以确保其显示正常。