Identificateurs (DMX)

Dans MicrosoftSQL ServerAnalysis Services, tous les objets doivent avoir un identificateur. Les serveurs, les bases de données et les objets de base de données tels que les sources de données, les vues de source de données, les cubes, les dimensions, les modèles d'exploration de données, etc., ont tous un identificateur.

L'identificateur d'un objet se crée lorsque vous définissez l'objet. Le nom de l'objet constitue son identificateur. L'identificateur est ensuite utilisé pour référencer l'objet.

Dans les extensions DMX (Data Mining Extensions), il existe deux catégories d'identificateurs :

  • Identificateurs réguliers

  • Identificateurs délimités

Quel que soit leur type, les identificateurs doivent comporter au maximum 100 caractères.

Identificateurs réguliers

Les identificateurs réguliers sont des noms qui respectent les règles de Analysis Services relatives au format des identificateurs. Dans les extensions DMX, les identificateurs réguliers ne requièrent pas de délimiteurs. Voici l'exemple d'une instruction DMX qui utilise un identificateur régulier, non délimité.

SELECT * FROM Clustering.CONTENT

Dans cet exemple, « Clustering » est le nom du modèle d'exploration de données et aussi son identificateur. Dans la mesure où l'identificateur ne contient pas d'espaces ou autres caractères spéciaux, il s'agit d'un identificateur régulier qui n'a pas besoin d'être mis entre crochets.

Règles pour identificateurs réguliers

Voici les règles relatives au format des identificateurs réguliers :

  1. Le premier caractère d'un identificateur régulier doit être l'un des suivants :

    • Une des lettres définies par Unicode Standard 2.0. Cela inclut les caractères latins de a à z et de A à Z, et les lettres d'autres langues.

    • Un caractère de soulignement (_).

  2. Les caractères suivants peuvent être :

    • Des lettres définies dans Unicode Standard 2.0.

    • Des nombres décimaux de Basic Latin ou d'autres scripts nationaux.

    • Un caractère de soulignement (_).

  3. L'identificateur ne doit pas être un mot réservé DMX. Dans DMX, les mots réservés ne respectent la casse des caractères. Pour plus d'informations, consultez Mots clés réservés (DMX).

  4. L'identificateur ne peut contenir ni espaces insérés ni caractères spéciaux.

Si un identificateur ne respecte pas ces règles, vous devez le placer entre crochets lorsque vous l'utilisez dans des instructions DMX.

Identificateurs délimités

Les identificateurs délimités sont des identificateurs placés entre crochets ([ ]). Voici un exemple d'instruction DMX avec un identificateur délimité.

SELECT * FROM [Marketing_Clusters].CONTENT

Dans cet exemple, l'identificateur du modèle d'exploration de données est [Marketing_Clusters]. Le nom a été placé entre crochets bien qu'il réponde aux critères des identificateurs réguliers. De nombreuses personnes préfèrent utiliser des crochets avec les identificateurs à des fins de clarté, ainsi que pour réduire les problèmes de maintenance et de migration du code, même si ces crochets ne sont pas obligatoires.

Tout identificateur qui ne respecte pas les règles liées au format des identificateurs réguliers doit toujours être délimité. Voici l'exemple d'une instruction DMX avec un identificateur délimité contenant un espace :

SELECT * FROM [Targeted Mailing].CONTENT

Vous devez toujours utiliser des identificateurs délimités dans les cas suivants :

  • Lorsque vous utilisez des mots réservés pour des noms d'objets ou des parties de noms d'objets.

    Il est conseillé de ne pas utiliser de mots clés réservés en tant que noms d'objet. Les bases de données que vous mettez à niveau à partir d'une version antérieure de Analysis Services peuvent contenir des identificateurs comportant des mots qui n'étaient pas réservés dans la précédente version de Analysis Services, mais qui sont des mots clés réservés dans les versions ultérieures. Vous pouvez utiliser un identificateur délimité pour faire référence à ce type d'objet jusqu'à ce que vous puissiez renommer l'objet.

  • Lorsque vous utilisez des caractères non définis dans les règles des identificateurs normaux.

    Analysis Services permet d'utiliser tout caractère de la page de codes active dans un identificateur délimité ; cependant, l'utilisation de caractères spéciaux dans un nom d'objet peut rendre difficile la lecture et la maintenance des instructions DMX. Par exemple, si certaines applications clientes ne peuvent pas utiliser la page de codes, les utilisateurs de ces applications risquent de ne pas pouvoir voir les caractères spéciaux. Il est conseillé d'employer des identificateurs pouvant être lus et entrés sur n'importe quel client utilisable par vous ou vos utilisateurs.

    [!REMARQUE]

    Lorsque vous mettez à niveau une base de données Analysis Services vers SQL Server 2008 à partir d'une version antérieure, certains noms d'objets peuvent être modifiés afin de préserver leur unicité. Pour plus d'informations, consultez Modifications avec rupture dans les fonctionnalités Analysis Services de SQL Server 2008.

Règles pour identificateurs délimités

Voici les règles relatives au format des identificateurs délimités :

  1. Les identificateurs délimités peuvent contenir le même nombre de caractères que les identificateurs réguliers : de 1 à 100 caractères, sans compter les caractères de délimitation.

  2. Le corps de l'identificateur peut contenir n'importe quelle combinaison de caractères dans la page de codes active, y compris les caractères de délimitation proprement dits. Si le corps de l'identificateur lui-même contient des caractères de délimitation, un traitement spécial est nécessaire :

    • Si le corps de l'identificateur contient un crochet gauche ([), aucun traitement supplémentaire n'est nécessaire.

    • Si le corps de l'identificateur contient un crochet droit (]), vous devez spécifier deux crochets droits (]]) pour représenter un seul crochet droit dans l'identificateur.

Identificateurs de délimitation en plusieurs parties

Lorsque vous utilisez des noms d'objets complets, vous pouvez être contraint de délimiter plusieurs des identificateurs qui les composent. Vous devez délimiter chaque identificateur individuellement. L'exemple suivant illustre un nom d'objet complet qui contient plusieurs identificateurs délimités.

[AdventureWorks DW 2008].[Targeted Mailing DT]