Identificatori (DMX)

In MicrosoftSQL ServerAnalysis Services tutti gli oggetti devono essere associati a un identificatore. Sono dotati di identificatori i server, i database e gli oggetti di database quali origini dati, viste origine dati, cubi, dimensioni, modelli di data mining e così via.

L'identificatore di un oggetto viene creato al momento della sua definizione. Il nome di un oggetto ne costituisce l'identificatore e viene quindi utilizzato per farvi riferimento.

In DMX (Data Mining Extensions) esistono due classi di identificatori:

  • Identificatori regolari

  • Identificatori delimitati

Gli identificatori devono contenere al massimo 100 caratteri indipendentemente dal tipo cui appartengono.

Identificatori regolari

Gli identificatori regolari sono nomi conformi alle regole di Analysis Services per il formato degli identificatori. In DMX gli identificatori regolari non richiedono delimitatori. Di seguito è riportato un esempio di istruzione DMX che utilizza un identificatore regolare, non delimitato:

SELECT * FROM Clustering.CONTENT

Nell'esempio "Clustering" è il nome del modello di data mining e anche il relativo identificatore. Poiché non contiene spazi o altri caratteri speciali, l'identificatore è di tipo regolare e non deve essere racchiuso tra parentesi.

Regole relative agli identificatori regolari

Le regole per il formato degli identificatori regolari sono riportate di seguito:

  1. Il primo carattere di un identificatore regolare deve essere uno dei seguenti:

    • Una lettera definita dallo standard Unicode 2.0, che include i caratteri latini da A a Z (maiuscoli e minuscoli) oltre ai caratteri lettera di altre lingue.

    • Un carattere di sottolineatura (_).

  2. I caratteri successivi possono essere:

    • Lettere definite nello standard Unicode 2.0.

    • Numeri decimali inclusi nell'alfabeto Latino di base o in altri alfabeti nazionali.

    • Un carattere di sottolineatura (_).

  3. L'identificatore non deve coincidere con una parola riservata DMX. In DMX per le parole riservate non viene fatta distinzione tra maiuscole e minuscole. Per ulteriori informazioni, vedere Parole chiave riservate (DMX).

  4. Gli identificatori non possono contenere spazi o caratteri speciali incorporati.

Quando vengono utilizzati in istruzioni DMX, gli identificatori non conformi a queste regole devono essere racchiusi tra parentesi quadre.

Identificatori delimitati

Gli identificatori delimitati sono racchiusi tra parentesi quadre ([ ]). Di seguito è riportato un esempio di istruzione DMX con un identificatore delimitato.

SELECT * FROM [Marketing_Clusters].CONTENT

In questo esempio l'identificatore del modello di data mining è [Marketing_Clusters]. Il nome è stato racchiuso tra parentesi anche se soddisfa i criteri relativi agli identificatore regolari. È consigliabile utilizzare le parentesi per gli identificatori, anche quando non è necessario, per maggiore chiarezza e per ridurre i problemi legati alla migrazione e alla manutenzione del codice.

Un identificatore non conforme alle regole deve essere sempre delimitato. Di seguito è riportato un esempio di istruzione DMX con un identificatore delimitato che contiene uno spazio:

SELECT * FROM [Targeted Mailing].CONTENT

È necessario utilizzare sempre gli identificatori delimitati nelle situazioni seguenti:

  • Quando si utilizzano parole riservate come nomi di oggetti o parti di nomi di oggetti.

    È consigliabile evitare di utilizzare parole chiave riservate come nomi di oggetti. I database aggiornati da versioni precedenti di Analysis Services possono contenere identificatori che includono parole che non erano riservate nelle versioni precedenti di Analysis Services, ma che sono parole chiave riservate nelle versioni successive. Per fare riferimento a oggetti di questo tipo, è possibile utilizzare un identificatore delimitato finché non sarà possibile modificare il nome dell'oggetto.

  • Quando si utilizzano caratteri non definiti nelle regole relative agli identificatori normali.

    In Analysis Services è possibile utilizzare qualsiasi carattere della tabella codici corrente negli identificatori delimitati. L'utilizzo di caratteri speciali nei nomi degli oggetti può tuttavia rendere più difficile la lettura e la gestione delle istruzioni DMX. Se, ad esempio, alcune applicazioni client non possono utilizzare la tabella codici, gli utenti di tali applicazioni potrebbero non essere in grado di visualizzare i caratteri speciali. È consigliabile servirsi di identificatori che possano essere letti e cui sia possibile accedere da qualsiasi client che è necessario utilizzare.

    [!NOTA]

    Quando si aggiorna un database di Analysis Services a SQL Server 2008 da una versione precedente, è possibile che alcuni nomi di oggetti vengano modificati per preservarne l'univocità. Per ulteriori informazioni, vedere Modifiche di rilievo nelle funzionalità di Analysis Services in SQL Server 2008.

Regole relative agli identificatori delimitati

Le regole per il formato degli identificatori delimitati sono riportate di seguito:

  1. Gli identificatori delimitati possono essere composti dallo stesso numero di caratteri degli identificatori regolari (da 1 a 100 caratteri, esclusi i caratteri di delimitazione).

  2. Il corpo di un identificatore può contenere qualsiasi combinazione di caratteri utilizzati nella tabella codici corrente, inclusi i caratteri di delimitazione stessi. Se il corpo dell'identificatore contiene caratteri di delimitazione, sarà necessaria una gestione particolare:

    • Se il corpo dell'identificatore contiene una parentesi quadra aperta ([), non saranno necessarie operazioni di gestione aggiuntive.

    • Se il corpo dell'identificatore contiene una parentesi quadra chiusa (]), sarà necessario specificare due parentesi quadre chiuse (]]) per rappresentarla nell'identificatore.

Identificatori delimitati composti da più parti

Quando si utilizzano nomi di oggetti qualificati può essere necessario delimitare più identificatori che compongono il nome dell'oggetto. Tali identificatori devono essere delimitati singolarmente. Nell'esempio seguente viene illustrato un nome di oggetto qualificato contenente più identificatori delimitati.

[AdventureWorks DW 2008].[Targeted Mailing DT]