Поделиться через


Назначение Excel

Назначение «Excel» загружает данные в листы или диапазоны в книгах Microsoft Excel.

Режимы доступа

Назначение «Excel» предоставляет три различных режима доступа к данным для загрузки:

  • Таблица или представление.

  • Таблица или представление, указанные в переменной.

  • Результат выполнения инструкции SQL. Может использоваться параметризированный запрос.

Важное примечаниеВажно!

Лист или диапазон в Excel эквивалентны таблице или представлению. Списки доступных таблиц в источнике Excel и редакторах назначения отображают только существующие листы (обозначенные знаком $, добавленным к имени листа, как в имени Лист1$) и именованные диапазоны (обозначенные отсутствием знака $, как в имени Мой_диапазон).

Замечания по использованию

Диспетчер соединений Excel использует поставщик Microsoft OLE DB для Jet 4.0, который поддерживает драйвер Excel ISAM (индексированный последовательный метод доступа) для подключения, а также чтения и записи данных в источники данных Excel.

Многие существующие статьи баз знаний Майкрософт документируют поведение этого поставщика данных и драйвера, и хотя эти статьи не затрагивают службы Службы Integration Services или их предшественников службы DTS, необходимо знать о некоторых моментах поведения, которые могут привести к непредвиденным результатам. Общие сведения об использовании и поведении драйвера Excel см. в разделе Как использовать ADO с данными Excel из Visual Basic или VBA.

При сохранении данных в назначение «Excel» следующее поведение поставщика Jet в сочетании с драйвером Excel может привести к непредвиденным результатам.

  • Сохранение текстовых данных. При сохранении значений текстовых данных в назначение «Excel» драйвер Excel предваряет текст в каждой ячейке символом одинарной кавычки ('); это гарантирует, что сохраненные значения будут интерпретироваться как текстовые. При разработке других приложений, которые считывают или обрабатывают сохраненные данные, следует выполнять специальную обработку для символа одинарной кавычки ('), за которым следуют текстовые значения.

    Сведения о том, как избежать включения кавычки, см. в сообщении При преобразовании данных в Excel с использованием конечного компонента потока данных Excel в пакете SSIS ко всем строкам добавляется одинарная кавычка в блоге на сайте msdn.com.

  • Сохранение данных типа memo (ntext). Чтобы успешно сохранять в столбцы Excel строки, имеющие длину более 255 символов, драйвер должен распознать тип данных целевого столбца как memo, а не как string. Если в целевой таблице уже содержатся строки данных, то в столбце типа memo в первых нескольких строках, которые проверит драйвер, должен содержаться, по крайней мере, один экземпляр значения, имеющего длину более 255 символов. Если целевая таблица создается во время проектирования пакета или во время выполнения, в инструкции CREATE TABLE необходимо использовать LONGTEXT (или один из его синонимов) в качестве типа данных для столбца типа memo.

  • Типы данных. Драйвер Excel распознает только ограниченный набор типов данных. Например, все числовые столбцы воспринимаются как тип double (DT_R8), а все строковые столбцы (кроме столбцов типа memo) воспринимаются как строки в Юникоде длиной 255 символов (DT_WSTR). Службы Службы Integration Services сопоставляют типы данных Excel следующим образом.

    • Numeric double (DT_R8)

    • Currency currency (DT_CY)

    • Boolean Boolean (DT_BOOL)

    • Date/time datetime (DT_DATE)

    • String     Строка в Юникоде длиной 255 символов (DT_WSTR)

    • Memo     Текстовый поток в Юникоде (DT_NTEXT)

  • Преобразование типов данных и длины. Службы Службы Integration Services не выполняют неявное преобразование типов данных. Поэтому может потребоваться использование преобразования «Производный столбец» или «Преобразование данных», чтобы выполнить явное преобразование данных до их загрузки в назначение, отличное от Excel, либо выполнить преобразование данных, отличных от данных Excel, до их загрузки в назначение «Excel». В этом случае может оказаться полезным создать исходный пакет с помощью мастера импорта и экспорта, который сам настроит необходимые преобразования. Ниже приведены некоторые примеры преобразований, которые могут потребоваться.

    • Преобразование между строковыми столбцами Excel в Юникоде и строковыми столбцами в формате с конкретными кодовыми страницами, отличными от Юникода.

    • Преобразование между строковыми столбцами Excel длиной в 255 символов и строковыми столбцами другой длины.

    • Преобразование между числовыми столбцами Excel двойной точности и числовыми столбцами других типов.

Настройка назначения Excel

Назначение «Excel» использует диспетчер соединений Excel для подключения к источнику данных, а диспетчер соединений определяет файл книги для использования. Дополнительные сведения см. в разделе Диспетчер соединений с Excel.

Назначение «Excel» имеет один обычный вход и один вывод ошибок.

Можно задавать свойства с помощью конструктора Службы SSIS или программным путем.

Дополнительные сведения о свойствах, которые можно установить в диалоговом окне Редактор назначения «Excel», см. в одном из следующих разделов:

Диалоговое окно Расширенный редактор содержит все свойства, которые могут устанавливаться программными средствами. Дополнительные сведения о свойствах, которые вы можете задать в диалоговом окне Расширенный редактор или программными средствами, см. в следующих разделах.

Дополнительные сведения об установке свойств см. в разделе Установление свойств компонента потока данных.

Связанные задачи

См. также

Значок служб Integration Services (маленький)Оставайтесь в курсе последних возможностей служб Integration Services

Чтобы загрузить новейшую документацию, статьи, образцы и видеоматериалы корпорации Майкрософт, а также лучшие решения участников сообщества, посетите страницу служб Службы Integration Services на сайте MSDN:


Чтобы получать автоматические уведомления об этих обновлениях, подпишитесь на RSS-каналы, предлагаемые на этой странице.

См. также

Задания

Работа с файлами Excel в задаче «Скрипт»

Основные понятия

Источник Excel

Переменные в службах Integration Services (SSIS)

Поток данных