Maison > base de données > tutoriel mysql > Comment définir la valeur initiale et l'incrémentation automatique dans MySQL ?

Comment définir la valeur initiale et l'incrémentation automatique dans MySQL ?

WBOY
Libérer: 2023-09-07 19:37:02
avant
1459 Les gens l'ont consulté

Comment définir la valeur initiale et lincrémentation automatique dans MySQL ?

L'attribut AUTO_INCRMENT est utilisé pour générer un identifiant unique pour une nouvelle ligne. Si une colonne est déclarée « NON NULL », NULL peut être attribué à la colonne pour générer une séquence de nombres.

Lorsqu'une valeur est insérée dans une colonne AUTO_INCREMENT, la colonne sera définie sur cette valeur de colonne et la séquence sera également réinitialisée afin qu'elle génère automatiquement des valeurs dans la plage séquentielle de la plus grande valeur de colonne.

Il est possible de mettre à jour une colonne "AUTO_INCRMENT" existante, ce qui réinitialisera également la séquence "AUTO_INCRMENT". Dernier 'AUTO_INCRMENT' généré automatiquement ; La valeur peut être récupérée à l'aide de la fonction 'LAST_INSERT_ID()' dans SQL ou à l'aide de la fonction API C 'mysql_insert_id()'.

Ces fonctions sont spécifiques à la connexion, ce qui signifie que leurs valeurs de retour ne sont pas affectées par d'autres connexions effectuant des opérations d'insertion. Le plus petit type de données entier pouvant être utilisé pour la colonne "AUTO_INCRMENT" et suffisamment grand pour accueillir la plus grande valeur de séquence requise par l'utilisateur.

Règles AUTO_INCREMENT

Vous devez suivre les règles suivantes lorsque vous utilisez l'attribut AUTO_INCRMENT -

  • Chaque table n'a qu'une seule colonne AUTO_INCRMENT, dont le type de données est Généralement un nombre entier. La colonne

  • AUTO_INCREMENT doit être indexée. Cela signifie que cela peut être CLÉ PRIMAIRE ou index UNIQUE. La colonne

  • AUTO_INCRMENT doit avoir la contrainte NOT NULL.

  • Lorsque la propriété AUTO_INCREMENT est définie sur colonne, MySQL ajoute automatiquement Contraintes NOT NULL sur la colonne elle-même.

Si la colonne id n'a pas été ajoutée à la table, vous pouvez utiliser l'instruction suivante-

ALTER TABLE tableName ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (id);
Copier après la connexion

Si la colonne id existe déjà, vous pouvez utiliser la commande suivante-

ALTER TABLE tableName AUTO_INCREMENT=specificValue;
Copier après la connexion

Ici, tableName fait référence à la table où la colonne "AUTO_INCRMENT" doit être définie comme nom. « SpecificValue » fait référence à l'entier commençant à partir de la valeur « AUTO_INCRMENT » spécifiée par l'utilisateur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal