Identificatori (MDX)Identifiers (MDX)

QUESTO ARGOMENTO SI APPLICA A:sìSQL Server (a partire dalla versione 2008)noDatabase SQL di AzurenoAzure SQL Data Warehouse noParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Un identificatore è il nome di un MicrosoftMicrosoft SQL ServerSQL Server Analysis ServicesAnalysis Services oggetto.An identifier is the name of an MicrosoftMicrosoft SQL ServerSQL Server Analysis ServicesAnalysis Services object. Può e deve avere un identificatore ogni oggetto di Analysis ServicesAnalysis Services,Every Analysis ServicesAnalysis Services object can and must have an identifier. inclusi cubi, dimensioni, gerarchie, livelli, membri e così via.This includes cubes, dimensions, hierarchies, levels, members, and so on. L'identificatore di un oggetto consente di fare riferimento a tale oggetto nelle istruzioni MDX (Multidimensional Expressions).You use the identifier of an object to reference the object in Multidimensional Expressions (MDX) statements.

A seconda del nome attribuito all'oggetto, l'identificatore può essere regolare o delimitato.Depending on how you name the object, the identifier of the object identifier will be either a regular or delimited identifier.

Nota

Gli identificatori sia regolari che quelli delimitati devono includere da 1 a 100 caratteri.Both regular and delimited identifiers must contain from 1 through 100 characters.

Utilizzo di identificatori regolariUsing Regular Identifiers

Un identificatore regolare è un nome di oggetto che rispetta le seguenti regole di formattazione per gli identificatori regolari.A regular identifier is an object name that complies with the following formatting rules for regular identifiers. Gli identificatori regolari possono essere utilizzati con e senza delimitatori.A regular identifier can be used with or without delimiters.

Regole di formattazione per gli identificatori regolariFormatting Rules for Regular Identifiers

  1. Il primo carattere deve essere uno dei seguenti:The first character must be one of the following:

    • Una lettera definita dallo Standard Unicode 2.0.A letter as defined by the Unicode Standard 2.0. ovvero i caratteri dell'alfabeto latino a-z e A-Z e i caratteri di altre lingue.Besides letter characters from other languages, the Unicode definition of letters includes Latin characters from a through z and from A through Z.

    • Il carattere di sottolineatura ().The underscore ().

  2. I caratteri successivi possono essere:Subsequent characters can be:

    • Lettere definite nello Standard Unicode 2.0.Letters as defined in the Unicode Standard 2.0.

    • Numeri decimali inclusi nell'alfabeto Latino di base o in altri alfabeti nazionali.Decimal numbers from either Basic Latin or other national scripts.

    • Il carattere di sottolineatura ().The underscore ().

  3. L'identificatore non deve coincidere con una parola chiave riservata di MDX.The identifier must not be an MDX reserved keyword. In MDX per le parole chiave riservate non viene fatta distinzione tra maiuscole e minuscole.Reserved keywords are case-insensitive in MDX. Per ulteriori informazioni, vedere parole chiave riservate ( La sintassi MDX ) .For more information, see Reserved Keywords (MDX Syntax).

  4. Non sono consentiti spazi incorporati o caratteri speciali.Embedded spaces or special characters are not allowed.

Esempi di identificatori regolariExamples of Regular Identifiers

Nell'istruzione MDX seguente gli identificatori, Measures, Product e Style, sono conformi alle regole di formattazione per gli identificatori regolari.In the following MDX statement, the identifiers, Measures, Product, and Style, comply with the formatting rules for regular identifiers. Per gli identificatori regolari non sono necessari delimitatori.These regular identifiers do not need delimiters.

SELECT Measures.MEMBERS ON COLUMNS,

Product.Style.CHILDREN ON ROWS

FROM [Adventure Works]

``

Sebbene non sia richiesto, con gli identificatori regolari è comunque possibile utilizzare delimitatori.Although not required, you could also use delimiters with regular identifiers. Nell'istruzione MDX seguente gli identificatori regolari Measures, Product e Style sono stati correttamente delimitati tramite parentesi quadre.In the following MDX statement, the Measures, Product, and Style regular identifiers have been correctly delimited by using brackets.

SELECT [Measures].MEMBERS ON COLUMNS,

[Product].[Style].CHILDREN ON ROWS

FROM [Adventure Works]

``

Utilizzo di identificatori delimitatiUsing Delimited Identifiers

Gli identificatori non conformi alle regole di formattazione per gli identificatori regolari devono essere sempre delimitati da parentesi quadre ([]).An identifier that does not comply with the formatting rules for regular identifiers must always be delimited by using brackets ([]).

Nota

I delimitatori vengono utilizzati solo con gli identificatoriDelimiters are for identifiers only. e non possono essere utilizzati per le parole chiave, indipendentemente dal fatto che siano o meno contrassegnate come riservate in Analysis ServicesAnalysis Services.Delimiters cannot be used for keywords, whether or not the keywords are marked as reserved in Analysis ServicesAnalysis Services.

È necessario utilizzare identificatori delimitati nelle situazioni seguenti:You use a delimited identifier in the following situations:

  • Quando il nome di un oggetto o parte di esso include parole riservate.When the name of an object or part of the name uses reserved words.

    È consigliabile non utilizzare parole chiave riservate come nomi di oggetto.We recommend that reserved keywords not be used as object names. I database aggiornati da versioni precedenti di Analysis ServicesAnalysis Services possono contenere identificatori che includono parole non riservate nella versione precedente, ma sono parole riservate per SQL ServerSQL Server Analysis ServicesAnalysis Services.Databases upgraded from earlier versions of Analysis ServicesAnalysis Services may contain identifiers that include words not reserved in the earlier version, but are reserved words for SQL ServerSQL Server Analysis ServicesAnalysis Services. Finché non sarà possibile modificare gli identificatori per tali oggetti, sarà necessario farvi riferimento tramite identificatori delimitati.Until you can change the identifier for the object, you can reference the object using a delimited identifier.

  • Quando il nome di un oggetto include caratteri non elencati come identificatori qualificati.When the name of an object uses characters not listed as qualified identifiers.

    Analysis ServicesAnalysis Services consente di utilizzare qualsiasi carattere della tabella codici corrente negli identificatori delimitati. allows a delimited identifier to use any character in the current code page. L'utilizzo indiscriminato di caratteri speciali nei nomi degli oggetti potrebbe tuttavia rendere gli script e le istruzioni MDX difficili da leggere e gestire.However, indiscriminate use of special characters in an object name may make MDX statements and scripts difficult to read and maintain.

Regole di formattazione per gli identificatori delimitatiFormatting Rules for Delimited Identifiers

Il corpo di un identificatore può includere qualsiasi combinazione di caratteri della tabella codici corrente, inclusi i caratteri di delimitazione stessi.The body of a delimited identifier can contain any combination of characters in the current code page, including the delimiting characters themselves. Se il corpo di un identificatore delimitato contiene caratteri di delimitazione, sarà necessaria una gestione particolare:If the body of the delimited identifier contains delimiting characters, special handling is required:

  • Se il corpo dell'identificatore contiene solo una parentesi quadra aperta ([), non saranno necessarie operazioni di gestione aggiuntive.If the body of the identifier contains only a left bracket ([), no additional handling is required.

  • Se il corpo dell'identificatore contiene una parentesi quadra chiusa (]), sarà necessario specificare due parentesi quadre chiuse (]]).If the body of the identifier contains a right bracket (]), you must specify two right brackets (]]).

Esempi di identificatori delimitatiExamples of Delimited Identifiers

Nell'istruzione MDX ipotetica seguente Sales Volume, Sales Cube e select sono identificatori delimitati:In the following hypothetical MDX statement, Sales Volume, Sales Cube, and select are delimited identifiers:

-- 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.

Nell'esempio successivo viene utilizzato un oggetto di nome Total Profit [Domestic].In this next example, the name of an object is Total Profit [Domestic]. Per farvi riferimento, è necessario utilizzare l'identificatore delimitato seguente:To reference this object, you must use the following delimited identifier:

[Total Profit [Domestic]]]

Si noti che la parentesi quadra aperta prima di Domestic non deve essere modificata per creare l'identificatore delimitato.Notice that the left bracket before Domestic did not have to be changed to create the delimited identifier. La parentesi quadra chiusa dopo Domestic, invece, deve essere sostituita da due parentesi quadre chiuse.However, the right bracket following Domestic had to be replaced with two right brackets.

Identificatori delimitati composti da più partiDelimiting Identifiers with Multiple Parts

Quando si utilizzano nomi di oggetti qualificati può essere necessario delimitare più di uno degli identificatori che compongono il nome dell'oggetto.When you use qualified object names you may have to delimit more than one of the identifiers that make up the object name. Nel codice seguente, ad esempio, l'identificatore Front Brakes deve essere delimitato.For example, the Front Brakes identifier in the following code needs delimiting.

SELECT [Measures].MEMBERS ON COLUMNS,SELECT [Measures].MEMBERS ON COLUMNS,

[Product].[Product].[Front Brakes] ON ROWS[Product].[Product].[Front Brakes] ON ROWS

FROM [Adventure Works]FROM [Adventure Works]

Nell'esempio precedente è stato delimitato anche l'identificatore Measures per illustrare la delimitazione di più di un identificatore.In addition, the Measures identifier in the previous example was delimited to demonstrate delimiting more than one identifier.

Vedere ancheSee Also

Riferimenti al linguaggio MDX ( MDX ) MDX Language Reference (MDX)
Nozioni fondamentali sulle Query MDX ( Analysis Services ) MDX Query Fundamentals (Analysis Services)
Gli elementi della sintassi MDX ( MDX )MDX Syntax Elements (MDX)