Как удалить строки Excel в SSIS? - PullRequest
4 голосов
/ 28 октября 2008

Можно ли удалить строки на листе Excel из служб SSIS?

Ответы [ 3 ]

3 голосов
/ 28 октября 2008

Из форума

  1. создать задачу файловой системы в потоке управления, удалив файл.
  2. создать задачу sql, тип подключения Excel, для этого я использовал свое предыдущее подключение Excel, а затем в качестве оператора sql использовал скрипт создания таблицы
  3. оставил мой предыдущий объект экспорта таким же, а затем связал их в указанном порядке.
1 голос
/ 11 октября 2017

Я также сделал это, выполнив шаги, предложенные Гулзаром, но, если кому-то понадобятся подробности, я сделал следующее:

У меня изначально была задача прочитать некоторую информацию из SQL Server и экспортировать ее в Excel:

enter image description here

Затем я добавил предлагаемые задачи, одну для удаления целевого файла Excel и одну для его повторного создания:

enter image description here

Это задача удаления файла, это «Задача файловой системы»:

enter image description here

Это задача для воссоздания файла Excel, это «Задача Execute SQL»:

enter image description here

Для этой «Задачи выполнения SQL» необходимо установить следующее:

а. Тип подключения "Excel"

б. Как и предполагалось, соединение такое же, как и в исходной задаче экспорта

с. Оператор SQL был скопирован из исходной задачи экспорта

Вот и все. Запустите его, и оно должно работать. Мое подключение к SQL Server выглядит следующим образом:

enter image description here

Мое подключение к Excel, которое было изначально создано при создании задачи экспорта, выглядит следующим образом:

enter image description here

В разделе «Поток данных» с помощью Source Assistant исходный «Источник OLE DB» имеет следующее:

enter image description here

И, используя помощника назначения, исходное назначение Excel имеет следующее:

enter image description here

Это оператор SQL, который я скопировал из исходного назначения Excel:

enter image description here

1 голос
/ 07 января 2009

Компания Microsoft заявляет, что вы не можете удалить всю строку, но можете удалить значение в ячейке. http://support.microsoft.com/kb/257819

Эта тема относится к кому-то с такой же проблемой: http://www.tech -archive.net / Архив / DotNet / microsoft.public.dotnet.framework.adonet / 2006-12 / msg00245.html

Короче говоря, похоже, что ответ «нет», вы не можете удалить всю строку, используя ado.net через SSIS. Вы можете использовать автоматизацию Excel или vb.net в самом Excel для выполнения этой задачи.

...