Спасибо за все ваши предложения, но, к сожалению, они не сработали, однако я создал умный обходной путь для этого.
Агент сервера SQL заключает переменное значение в одинарную кавычку, например, указывает Jon Doe в агенте сервера sqlагент оборачивает его как «Jon Doe» и передает его в пакет служб SSIS, поэтому, если вы введете значение с апострофом, это нарушит работу агента сервера sql и не выполнит пакет служб SSIS, который будет выглядетьэтот EG, передающий это значение: 'John O' Doe ', это приведет к тому, что агент прервет задание, поэтому вам нужно передать значение вашей переменной как: John O''Doe, и агент обернет его следующим образом:' John O '' 'Сделайте так, чтобы вам нужно было включить следующую логику в ваш пакет служб SSIS:
Объявить @TempVar nVarchar (50) SET @TempVar = REPLACE (?, '' '' '', CHAR (39))
Приведенный выше код создает переменную для хранения значения параметра.Он заменяет 4 одинарные кавычки на одну.CHAR (39) - это ASCII-представление одной кавычки.Это приведет к тому, что значение переменной будет выглядеть как John O'Doe.Надеюсь, это поможет.
Причина, по которой я хотел передать значение переменной от агента, поскольку мне приходилось очень часто менять значение переменной из пакета служб SSIS, который необходимо будет развертывать каждый раз.Так что этот путь быстрее.