Identificadores (MDX)

Um identificador é o nome de um objeto de Serviços de Análise. Todo objeto pode e deve ter um identificador. Isso inclui cubos, dimensões, hierarquias, níveis, membros e assim por diante. Você usa o identificador de um objeto para referenciar o objeto em instruções de Expressões Multidimensionais (MDX).

Dependendo de como você nomeia o objeto, o identificador do identificador será um identificador regular ou delimitado.

Note

Tanto os identificadores regulares quanto os delimitados devem conter de 1 a 100 caracteres.

Uso de Identificadores Regulares

Um identificador regular é um nome de objeto que cumpre as seguintes regras de formatação para identificadores regulares. Um identificador comum pode ser usado com ou sem delimitadores.

Regras de Formatação para Identificadores Regulares

  1. O primeiro caractere deve ser um dos seguintes:

    • Uma letra conforme definida pelo Padrão Unicode 2.0. Além dos caracteres de letras de outras línguas, a definição Unicode de letras inclui caracteres latinos de a a z e de A a Z.

    • O marcador de fundo (_).

  2. Personagens subsequentes podem ser:

    • Letras conforme definidas no Padrão Unicode 2.0.

    • Números decimais do Latim Básico ou de outros scripts nacionais.

    • O marcador de fundo (_).

  3. O identificador não pode ser uma palavra-chave reservada MDX. Palavras-chave reservadas são insensíveis a maiúsculas minúsculas no MDX. Para mais informações, veja Palavras-chave Reservadas (Sintaxe MDX).

  4. Espaços inseridos ou caracteres especiais não são permitidos.

Exemplos de identificadores regulares

Na seguinte instrução MDX, os identificadores, Measures, Product, e Style, cumprem as regras de formatação para identificadores regulares. Esses identificadores normais não precisam de delimitadores.

SELECT Measures.MEMBERS ON COLUMNS,  
Product.Style.CHILDREN ON ROWS  
FROM [Adventure Works]  
  

Embora não seja obrigatório, você também pode usar delimitadores com identificadores regulares. Na seguinte instrução MDX, os Measuresidentificadores , Product, e Style regulares foram corretamente delimitados usando colchetes.

SELECT [Measures].MEMBERS ON COLUMNS,  
[Product].[Style].CHILDREN ON ROWS  
FROM [Adventure Works]  
  

Uso de Identificadores Delimitados

Um identificador que não cumpre as regras de formatação para identificadores regulares deve sempre ser delimitado usando parênteses ([]).

Note

Delimitadores são apenas para identificadores. Delimitadores não podem ser usados para palavras-chave, independentemente de as palavras-chave estarem ou não marcadas como reservadas nos Serviços de Análise.

Você usa um identificador delimitado nas seguintes situações:

  • Quando o nome de um objeto ou parte do nome usa palavras reservadas.

    Recomendamos que palavras-chave reservadas não sejam usadas como nomes de objetos. Bancos de dados atualizados a partir de versões anteriores dos Serviços de Análise podem conter identificadores que incluem palavras não reservadas na versão anterior, mas que agora estão reservadas. Até que você possa mudar o identificador do objeto, pode referenciar o objeto usando um identificador delimitado.

  • Quando o nome de um objeto usa caracteres não listados como identificadores qualificados.

    O Analysis Services permite que um identificador delimitado use qualquer caractere na página de código atual. No entanto, o uso indiscriminado de caracteres especiais no nome de um objeto pode tornar a leitura e manutenção de instruções e scripts MDX difíceis.

Regras de Formatação para Identificadores Delimitados

O corpo de um identificador delimitado pode conter qualquer combinação de caracteres na página de código atual, incluindo os próprios caracteres delimitadores. Se o corpo do identificador delimitado contiver caracteres delimitadores, é necessário um tratamento especial:

  • Se o corpo do identificador contém apenas um colchete esquerdo ([), não é necessário tratamento adicional.

  • Se o corpo do identificador contém um colchete à direita (]), você deve especificar dois colchetes à direita (]]).

Exemplos de identificadores delimitados

Na seguinte afirmação hipotética MDX, Sales Volume, Sales Cube, e select são identificadores delimitados:

-- The [Sales Volume] and [Sales Cube] identifiers contain a space.  
SELECT Measures.[Sales Volume]  
FROM [Sales Cube]  
WHERE Product.[select]  
-- The [select] identifier is a reserved keyword.  

Neste próximo exemplo, o nome de um objeto é Total Profit [Domestic]. Para referenciar este objeto, você deve usar o seguinte identificador delimitado:

[Total Profit [Domestic]]]

Note que o colchete esquerdo anterior Domestic não precisou ser alterado para criar o identificador delimitado. No entanto, o suporte direito que seguia Domestic teve que ser substituído por dois suportes direitos.

Delimitando identificadores com múltiplas partes

Quando você usa nomes de objetos qualificados, pode ser necessário delimitar mais de um dos identificadores que compõem o nome do objeto. Por exemplo, o identificador de Freios Dianteiros no código a seguir precisa ser delimitado.

SELECT [Medidas]. MEMBROS NAS COLUNAS,

[Produto]. [Produto]. [Freios dianteiros] EM REMADAS

DE [Adventure Works]

Além disso, o identificador Measures no exemplo anterior foi delimitado para demonstrar a delimitação de mais de um identificador.