繁体   English   中英

SSIS 根据 SQL 数据库中的选择从文件夹中删除文件

[英]SSIS Delete files from folder based on a selection from SQL Database

我有一个关于根据选择删除文件的问题。 所以,我有一个 SQL 表,其中有一列带有文件名。 我要做的是从那里获取文件名并从指定路径中删除具有该名称的物理文件。

我尝试的是执行 sql 任务,选择需要删除的完整文件路径(包括文件名)并将它们存储在 object 变量中,然后尝试使用“来自变量枚举器”的 ForEach 循环容器获取这些结果并使用文件系统任务删除文件,但我认为这不是正确的方法。 package 的执行以成功结束,但它在 ForEach 循环容器处结束,没有到达(执行)文件系统任务,因此文件没有被删除。

Select 语句(还添加了文件的完整路径作为列,以便文件系统任务知道物理文件的存储位置):

select file_full_path from t1
where flag = 'YES'

你们知道解决这个问题的方法吗?

您可以做的是将循环设置为Foreach ADO Enumerator ,因此您的过程将是:

1: SQL 任务 - map file_full_path 到 object 变量,比如“filesdel”

在此处输入图像描述

2:Foreach 循环设置为 Foreach ADO 枚举器

在此处输入图像描述

3:Map for 循环项到一个字符串变量,比如'filename':

在此处输入图像描述

4:在文件系统任务中使用字符串变量

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM