Преобразование «Команда OLE DB»

Преобразование «Команда OLE DB» выполняет инструкцию SQL для каждой строки потока данных. Например, можно выполнить инструкцию SQL, с помощью которой создаются, обновляются или удаляются строки в таблице базы данных.

Преобразование «Команда OLE DB» можно настроить следующими способами.

  • Указать инструкцию SQL, которую преобразование выполняет для каждой строки.

  • Задать время ожидания инструкции SQL в секундах.

  • Указать кодовую страницу по умолчанию.

Обычно инструкция SQL содержит параметры. Значения параметров хранятся во внешних столбцах на входе преобразования, и сопоставление входного столбца с внешним столбцом означает сопоставление входного столбца с параметром. Например, для размещения строк в таблице DimProduct в соответствии со значениями в столбце ProductKey и для их последующего удаления можно определить соответствие внешнего столбца Param_0 входному столбцу ProductKey и выполнить инструкцию SQL DELETE FROM DimProduct WHERE ProductKey = ?. Преобразование «Команда OLE DB» определяет имена параметров, которые нельзя изменить. Имена параметров представляют собой Param_0, Param_1 и т. д.

Если преобразование «Команда OLE DB» настраивается в диалоговом окне Расширенный редактор, с помощью кнопки Обновить можно автоматически сопоставить параметры инструкции SQL с внешними столбцами входа преобразования, а также определить характеристики каждого параметра. Тем не менее, если поставщик OLE DB, используемый преобразованием «Команда OLE DB», не поддерживает извлечение сведений о параметрах из самих параметров, то внешние столбцы должны настраиваться вручную. В этом случае для каждого параметра необходимо добавить столбец ко внешнему входу преобразования, присвоить столбцам имена типа Param_0, указать значение свойства DBParamInfoFlags и сопоставить входные столбцы, в которых содержатся значения параметров, внешним столбцам.

Значение DBParamInfoFlags представляет собой характеристики параметра. Например, значение 1 показывает, что параметр является входным, а значение 65 показывает, что параметр является входным и может принимать значение NULL. Значения должны соответствовать значениям из перечисления OLE DB DBPARAMFLAGSENUM. Дополнительные сведения см. в справочной документации по OLE DB.

Преобразование OLE DB Command включает в себя пользовательское свойство SQLCommand. Это свойство может быть обновлено выражением свойства при загрузке пакета. Дополнительные сведения см. в разделах Справочник по выражениям служб Integration Services, Использование выражений свойств в пакетах и Пользовательские свойства преобразований.

Это преобразование содержит один вход, один обычный выход и один выход ошибки.

Устранение неполадок, связанных с преобразованием «Команда OLE DB»

В журнал можно записывать вызовы, сделанные преобразованием «Команда OLE DB» к внешним источникам данных. Эта возможность протоколирования может быть использована для устранения неполадок соединений и выполнения команд для внешних источников данных, которые выполняются преобразованием «Команда OLE DB». Для протоколирования вызовов, которые преобразование «Команда OLE DB» совершает к внешним поставщикам данных, необходимо разрешить ведение журнала пакета и выбрать событие Диагностика на уровне пакета. Дополнительные сведения см. в разделе Устранение неполадок выполнения пакетов.

Настройка преобразования «Команда OLE DB»

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

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

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

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

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

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