#sql #visual-studio-2012 #ssis #business-intelligence
#sql #visual-studio-2012 #ssis #бизнес-аналитика
Вопрос:
Я использую версию Visual Studio 2012 для сборки пакета SSIS. У меня есть переменная var_root, которая имеет строковое значение — ‘C:ProjectsOBCClientsABC ‘. Когда я пытаюсь запустить pkg, я получаю следующую ошибку:
Ошибка: выражение содержит нераспознанный токен «C». Если «C» является переменной, она должна быть выражена как «@C». Указанный токен недействителен. Если токен предназначен в качестве имени переменной, перед ним должен быть установлен символ @. Ошибка: Попытка проанализировать выражение «C:ProjectsOBCClientsABC » сбой и возвращенный код ошибки 0xC00470A4. Выражение не может быть проанализировано. Он может содержать недопустимые элементы или может быть неправильно сформирован. Также может возникнуть ошибка нехватки памяти.
Теперь это работает нормально в версии 2008 Business Intelligence studio. Я не знаю, как указать имя переменной. Пожалуйста, помогите мне, если это возможно. Спасибо
Комментарии:
1. Я предполагаю, что этот пакет был перенесен из версии 2008. просто задайте путь в столбце значения вашей переменной или задайте выражение как «C:ProjectsOBCClientsABC » (в двойных кавычках).
2. Да, это сработало!! Я использовал двойные кавычки и двойные косые черты ..»C:\Projects\OBC\Clients\ABC «.
3. О, забыл о косых чертах, но вы бы добрались до этого в конечном итоге.
4. Спасибо за вашу помощь, ценю это!
Ответ №1:
Язык выражений SSIS основан на C, а — это токен, это означает, что вы должны экранировать его с помощью другого. т. е. «» становится «», в отличие от C #, вы не можете префиксить строку символом @, вы должны использовать экранирующий маршрут.
В итоге, когда вы захотите использовать вам нужно использовать два
Ответ №2:
Зачем использовать выражение, хотя, когда вы можете установить значение непосредственно в столбце значений для переменной — без кавычек или двойной косой черты — Просто — C:ProjectsOBCClientsABC
Комментарии:
1. У меня есть перечислитель файлов ForEach, где мне нужно использовать эту переменную. Я пытаюсь скопировать несколько файлов в базу данных.
2. Да, но вместо использования выражения .. если вы прокрутите влево, вы можете установить значение непосредственно в столбце значения
3. В 2008 году у вас не было бы этой функции, но она доступна в 2012 году.