gpt4 book ai didi

sql-server - 文件扩展名脚本任务和错误处理

转载 作者:行者123 更新时间:2023-12-02 02:47:04 25 4
gpt4 key购买 nike

我几乎没有使用 VB 脚本或 C# 的经验。我使用一些符合我目的的在线教程创建了这个 SSIS 包,但我必须对其进行微调以满足我的要求。

当前场景:

我正在尝试运行一个 SSIS 包,它有一个 for-each 循环容器,它在目录中导入扩展名为 *.txt 的文件,因为文件名不是固定的。这个 for-each 循环容器之后是一些其他 SQL 任务。

即使目录中没有文件,包也会成功执行(可能是我在创建容器和数据流任务、文件系统任务时做错了什么)。这会导致 for-each 循环容器末尾的 SQL 脚本成功执行,从而导致错误数据。

要求:
如果目录中没有文件,包应该失败。我必须在 for-each 循环容器之前实现一个脚本,但不确定该怎么做。任何线索将不胜感激!

我做了类似的事情,但不确定如何搜索 wrt 扩展名而不是文件名:

Public Sub Main()
'
' Add your code here
'
Dim fileName As String
fileName = "filename.txt"

If System.IO.File.Exists(fileName) Then
Dts.Variables("User::bolFileExists").Value = True
Else
Dts.Variables("User::bolFileExists").Value = False
End If

Dts.TaskResult = ScriptResults.Success
End Sub

最佳答案

您应该使用 System.IO.Directory.GetFiles() 函数。

If System.IO.Directory.GetFiles(<your path goes here>, "*.txt", SearchOption.AllDirectories).Length = 0 Then 
Dts.Variables("User::bolFileExists").Value = False
Else
Dts.Variables("User::bolFileExists").Value = True
End If

关于sql-server - 文件扩展名脚本任务和错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54190927/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com