如何使用DTS包删除或删除SQL Server上的.txt文件?

时间:2012-08-24 00:36:03

标签: sql sql-server ssis dts

我想要实现的是使用DTS包来按计划删除.txt文件,以便另一个包来提取它,在这种情况下我使用SSIS作为下一步,它只是我不知道如何使用DTS包删除文本文件。

2 个答案:

答案 0 :(得分:1)

在SSIS中删除文件的首选方法(现在不需要再创建任何恐龙DTS / activex包)是使用脚本任务。这是vb.net方式:

确保您引用System.IO:

Imports System.IO

然后运行以下命令(将文件名值替换为您要删除的文件):

Public Sub Main()
    Try
        Dim filename As String = "C:\fileYouWantToDelete.txt"
        If File.Exists(filename) Then
            File.Delete(filename)
        End If
    Catch ex As Exception
        Dts.Events.FireError(0, "File Killer", ex.Message, String.Empty, 0)
    End Try
    Dts.TaskResult = ScriptResults.Success
End Sub

这是DTS / vbscript方式的链接(虽然我强烈建议不要创建dts包,因为产品已经死了,有人只需要在几个月/几年内转换代码):http://www.codekeep.net/snippets/187006e9-bce2-42cd-85fd-231eced17c80.aspx

答案 1 :(得分:1)

您始终可以使用文件系统任务,并从该任务中选择“删除文件”选项以删除文件。无需进入脚本任务的开销。

文件系统任务允许您复制,移动或删除文件。

当然这是SSIS,我同意brian比使用DTS来实现您的解决方案更好。

我不确定删除文件是如何准备另一个程序包来获取刚删除的文件。