Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения: среда выполнения интеграции SSIS SQL Server
в Фабрика данных Azure
Преобразование команд 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 (SSIS), Использование выражений свойств в пакетах и Пользовательские свойства преобразований.
Это преобразование содержит один вход, один обычный вывод и один вывод ошибок.
Ведение журнала
В журнал можно записывать вызовы, сделанные преобразованием «Команда OLE DB» к внешним источникам данных. Эта возможность протоколирования может быть использована для устранения неполадок соединений и выполнения команд для внешних источников данных, которые выполняются преобразованием «Команда OLE DB». Для протоколирования вызовов, которые преобразование «Команда OLE DB» совершает к внешним поставщикам данных, необходимо разрешить ведение журнала пакета и выбрать событие Диагностика на уровне пакета. Дополнительные сведения см. в разделе Инструменты устранения неполадок при выполнении пакетов.
Связанные задачи
Преобразование можно настроить с помощью конструктора служб SSIS или объектной модели. Сведения о настройке этого преобразования программными средствами см. в руководстве разработчика.
настроить преобразование «Команда OLE DB»
Для добавления и настройки преобразования «Команда OLE DB» пакет должен уже содержать по меньшей мере одну задачу потока данных и такой источник, как источник неструктурированного файла или источник OLE DB. Преобразование обычно используется для выполнения параметризованных запросов.
Настройка преобразования «Команда OLE DB»
В SQL Server Data Tools (SSDT) откройте проект служб Integration Services, содержащий нужный пакет.
Чтобы открыть пакет, дважды щелкните его в обозревателе решений.
Перейдите на вкладку Поток данных , затем из области элементовпереместите преобразование «Команда OLE DB» в область конструктора.
Подключите преобразование "Команда OLE DB" к потоку данных, перетащив соединитель — зеленую или красную стрелку — из источника данных или из предыдущего преобразования в преобразование "Команда OLE DB".
Щелкните правой кнопкой мыши компонент и выберите редактировать или показать Расширенный редактор.
На вкладке Диспетчеры соединений выберите диспетчер соединений OLE DB в списке Диспетчер соединений . Дополнительные сведения см. в разделе Диспетчер соединений OLE DB.
Перейдите на вкладку Свойства компонентов и нажмите кнопку с многоточием (…) в поле SqlCommand.
В редакторе строковых значенийвведите параметризованную инструкцию SQL, используя знак вопроса (?) в качестве маркера параметра для каждого параметра.
Нажмите кнопку Обновить. При нажатии кнопки Обновитьпреобразование создает столбец для каждого параметра в коллекции "Внешние столбцы" и устанавливает свойство DBParamInfoFlags.
Щелкните вкладку Свойства входов и выходов .
Раскройте Вход команды OLE DB, затем раскройте коллекцию Внешние столбцы.
Проверьте, что в коллекции Внешние столбцы перечисляются столбцы для всех параметров инструкции SQL. Столбцы имеют имена Param_0, Param_1и т. д.
Не изменяйте имена столбцов. При изменении имен столбцов службы Integration Services создает ошибку проверки для преобразования команды OLE DB.
Не изменяйте и тип данных. Свойство DataType в каждом столбце устанавливается в соответствии с правильным типом данных.
Если в списке Внешние столбцы нет ни одного столбца, введите их вручную.
Щелкните Добавить столбец один раз для каждого параметра в инструкции SQL.
Переименуйте столбцы в Param_0, Param_1и т. д.
Укажите значение в свойстве DBParamInfoFlags. Значение должно соответствовать значению перечисления OLE DB DBPARAMFLAGSENUM. Дополнительные сведения см. в справочной документации по OLE DB.
Задайте тип данных столбца и в зависимости от типа данных задайте кодовую страницу, длину, точность и масштаб столбца.
Чтобы удалить неиспользуемый параметр, выберите параметр в коллекции Внешние столбцы, затем щелкните Удалить столбец.
Щелкните Сопоставления столбцов и сопоставьте столбцы в списке Входные столбцы с параметрами в списке Доступные целевые столбцы .
Щелкните OK.
Чтобы сохранить обновленный пакет, щелкните Сохранить в меню Файл .