Выполнить функцию Oracle 11g с сервера SQL со вставкой результата в таблицу SQL - PullRequest
1 голос
/ 21 июня 2020

У меня есть пакет SSIS, который запрашивает данные из таблицы SQL (с помощью инструмента SQL Task) и передает их вывод в контейнер ForEach l oop, который вставляет значение в переменную запроса. Внутри контейнера находится еще одна задача SQL с подключением Oracle для выполнения функции в Oracle с запросом. Хотя пакет работает очень медленно, он все равно дает результат. Однако мне нужна помощь, чтобы поместить результат в таблицу SQL.

Кроме того, дайте мне знать, есть ли более эффективные способы оптимизации пакета.

Заранее благодарю.

1 Ответ

0 голосов
/ 21 июня 2020

Я советую изменить запрос внутри пакета SSIS, чтобы вставить 1000 на 1000 вместо 1 на 1. Вы можете поиграть с числами, принимая во внимание результат производительности.

INSERT ALL
  INTO mytable (column1, column2, column_n) VALUES (expr1, expr2, expr_n)
  INTO mytable (column1, column2, column_n) VALUES (expr1, expr2, expr_n)
  INTO mytable (column1, column2, column_n) VALUES (expr1, expr2, expr_n)
  ...
SELECT * FROM dual
...