Ниже показано, как я это делаю. это сейчас -
- Создал переменную типа объекта и извлек в нее все 150 тыс. строк данных из таблицы, используя полный набор результатов с помощью задачи «Выполнение sql». (имеет 4 столбца в нем)
- Использовал контейнер цикла foreach для итерации каждой строки, полученной на шаге 1.
Внутри контейнера цикла foreach снова использовал Execute sql, в которой я вызываю хранимую процедуру с параметрами в виде 4 столбцов в строке.
ПРИМЕЧАНИЕ: хранимая процедура имеет несколько проверок и один оператор обновления, который будет выполняться для всех 150 тысяч записей.
Я также пытался использовать задачу сценария и внутри задачи сценария перебирать значение объекта с помощью ADO .net, но затраченное время почти такое же, более 3 часов.Кроме того, таблица, содержащая 150 тыс. записей, не имеет идентификатора первичного ключа.
Пожалуйста, помогите мне улучшить производительность этого процесса
Подробнее здесь: https://stackoverflow.com/questions/787 ... reach-loop