Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:SQL Server
среда выполнения интеграции SSIS в Фабрика данных Azure
Синтаксис выражений служб Integration Services аналогичен синтаксису, используемому языками C и C#. Выражения содержат элементы, такие как идентификаторы (столбцы и переменные), литералы, операторы и функции. В этом разделе обобщаются особые требования синтаксиса средства оценки выражений с точки зрения различных элементов выражений.
Примечание.
В предыдущих версиях Integration Services действовало ограничение в 4000 символов на результат вычисления выражения, если результат имел тип данных Integration Services DT_WSTR или DT_STR. Это ограничение снято.
Образцы выражений, использующих специальные операторы и функции, см. в разделах, посвященных соответствующим операторам и функциям: Операторы (выражение служб SSIS) и Функции (выражение служб SSIS).
Образцы выражений, использующих несколько операторов и функций так же, как идентификаторы и литералы, см. в разделе Примеры расширенных выражений служб Integration Services.
Образец использования выражений свойств см. в разделе Использование выражений свойств в пакетах.
Идентификаторы
Выражения могут содержать идентификаторы столбцов и переменных. Столбцы могут поступать из источника данных или создаваться в результате преобразований в потоке данных. В выражениях можно использовать идентификаторы происхождения для ссылки на столбцы. Идентификаторы происхождения — это числа, однозначно идентифицирующие элементы пакета. Идентификаторы происхождения, на которые есть ссылка в выражении, должны включать префикс решетки (#). Например, идентификатор происхождения 138 указывается в виде #138.
Выражения могут включать системные переменные, которые предоставляют службы SSIS и пользовательские переменные. Префиксы переменных, на которые ссылается выражение, должны содержать знак @. Например, ссылкой на переменную Counter будет являться выражение @Counter. Символ @ не является частью имени переменной; он только указывает средству оценки выражений на то, что идентификатор является переменной. Дополнительные сведения см. в разделе Идентификаторы (SSIS).
Литералы
Выражения могут содержать числовые, строковые и логические литералы. Строковые литералы, использующиеся в выражениях, должны быть заключены в кавычки. Числовые и логические литералы не заключаются в кавычки. В языке выражений содержатся управляющие последовательности для часто используемых символов. Дополнительные сведения см. в разделе Литералы (SSIS).
Операторы
Средство оценки выражений предоставляет набор операторов, обеспечивающий функциональность, аналогичную набору операторов в таких языках, как Transact-SQL, C++ и C#. Однако язык выражений содержит дополнительные операторы и может использовать незнакомые символы. Дополнительные сведения см. в статье Операторы (выражение SSIS).
Оператор разрешения пространства имён
Выражения используют оператор разрешения пространства имен (::), чтобы разрешать неоднозначность переменных, имеющих одинаковые имена. Оператор разрешения пространства имен позволяет определять переменную ее пространством имен, что делает возможным использование в пакете нескольких переменных с одинаковыми именами.
Оператор приведения
Оператор приведения преобразует результаты выражения, значения столбцов, значения переменных и константы из одного типа данных в другой. Оператор приведения типов, поддерживаемый языком выражений, аналогичен оператору приведения типов в языках C и C#. В языке Transact-SQL эту функциональность обеспечивают функции CAST и CONVERT. Синтаксис оператора приведения отличается от синтаксиса, используемого в CAST и CONVERT, в следующем:
В качестве аргумента может использоваться выражение.
Его синтаксис не включает ключевое слово CAST.
В его синтаксисе не используется ключевое слово AS.
Условный оператор
Условный оператор возвращает одно из двух выражений в зависимости от результата вычисления логического выражения. Условный оператор языка выражений аналогичен условному оператору языков C и C#. Аналогичная функциональность в многомерных выражениях (MDX) обеспечивается функцией IIF.
Логические операторы
Язык выражений поддерживает символ ! символ для оператора логического НЕ. В языке Transact-SQL ! встроен в набор реляционных операторов. Например, язык Transact-SQL предоставляет операторы > и !>. Язык выражений SSIS не поддерживает комбинацию ! оператор и другие операторы. Например, недопустимо сочетать ! и > в !>. Однако язык выражений поддерживает встроенную комбинацию символов != для сравнения на неравенство.
Операторы равенства
Грамматика средства оценки выражений содержит оператор сравнения ==. Этот оператор аналогичен оператору = языка Transact-SQL и оператору == языка C#.
Функции
Язык выражений содержит функции даты и времени, математические и строковые функции, аналогичные функциям языка Transact-SQL и методам языка C#.
Некоторые функции имеют такие же имена, что и функции языка Transact-SQL, но их функциональность в средстве оценки выражений отличается.
В языке Transact-SQL функция ISNULL заменяет значения NULL указанным значением, тогда как в обработчике выражений функция ISNULL возвращает логическое значение в зависимости от того, является ли выражение значением NULL.
В языке Transact-SQL функция ROUND содержит параметр усечения результирующего набора, тогда как аналогичная функция средства оценки выражений такого параметра не содержит.
Дополнительные сведения см. в разделе Функции (выражение SSIS).
Связанные задачи
Использование выражения в компоненте потока данных