Créer des colonnes d’identifiants
Certaines bases de données fournissent un genre de colonne spéciale qui est connue comme colonne « identifiant », ou « auto-incrément ». Quand une colonne est définie comme colonne d’identité, la base de données générera automatiquement une valeur unique, incrémente pour cette colonne dès qu’une nouvelle ligne est insérée dans la table. La prise en charge pour des colonnes d’identificateur
Note : | l’Éditeur Design ne prend pas en charge les colonnes d’identificateur définissantes pour les types de bases de données suivantes : Firebird, Informix, Oracle, PostgreSQL, Progress OpenEdge, Teradata et SQLite. |
Lorsque prise en charge par la base de données, une propriété appelée Auto Increment (ou Identity, dans quelques bases de données) devient disponible dans la fenêtre des Propriétés quand vous cliquez dans la colonne de l’Éditeur Design (à condition que la colonne est de type numérique, voir « Prérequis » ci-dessous). Les bases de données telles que IBM DB2 et SQL Server vous laissent aussi spécifier les propriétés Seed et Increment, en plus de la propriété Identity.
Fenêtre des Propriétés (base de données SQL Server)
Exigences préalables :
•Typiquement, vous pouvez créer des colonnes d’identité au moment de la création de la table, pas plus tard. Certaines bases de données (Microsoft Access, Microsoft SQL Server) vous laissent spécifier une colonne comme identité quand vous ajoutez une nouvelle colonne à une table existante.
•La colonne ne doit pas être nullable. En d’autres termes, la case à cocher Nullable ne doit pas être sélectionnée dans la fenêtre des propriétés (ou dans le design de table).
•La colonne doit avoir un type numérique (tel que INT, INTEGER, SMALLINT, BIGINT, ou même DECIMAL avec une échelle 0). D’autres types numériques peuvent se qualifier, dépendant de la base de données.
Pour créer une colonne d’identité :
1.Dans l’Éditeur Design ou dans le Navigateur en ligne, sélectionnez la colonne que vous souhaitez utiliser comme colonne d’identité.
2.Dans la fenêtre des Propriétés, sélectionnez la case à cocher Identity (ou la case à cocher Auto Increment, dépendant de la base de données).
Note : | Dans Microsoft Access,le type de données de la colonne sera automatiquement converti en COUNTER lorsque vous sélectionnez la case à cocher Auto Increment. Ce type de données est spécifique à Microsoft Access, il assure que la valeur sera auto-incrémentée. |
3.Si applicable, changez les valeurs par défaut dans les champs Seed et Increment. Seed spécifie la valeur initiale qui sera générée par la base de données tandis que Increment spécifie jusqu’où la valeur initiale devrait être incrémentée à chaque insertion. Normalement, ces valeurs sont 1 et 1, respectivement.
Comme toujours lorsque des modifications sont effectuées à la structure de base de données, un script de changement doit être exécuté afin de créer la colonne d’identificateur dans la base de données. DatabaseSpy exécute une validation de la définition de la colonne qui sera utilisée pour la colonne d’identificateur. L’image ci-dessous illustre un script où la validation a échoué car la colonne est nullable et de type non-numérique :
Un script valide, d’un autre côté, pourrait avoir l’air de ceci :
Si le script est valide et que vous souhaitez valider les changements dans la base de données, cliquez Execute dans la fenêtre Script de changement de structure de la base de données.