Как программно добавить параметры в источник Oledb в ssis

#c# #sql #sql-server #ssis

#c# #sql #sql-сервер #ssis

Вопрос:

Я создаю пакет ssis, который содержит источник OLE DB.

Исходный компонент OLE DB execute SP является:

 EXEC [dbo].[USP_GetCustomerEtlSourceDetailRecordSet] @OrganizationName=?,@SourceRunID=?
 

Как мне создать параметры с помощью кода C # для передачи в вышеупомянутый SP?

Я попробовал это, и это не работает, как мне сопоставить параметр «@organizationName», который является параметром проекта?

 Guid variableGuid = new Guid(proj.Parameters["OrganizationName"].ID);
Guid SourceRunID = new Guid(Parent_ETLSourceRunId.ID);
String Parent_ETLSourceRunId1 = @"""@OrganizationName"",{"   variableGuid.ToString().ToUpper()   @"}"   ";"   @"""@SourceRunID"",{"   SourceRunID.ToString().ToUpper()   @"};""";
srcDesignTime.SetComponentProperty("ParameterMapping", Parent_ETLSourceRunId1);
 

Ответ №1:

Это то, что я сделал, чтобы передать параметры хранимой процедуре. Перетащил задачу выполнения SQL на панель конструктора, ниже приведен SQL-запрос, который я использовал. SQL-запрос

Следующий шаг — перейти к разделу задачи «Сопоставление параметров». Я нажал на кнопку «Добавить», в столбце переменных есть выпадающий список всех доступных переменных.
Выберите переменную из списка

Обратите внимание, что значение переменной передается в сохраненный процесс, поэтому направление — «ввод».

Эти две статьи должны дать вам дополнительную информацию о параметрах сопоставления и наборе результатов
, передавая параметры с помощью script task