我想使用 SSIS 将最新的 csv 文件导入到表中?我目前有一个步骤可以获取文件夹中的最后一个文件:
Report_201209030655.csv
Report_201209030655.csv
Report_201209030655.csv
根据创建时间,我想要将最新 csv 的数据导入表的步骤。
我想使用 SSIS 将最新的 csv 文件导入到表中?我目前有一个步骤可以获取文件夹中的最后一个文件:
Report_201209030655.csv
Report_201209030655.csv
Report_201209030655.csv
根据创建时间,我想要将最新 csv 的数据导入表的步骤。
参考这个解决方案:
[http://blog.sqlauthority.com/2011/05/12/sql-server-import-csv-file-into-database-table-using-ssis/][1]
然后使用脚本任务填充文件名并将该变量作为源组件的文件名传递。
获取最新文件代码:
public void Main()
{
string[] files = System.IO.Directory.GetFiles(@"C:\SSIS\Files");
DataTable NewList=new DataTable();
DataColumn col = new DataColumn("FileName");
NewList.Columns.Add(col);
System.IO.FileInfo finf;
foreach (string f in files)
{
finf = new System.IO.FileInfo(f);
if (finf.LastWriteTime > DateTime.Now.AddHours(-24))
{
NewList.Rows.Add(f);
}
}
Dts.Variables["User::FileNameArray"].Value = NewList;
Dts.TaskResult = (int)ScriptResults.Success;
}