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


XML-источник

XML-источник считывает файл XML-данных и заполняет данными столбцы в выходе источника.

Данные в XML-файлах часто содержат иерархические связи. Например, XML-файл данных может представлять собой каталоги и элементы этих каталогов. Перед включением данных в поток связь элементов в XML-файле должна быть определена и должен быть создан выход для каждого элемента файла.

Схемы

XML-источник использует схему для представления данных в формате XML. XML-источник поддерживает использование файла определения схемы XML (XSD) или встроенных схем для перевода данных из формата XML в табличный формат. XML-источник может быть настроен с помощью диалогового окна Редактор источника «XML», интерфейс пользователя может создавать XSD-файл из указанного XML-файла.

ПримечаниеПримечание

Определения DTD не поддерживаются.

Схемы поддерживают только одно пространство имен, они не поддерживают коллекции схем.

ПримечаниеПримечание

XML-источник не сверяет данные в XML-файле с XSD.

Редактор XML-источника

Данные в XML-файлах часто содержат иерархические отношения. Диалоговое окно Редактор источника «XML» использует указанную схему для создания выходов XML-источника. Можно указать XSD-файл, использовать встроенную схему или создать XSD-файл из предоставленного XML-файла. Схема должна быть доступна во время редактирования.

XML-источник создает табличные структуры из XML-данных путем создания выхода для каждого элемента, который содержит вложенные элементы в XML-файлах. Например, если XML-данные представляют собой каталоги и их элементы, XML-источник создает выход для каталогов и выход для каждого типа элемента, содержащегося в этих каталогах. Выход каждого элемента будет содержать выходные столбцы с атрибутами этого элемента.

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

XML-источник создает выход для каждого элемента, но не обязательно использовать все выходы. Можно удалить любой выход, который не будет использован, или просто не подключать его к компоненту нисходящего потока данных.

XML-источник также создает имена выходов, чтобы убедиться в том, что эти имена однозначны. Эти имена могут быть длинными и оказаться неудобными для идентификации выходов. Выходы можно переименовывать с условием уникальности новых имен. Также можно изменить тип данных и длину выходных столбцов.

Для каждого выхода XML-источник добавляет выход ошибок. По умолчанию столбцы выхода ошибок имеют строковый тип данных в формате Юникод (DT_WSTR) длиной 255 символов, но эти столбцы выхода ошибок можно настраивать, изменяя тип данных и длину.

Если в XML-файле данных содержатся элементы, которых нет в XSD-файле, то такие элементы игнорируются и никакой выход для них не создается. С другой стороны, если в XML-файле данных нет элементов, которые есть в XSD-файле, выход будет содержать столбцы со значением NULL.

Когда данные извлекаются из XML-файла данных, они преобразуются в тип данных служб Службы Integration Services. Однако источник XML не может преобразовать XML-данные в типы данных DT_TIME2 или DT_DBTIMESTAMP2, поскольку источник эти типы не поддерживает. Дополнительные сведения см. в разделе Типы данных служб Integration Services.

XSD-файл или встроенная схема может определять тип данных элементов, но если это не так, то диалоговое окно Редактор источника «XML» устанавливает тип данных строки Юникода (DT_WSTR) для столбца выхода, содержащего этот элемент, и устанавливает длину столбца, содержащую 255 символов.

Если схема данных указывает максимальную длину элемента, длина выходного столбца становится равной этому значению. Если максимальная длина больше длины, поддерживаемой типом данных служб Службы Integration Services, к которому приведен элемент, то данные усекаются до допустимой для этого типа максимальной длины. Например, если длина строки 5000, она усекается до 4000 символов, так как максимальная длина типа данных DT_WSTR — 4000 символов; таким же образом данные типа byte урезаются до 8000 — до максимальной длины типа данных DT_BYTES. Если в схеме не указана максимальная длина, то по умолчанию длина столбцов с любым типом данных составляет 255. Усечение данных в XML-источнике происходит так же, как и в других компонентах потока данных. Дополнительные сведения см. в разделе Обработка ошибок в данных.

Тип данных и длина столбца могут быть изменены. Дополнительные сведения см. в разделе Типы данных служб Integration Services.

Конфигурация XML-источника

XML-источник поддерживает три разных способа доступа к данным. Можно указать расположение XML-файла, переменную, содержащую расположение этого файла, или же переменную с данными в формате XML.

XML-источник содержит пользовательские свойства XMLData и XMLSchemaDefinition, которые можно обновлять выражениями свойств во время загрузки пакета. Дополнительные сведения см. в разделах Выражения служб Integration Services (SSIS), Использование выражений свойств в пакетах и Пользовательские свойства источника «XML».

XML-источник поддерживает несколько обычных выходов и несколько выходов ошибок.

В службах SQL Server Службы Integration Services предусмотрено диалоговое окно Редактор источника XML для настройки этого источника. Это диалоговое окно доступно из конструктора служб Службы SSIS.

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

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

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

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

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

Извлечение данных с помощью XML-источника

См. также

Курируемый ответ Создание назначения XML для пакета служб SSIS на curatedviews.cloudapp. net.

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

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


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