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


Именование объектов (службы Analysis Services — многомерные данные)

В этом разделе описываются соглашения об именовании объектов. В нем также приведены зарезервированные слова и символы, которые нельзя использовать в именах объектов, в коде или в скриптах в службах Службы Analysis Services.

Соглашения об именах

У каждого объекта есть свойства Name и ID, которые должны быть уникальными в пределах родительской коллекции. Например, два измерения могут иметь одинаковое имя, если они находятся в разных базах данных.

Несмотря на то что это свойство можно указать вручную, ID обычно формируется автоматически при создании объекта. Приступив к построению модели, больше не следует изменять свойство ID. Все ссылки на объекты, используемые в модели, основаны на свойстве ID. Поэтому изменение значения свойства ID может легко привести к повреждению всей модели.

Для объектов DataSource и DataSourceView предусмотрены заметные исключения из соглашений об именовании. В качестве идентификатора объекта DataSource в качестве ссылки на текущую базу данных может быть задана одна точка (.), которая не является уникальной. Вторым исключением является объект DataSourceView, который следует соглашениям об именовании, определенным для объектов DataSet в платформе .NET Framework, где в качестве идентификатора используется свойство Name.

Следующие правила относятся к свойствам Name и ID.

  • В именах учитывается регистр. Нельзя иметь в одной и той же базе данных один объект куба с именем «sales» и еще один объект с именем «Sales».

  • В имени объекта не может быть начального или конечного пробела, хотя в имени и могут использоваться пробелы. Происходит неявное отсечение ведущих и конечных пробелов. Это относится и к свойству объекта Name, и к свойству ID.

  • Максимальное количество символов равно 100.

  • Какие-либо специальные требования к первому символу идентификатора не предъявляются. В качестве первого символа может применяться любой допустимый символ.

Зарезервированные слова и символы

Зарезервированными являются английские слова, а резервирование относится только к именам объектов, а не к заголовкам. Если в имени объекта будет использовано зарезервированное слово, при проверке будет выдана ошибка. Для многомерных моделей и моделей интеллектуального анализа данных приведенные далее зарезервированные слова нельзя использовать в именах каких-либо объектов.

Для табличных моделей, когда уровень совместимости базы данных установлен на 1103, правила проверки для некоторых объектов были ослаблены из соображений соответствия расширенным требованиям в отношении символов национального алфавита и соглашениям об именовании определенных клиентских приложений. На базы данных, которые удовлетворяют этим критериям, распространяются менее строгие правила проверки. В этом случае в именах объектов могут содержаться запрещенные символы, при этом они все равно пройдут проверку.

Зарезервированные слова

  • AUX

  • CLOCK$

  • От COM1 до COM9 (COM1, COM2, COM3 и так далее)

  • CON

  • от LPT1 до LPT9 (LPT1, LPT2, LPT3 и т. д.)

  • NUL

  • PRN

  • Не допускается использование значения NULL в качестве символа ни в одной строке в коде XML

Зарезервированные символы

В следующей таблице перечислены символы, которые являются недопустимыми для конкретных объектов.

Объект

Недопустимые символы

Server

При именовании серверного объекта следуйте соглашениям об именовании Windows Server. Подробные сведения см. в разделе Соглашения об именовании (Windows).

DataSource

: / \ * | ? " () [] {} <>

Level либо Attribute

. , ; ' ` : / \ * | ? " & % $ ! + = [] {} < >

Dimension либо Hierarchy

. , ; ' ` : / \ * | ? " & % $ ! + = () [] {} <,>

Все прочие объекты

. , ; ' ` : / \ * | ? " & % $ ! + = () [] {} < >

Исключения: Когда зарезервированные символы допустимы

Как уже отмечалось, имена объектов баз данных с определенным уровнем модальности и совместимости могут содержать зарезервированные символы. Имена объектов атрибута измерения, иерархии, уровня, измерения и KPI могут содержать зарезервированные символы в табличных базах данных (1103 или выше), в которых разрешено использование расширенных символов национального алфавита:

Режим сервера и уровень совместимости базы данных

Зарезервированные символы допустимы?

MOLAP (все версии)

Нет

Табличная — 1050

Нет

Табличная — 1100

Нет

Табличная — 1130 и выше

Да

В качестве ModelType базы данных может применяться значение по умолчанию. Значение по умолчанию эквивалентно многомерному, в связи с чем использование зарезервированных символов в именах столбцов не поддерживается.

См. также

Основные понятия

Зарезервированные слова языка многомерных выражений

Переводы (службы Analysis Services — многомерные данные)

Соответствие спецификациям XML для аналитики (XMLA)