2014-09-24 6 views
0

Я собрал пакет SSIS и развернул его на SQL-сервере. Этот пакет должен быть запущен по требованию и должен иметь значения, переданные в него, номер партии и идентификатор пользователя лица, запрашивающего данные. Я потратил немало исследований на то, как передавать значения и не могу найти что-либо, что я мог бы использовать. Самым простым было бы сделать xp_cmdshell из хранимой процедуры или вызвать DTEXEC непосредственно из приложения, но они не могут использоваться в этом случае. Компания решила, что xp_cmdshell представляет собой слишком большой риск для безопасности, и не каждый пользователь будет иметь необходимые разрешения для прямого вызова DTEXEC, а также у компании нет необходимых лицензий для установки двоичных файлов на компьютер каждого пользователя и наличия локального пакета ,Передача значений в пакет SSIS

Все это приводит к вопросу: как передать значения в пакет SSIS?

Я рассмотрел использование SQL-заданий, поскольку они могут изменять переменные в пакете, но тогда я застрял в том, что должен получить значения в задании и не нашел никакого способа сделать это напрямую. Я видел, что рекомендуется использовать таблицу и получить пакет, получая значения оттуда, но это оставляет вопрос о том, как обращаться с несколькими людьми, пытающимися запустить пакет одновременно.

Кроме того, если кто-то задается вопросом, что делает пакет, он выполняет кучу нечетких поисковых запросов, и, поскольку мы используем только SQL Standard, у меня нет возможности делать Fuzzy Stuff из T- SQL через службы основных данных. Идеи?

+0

Одним из способов сделать это будет использование [table as queue] (http://rusanu.com/2010/03/26/using-tables-as-queues/). Итак, на первом этапе он просто отменяет верхний элемент и обрабатывает его. Вы не будете получать несколько экземпляров пакета, если у вас есть несколько заданий SQL-агента в любом случае. –

+0

Отвечает ли этот сайт на ваш вопрос: http://www.bidn.com/blogs/DevinKnight/ssis/1655/passing-values-into-an-ssis-package-at-runtime-from-outside-the-package? –

+1

У вас также не будет возможности использовать компоненты Fuzzy, такие как функции Enterprise Edition. [Поддерживаемые функции по версии] (http://msdn.microsoft.com/en-us/library/cc645993 (v = sql.100) .aspx). Нечеткое содержимое составляет около 55% пути вниз по странице – billinkc

ответ

0

Получается, что SQL Standard не может использовать функции Fuzzy вообще, будь то T-SQL или SSIS (спасибо, billinkc, для указания этого). Поэтому короткий ответ заключается в том, что мы вернемся к чертежной доске о том, как удовлетворить наш поиск данных.