5

是否可以从 SSIS 删除 Excel 工作表中的行?

4

3 回答 3

3

来自论坛

  1. 在控制流中创建文件系统任务,删除文件。
  2. 创建一个 sql 任务,excel 连接类型,我使用我之前的 excel 连接,然后使用创建表脚本作为我的 sql 语句
  3. 让我之前的导出对象保持不变,然后按照描述的顺序链接这些流。
于 2008-10-28T17:58:02.737 回答
1

微软的一个 arctile 声称您不能删除整行,但是您可以删除单元格中的值。http://support.microsoft.com/kb/257819

这个线程与有同样问题的人有关: http ://www.tech-archive.net/Archive/DotNet/microsoft.public.dotnet.framework.adonet/2006-12/msg00245.html

简而言之,答案似乎是“不”,您不能通过 SSIS 使用 ado.net 删除整行。您可以在 excel 本身中使用 excel 自动化或 vb.net 来完成此任务。

于 2009-01-06T21:51:55.113 回答
1

我也按照 Gulzar 建议的步骤进行了操作,但是,如果有人想要详细信息,这就是我所做的:

我最初的任务是从 SQL Server 读取一些信息并将其导出到 Excel:

在此处输入图像描述

然后我添加了建议的任务,一个是删除目标 Excel 文件,另一个是重新创建它:

在此处输入图像描述

这是删除文件的任务,它是“文件系统任务”:

在此处输入图像描述

这是重新创建 Excel 文件的任务,它是“执行 SQL 任务”:

在此处输入图像描述

需要为此“执行 SQL 任务”设置以下内容:

一个。连接类型是“Excel”

湾。如建议的那样,连接与原始导出任务使用的连接相同

C。SQL 语句是从原始导出任务中复制的

基本上就是这样。运行它,它应该可以工作。我与 SQL Server 的连接如下所示:

在此处输入图像描述

我的 Excel 连接最初是在创建导出任务时创建的,如下所示:

在此处输入图像描述

在“数据流”部分,使用Source Assistant,原来的“OLE DB Source”有这样的:

在此处输入图像描述

并且,使用目标助手,原始 Excel 目标具有以下内容:

在此处输入图像描述

这是我从原始 Excel 目标复制的 SQL 语句:

在此处输入图像描述

于 2017-10-10T21:36:15.567 回答