Поделиться через


Синтаксис (службы SSIS)

Синтаксис выражений служб Службы 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).

Связанные задачи

Использование выражения в компоненте потока данных

См. также

Значок служб Integration Services (маленький) Будьте в курсе новых возможностей cлужб Integration Services

Чтобы загрузить новейшую документацию, статьи, образцы и видеоматериалы корпорации Майкрософт, а также лучшие решения участников сообщества, посетите страницу служб Службы Integration Services на сайте MSDN:


Чтобы получать автоматические уведомления об этих обновлениях, подпишитесь на RSS-каналы, предлагаемые на этой странице.