Les champs sont les composants qui fournissent la structure d'une table. Vous ne pouvez pas avoir de table sans champs. Par exemple, vous pouvez créer une table vide qui a des champs définis, mais aucune ligne (enregistrement).
Dans les bases de données, les champs permettent de gérer les relations entre les tables. Pour ce faire, il faut créer des champs correspondants dans plusieurs tables. Par exemple, si vous avez stocké une table nommée toy_store dans une base de données et que vous avez également stocké une table du personnel pour effectuer le suivi des employés de chaque magasin, vous créez un champ commun entre les deux tables, renseigné, par exemple, par un identifiant de magasin. La valeur d'ID de magasin pour un magasin de jouets spécifique est le même dans les deux tables.
Ci-dessous, un champ STORE_ID a été ajouté à la table toy_store :
La table toy_store est liée à une table des employés par l’ID de magasin. La table ci-dessous affiche trois employés du magasin The Play House :
Certains champs sont également utilisés pour gérer les relations entre des tables et leurs index attributaires.
Les champs d'une table stockent la même catégorie de données dans le même type de données. Par exemple, si vous avez un champ name dans une table de clients, les entrées pour ce champ sont toutes des noms de client et sont stockées en tant que texte. Vous ne mélangez pas les entrées, c’est-à-dire que vous ne mettez pas de nom de client dans ce champ pour un enregistrement et un nom de produit dans ce même champ pour un autre enregistrement.
Lorsque vous créez une table ou que vous ajoutez des champs à une table existante, vous définissez le type de données utilisé pour stocker les données dans chaque champ. Dans certains cas, vous spécifiez également la longueur du champ.
Noms de champs
Les noms de champs sont les noms que vous attribuez aux colonnes d'une table. Les noms doivent indiquer les données qui sont contenues dans chaque colonne. Par exemple, lorsque vous créez une classe d’entités dans ArcCatalog, la table est préalablement renseignée à l’aide d’un champ ID d’objet et d’un champ de forme. Le champ ID d'objet contient l'identifiant unique de chaque objet de la classe d'entités. Le champ de forme définit le type de forme stocké dans la classe d’entités : point, ligne, polygone, multi-points ou multipatch.
Vous pouvez également utiliser des expressions définies pour indiquer le type de colonne. Par exemple, si vous créez un identifiant unique distinct dans une table que vous utilisez à des fins d’indexation, vous pouvez nommer le champ ID_CU, CU indiquant qu’il s’agit d’une clé unique.
Les noms de champs d'une même table doivent être uniques ; par exemple, vous ne pouvez pas avoir deux colonnes avec le nom ObjectID. Les noms de champs doivent également commencer par une lettre et ne peuvent pas contenir d’espaces ou de mots réservés. Pour plus d’informations sur les limitations propres aux bases de données, reportez-vous à la rubrique Limites de taille et de nom de la géodatabase fichier ou Données de base de données et ArcGIS.
Certains noms de champs apparaissent dans ArcGIS avec leurs noms complets pour les tables stockées dans une géodatabase d’entreprise. Par exemple, si vous créez ou importez une classe d'entités surfaciques contenant un champ nommé Area, la base de données, la structure et le nom de table lui sont ajoutés. Il s'agit du nom qui s'affiche dans la table attributaire de la classe d'entités. Cela signifie que pour une classe d’entités surfaciques nommée archsites stockée dans la structure prof de la base de données museum, le champ Area apparaît sous la forme MUSEUM.PROF.ARCHSITES.AREA.
La liste suivante contient tous les noms de champs complets dans une géodatabase d’entreprise :
- FID
- SURFACE
- LEN
- POINTS
- NUMOFPTS
- ENTITY
- EMINX
- EMINY
- EMAXX
- EMAXY
- EMINZ
- EMAXZ
- MIN_MEASURE
- MAX_MEASURE
Pour ce type de cas, utilisez éventuellement un nom de champ différent ou un alias de champ.
Changement de noms de champs
Vous pouvez renommer les champs d’une table ou d’une classe d’entités dans l’onglet Fields (Champs) de la boîte de dialogue Properties (Propriétés). Les champs d'une géodatabase d'ArcGIS 10 et des versions ultérieures peuvent être renommés, et les champs de tables de bases de données peuvent être renommés.
Pour renommer un champ, cliquez avec le bouton droit de la souris sur la classe d’entités ou la table dans l’arborescence du Catalogue et sélectionnez Properties (Propriétés). Cliquez sur l’onglet Fields (Champs) pour afficher la liste des champs de cette table ou classe d’entités. Cliquez sur le texte du champ à renommer, puis saisissez un nouveau nom. Cliquez sur OK pour appliquer vos modifications et fermer la boîte de dialogue Properties (Propriétés).
Il est impossible de renommer les champs suivants :
- champs ObjectID et GlobalID ;
- tout champ en rapport avec les formes ; Shape (Forme), Shape length (Longueur de forme), Shape area (Surface de forme) ;
- champs de rôles auxiliaires et activés ou champs de pondération de réseau d'une classe d'entités réseau ;.
- champs de représentation ;
- champs d’une classe d’entités faisant partie d’un jeu de données réseau, d’un MNT ou d’un atelier parcellaire ;
- champs utilisés pour le suivi de l’éditeur ;
- champ de clé primaire et champ de clé étrangère de classe de relations ;
- champ de sous-type ;
- champs raster.
Règles et limitations liées aux noms de champ
Le tableau suivant présente les caractères pris en charge pour les noms de champ :
Caractère | Début du nom | Autre position | Dans l’alias |
---|---|---|---|
Lettres (A–Z) | |||
Trait de soulignement ( _ ) | |||
Chiffres (0–9) | |||
Espaces | |||
Symboles (autres que le trait de soulignement) | |||
Lettres et chiffres en exposant | |||
Lettres et chiffres en indice |
Règles et limitations supplémentaires appliquées aux noms de champ :
- Les noms de champ ne peuvent pas contenir de mots réservés, tels que all ou result.
Consultez la documentation de votre système de gestion de bases de données (SGBD) pour connaître les autres mots réservés.
- La longueur des noms de champ (colonne) dépend de la base de données sous-jacente.
Pour plus d’informations sur les limitations propres aux bases de données, reportez-vous à la rubrique Limites de taille et de nom de la géodatabase fichier ou Données de base de données et ArcGIS.
Alias de champ
Les alias de champ vous permettent d'attribuer un nom secondaire à un champ. Vous utilisez généralement des noms de champ aussi courts que possible afin de donner une indication sur les données qui sont stockées dans ce champ. Vous ne pouvez pas utiliser d’espaces ou de caractères spéciaux dans le nom de champ et, comme indiqué ci-dessus, certains champs apparaissent dans la table avec leurs noms complets. Dans ce cas, vous pouvez utiliser un alias de champ pour attribuer au champ un nom plus descriptif. Par exemple, si un champ nommé ST_SUFX stocke le type de rue, indiqué par le suffixe utilisé pour le nom de rue, vous pouvez attribuer à ce champ un alias Suffixe du nom de rue.
Utilisation de domaines pour contrôler les valeurs de champ
Les domaines attributaires sont des règles qui indiquent les valeurs valides pour un champ dans une table d'une géodatabase. Ils assurent l’intégrité des données en limitant les valeurs de données qu’un utilisateur peut ajouter à un champ particulier.
Vous pouvez appliquer des domaines attributaires à des champs uniquement si un ensemble définissable ou une plage de valeurs spécifiques est possible pour ce champ. Par exemple, il serait difficile d’appliquer un domaine à un champ stockant la réponse à la question de l’enquête Quelle est votre nourriture préférée ? puisque cette question peut avoir de nombreuses réponses différentes. Toutefois, vous pouvez attribuer un domaine attributaire à un champ qui stocke des données sur la couleur des yeux, car il n’y a que quelques valeurs valides possibles.
- Noir
- Marron
- Bleu
- Vert
- Noisette
- Gris
- Violet
L'utilisation d'un domaine attributaire pour un champ qui stocke des données sur la couleur des yeux garantit la cohérence des valeurs. Si les personnes qui collectent les données pouvaient saisir toute couleur dans un champ de texte pour la couleur des yeux, vous pourriez vous retrouver avec les valeurs suivantes pour les yeux bleus :
- Azur
- Bleu marine
- Bleu ciel
- Cobalt
- Bleu vert
Les domaines attributaires empêchent également les fautes d'orthographe ou les erreurs typographiques. Même si des collecteurs de données savent qu’ils doivent utiliser uniquement le terme bleu pour les yeux bleus, ils peuvent mal orthographier le mot (blue) ou taper sur la mauvaise touche lorsque qu’ils saisissent le mot (vleu) dans un champ textuel.
Types de domaines attributaires
Il existe deux types de domaines attributaires permettant de restreindre des valeurs de champ : le domaine de valeurs précodées et le domaine par plage.
Un domaine de valeurs précodées utilise des codes afin de définir un ensemble de valeurs autorisées pour un champ stockant des données discrètes.
Vous pouvez utiliser un domaine de valeurs précodées pour tout type de données. Pour le champ de couleur des yeux, vous pouvez créer un domaine codé utilisant l’un des exemples de jeux de codes suivants :
- Exemple 1
- Noi = Noir
- Mar = Marron
- Ble = bleu
- Ver = Vert
- Nst = Noisette
- Gri = Gris
- Vlt = Violet
- Exemple 2
- 0 = Noir
- 2 = Marron
- 3 = Bleu
- 4 = Vert
- 5 = Noisette
- 6 = Gris
- 7 = Violet
Un domaine par plage définit une plage de valeurs numériques autorisées pour un champ.
Le champ doit être de type numérique ou date pour utiliser un domaine par plage. Par exemple, vous pouvez appliquer un domaine par plage à un champ qui stocke des données sur les poids de naissance dans le cas de naissances uniques pour les gorilles des plaines occidentales dans les zoos. La plage peut aller du poids le plus bas (1 kg) au poids le plus haut (2,5 kg).
Pour obtenir des informations supplémentaires sur les domaines attributaires, reportez-vous à la rubrique Présentation rapide des domaines attributaires.
Pour savoir comment créer un domaine attributaire, reportez-vous aux rubriques Création d’un domaine attributaire par plage et Création d’un domaine de valeurs précodées.
Utilisation de sous-types
Les sous-types sont des classifications dans une classe d’entités ou une table dans une géodatabase. Ils permettent de regrouper logiquement des entités selon une caractéristique ou un comportement unique des données. Cette caractéristique ou ce comportement est représenté par les valeurs d'un champ de la table. Par exemple, vous pouvez avoir des sous-types pour les types de voies navigables, telles que les torrents, les ruisseaux, les canaux et les rivières pour une table d’hydrologie. Pour chacun de ces sous-types, vous pouvez appliquer des règles de topologie, des règles de connectivité, des valeurs par défaut et des règles de relations différentes.
L'utilisation de sous-types pour stocker des groupes d'entités reliées peut améliorer les performances des requêtes. Si vous stockez les différents types de données dans des classes d’entités distinctes au lieu d’utiliser des sous-types, avez un plus grand nombre de classes d’entités dans la base de données, ce qui peut augmenter la durée des recherches.
Les règles suivantes s’appliquent lorsque vous utilisez des sous-types :
- Un sous-type ne peut être appliqué qu'à un seul champ d'une table ou d'une classe d'entités.
- Le champ sur lequel vous basez le sous-type doit être un champ de type entier long ou court.
- Vous pouvez appliquer une topologie et des règles de relation différente aux différents sous-types.
- Vous pouvez appliquer différents attributs ou domaines codés à d'autres champs de la table selon leur sous-type.
Suivez la procédure ci-dessous pour appliquer des sous-types :
- Vérifiez que le champ auquel le sous-type va être appliqué est un champ de type entier court ou long. Si ce n'est pas le cas, ajoutez un champ de type entier court ou long à la table ou à la classe d'entités. Dans la plupart des cas, un nombre entier court doit suffire. Toutefois, s’il est possible que les valeurs de vos sous-types dépassent 32 767, utilisez un champ de type entier long.
Par exemple, pour une classe d’entités de rivières, vous pouvez ajouter un champ de type entier court appelé Watershed (Bassins versants) pour créer des sous-types en fonction du bassin versant auquel participe une rivière.
- Dans l'onglet Subtypes (Sous-types) de la boîte de dialogue Properties (Propriétés) pour la table ou la classe d'entités, spécifiez le champ de sous-type en le sélectionnant dans la première liste déroulante.
Pour l’exemple des rivières, choisissez le champ Watershed (Bassin versant) dans la liste Subtype Field (Champ de sous-type).
Un nouveau sous-type est ajouté automatiquement à la table Sous-types. Ce sous-type par défaut porte le code 0 et la description Nouveau sous-type.
- Double-cliquez dans chacun de ces champs, puis saisissez le code de sous-type et la description.
Par exemple, remplacez le premier code par 1 et modifiez la description pour indiquer le nom du premier bassin versant.
- Eventuellement, ajoutez des codes de sous-types et des descriptions dans la table Subtypes (Sous-types).
Dans le champ sous le code 1, vous pouvez ajouter un code 2 avec un nom de bassin versant correspondant dans le champ Description, et en dessous, ajouter un code 3 avec un nom de bassin versant correspondant, et ainsi de suite, jusqu’à ce que vous ayez créé des codes et des descriptions pour tous les bassins versants représentés dans votre classe d’entités de rivières.
- Pour spécifier des valeurs par défaut ou des domaines différents par sous-type, cliquez sur un sous-type dans la liste Sous-types. Dans la liste Default Values and Domains (Domaines et valeurs par défaut), saisissez éventuellement une valeur par défaut pour chacun des champs de la liste. Pour appliquer un domaine codé ou attributaire aux champs de la liste, cliquez dans le champ Domain (Domaine) et sélectionnez un domaine dans la liste déroulante. S’il n’existe encore aucun domaine, créez-en un en cliquant sur le bouton Domains (Domaines) en bas de la boîte de dialogue Properties (Propriétés) pour accéder à la boîte de dialogue Workspace Domains (Domaines de l’espace de travail).
Les valeurs par défaut et les domaines que vous spécifiez s'appliquent uniquement au sous-type que vous avez choisi dans la liste Sous-types. Si vous cliquez sur un autre sous-type dans la liste Subtypes (Sous-types), les valeurs et domaines par défaut seront vides (si vous n’avez pas spécifié de valeurs et de domaines par défaut pour ce sous-type) ou contiendront d’autres valeurs.