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


Контейнеры служб Integration Services

Контейнеры в службах SQL Server Integration Services представляют собой объекты, содержащие структуру пакетов и службы для задач. Они поддерживают повторение потоков управления в пакетах, а также группируют задачи и контейнеры в единые рабочие объекты. Кроме задач контейнеры могут включать другие контейнеры.

Пакеты используют контейнеры для следующих целей.

  • Повторение задач для каждого элемента коллекции: файлов, папок, схем или управляющих объектов SQL Server (SMO). Например, пакет может выполнять инструкции Transact-SQL, размещенные в нескольких файлах.

  • Повторение задач до тех пор, пока значение определенного выражения не будет равно false. Например, пакет может посылать разные сообщения по электронной почте семь раз, один раз в каждый день недели.

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

Типы контейнеров

Службы Integration Services поддерживают четыре типа контейнеров для построения пакетов. В следующей таблице перечислены типы контейнеров.

Контейнер

Описание

Контейнер «цикл по каждому элементу»

Повторяет запуск потока управления для каждого элемента, используя перечислитель.

Контейнер «цикл по элементам»

Повторяет запуск потока управления с проверкой условия.

Контейнер последовательности

Группирует задачи и контейнеры в потоки управления, являющиеся частью потока управления пакета.

Контейнер «Сервер задач»

Обеспечивает поддержку служб для отдельной задачи.

Пакеты и обработчики событий также являются типами контейнеров. Дополнительные сведения см. в разделах Пакеты служб Integration Services и Обработчики событий служб Integration Services.

Сводка свойств контейнера

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

Свойство

Описание

DelayValidation

Логическое значение, указывающее, откладывается ли проверка контейнера до времени выполнения. Значение этого свойства по умолчанию равно False.

Дополнительные сведения см. в разделе DelayValidation.

Description

Описание контейнера. Свойство содержит строку, но может быть пустым.

Дополнительные сведения см. в разделе Description.

Disable

Логическое значение, указывающее, запущен ли контейнер. Значение этого свойства по умолчанию равно False.

Дополнительные сведения см. в разделе Disable.

DisableEventHandlers

Логическое значение, указывающее, связаны ли обработчики событий с запуском контейнера. Значение этого свойства по умолчанию равно False.

FailPackageOnFailure

Логическое значение, указывающее, завершается ли работа пакета с ошибкой в случае ошибки в контейнере. Значение этого свойства по умолчанию равно False.

Дополнительные сведения см. в разделе FailPackageOnFailure.

FailParentOnFailure

Логическое значение, указывающее, завершается ли работа родительского контейнера с ошибкой в случае ошибки в контейнере. Значение этого свойства по умолчанию равно False.

Дополнительные сведения см. в разделе FailParentOnFailure.

ForcedExecutionValue

Если свойство ForceExecutionValue равно True, объект содержит необязательное значение выполнения для контейнера. Значение этого свойства по умолчанию равно 0.

Дополнительные сведения см. в разделе ForcedExecutionValue.

ForcedExecutionValueType

Тип данных ForcedExecutionValue. Значение этого свойства по умолчанию равно Int32.

ForceExecutionResult

Значение, определяющее вынужденный результат запуска пакета или контейнера. Допустимые значения — None, Success, Failure и Completion. Значение этого свойства по умолчанию равно None.

Дополнительные сведения см. в разделе ForceExecutionResult.

ForceExecutionValue

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

Дополнительные сведения см. в разделе ForceExecutionValue.

ID

Идентификатор GUID контейнера, назначаемый ему при создании пакета. Это свойство доступно только для чтения.

ID.

IsolationLevel

Уровень изоляции транзакции контейнера. Допустимые значения — Unspecified, Chaos, ReadUncommitted, ReadCommitted, RepeatableRead, Serializable и Snapshot. По умолчанию для этого свойства устанавливается значение Serializable. Дополнительные сведения см. в разделе IsolationLevel.

LocaleID

Локаль Microsoft Win32. Значение этого свойства по умолчанию равно языковому стандарту операционной системы на локальном компьютере.

Дополнительные сведения см. в разделе LocaleID.

LoggingMode

Значение, определяющее для контейнера режим записи в журнал. Допустимые значения — Disabled, Enabled и UseParentSetting. По умолчанию для этого свойства устанавливается значение UseParentSetting. Дополнительные сведения см. в разделе DTSLoggingMode.

MaximumErrorCount

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

Дополнительные сведения см. в разделе MaximumErrorCount.

Name

Имя контейнера.

Дополнительные сведения см. в разделе Name.

TransactionOption

Участие контейнера в транзакции. Допустимые значения — NotSupported, Supported, Required. По умолчанию для этого свойства устанавливается значение Supported. Дополнительные сведения см. в разделе DTSTransactionOption.

Чтобы узнать о всех свойствах, доступных для контейнеров «цикл по каждому элементу», «цикл по элементам», контейнеров последовательности и сервера задач при настройке свойств программно, см. следующие разделы по API-интерфейсу служб Integration Services:

  • T:Microsoft.SqlServer.Dts.Runtime.ForEachLoop

  • T:Microsoft.SqlServer.Dts.Runtime.ForLoop

  • T:Microsoft.SqlServer.Dts.Runtime.Sequence

  • T:Microsoft.SqlServer.Dts.Runtime.TaskHost

Объекты, расширяющие функциональные возможности контейнеров

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

Исполняемые объекты

Исполняемыми объектами называются задачи уровня контейнера, а также любые контейнеры внутри контейнера. Исполняемый объект может быть одной из задач или одним из контейнеров, изначально включенных в службы Integration Services, либо пользовательской задачей. Дополнительные сведения см. в разделах Задачи служб Integration Services и Контейнеры служб Integration Services.

Управление очередностью

Элементы управления очередностью связывают контейнеры и задачи из одного родительского контейнера в упорядоченный поток управления. Дополнительные сведения см. в разделе Управление очередностью.

Обработчики событий

Обработчики события на уровне контейнера реагируют на события, инициируемые контейнером или объектами, содержащимися в нем. Дополнительные сведения см. в разделе Обработчики событий служб Integration Services.

Переменные

Переменные, используемые в контейнерах, включают системные переменные уровня контейнера, поддерживаемые службами Integration Services, а также пользовательские переменные, используемые контейнером. Дополнительные сведения см. в разделе Переменные служб Integration Services.

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

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

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

См. также

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