Maison > base de données > tutoriel mysql > Comment ajouter une incrémentation automatique aux clés primaires de table MySQL existantes ?

Comment ajouter une incrémentation automatique aux clés primaires de table MySQL existantes ?

DDD
Libérer: 2024-10-29 13:08:29
original
306 Les gens l'ont consulté

How Do I Add Auto-Increment to Existing MySQL Table Primary Keys?

Ajout d'une incrémentation automatique aux clés primaires de table MySQL existantes

Après avoir acquis une base de données dépourvue d'auto-incrémenteurs sur les tables avec des ID de clé primaire, vous peut être nécessaire de les convertir en colonnes à incrémentation automatique. Vous pouvez y parvenir en suivant les étapes suivantes :

  1. Modifier la définition de la colonne :

    Utilisez l'instruction ALTER TABLE avec la clause MODIFY COLUMN pour redéfinir la colonne de clé primaire comme AUTO_INCREMENT. Par exemple, pour modifier la colonne id dans la table foo :

    ALTER TABLE foo MODIFY COLUMN id INT NOT NULL AUTO_INCREMENT;
    Copier après la connexion
  2. Vérifiez l'effet :

    Exécutez SHOW CREATE TABLE foo pour confirmer que la modification a pris effet. La sortie doit afficher la définition de colonne mise à jour avec l'option AUTO_INCREMENT.

  3. Test d'insertion :

    Insérer une nouvelle ligne dans le tableau sans spécifier de valeur pour la colonne id :

    INSERT INTO foo () VALUES ();
    Copier après la connexion

    La ligne nouvellement insérée se verra attribuer la valeur générée automatiquement.

Erreur de dépannage 150 :

Si vous rencontrez une erreur « Erreur lors du renommage de… (erreur : 150) » au cours du processus, cela peut indiquer un conflit avec les contraintes de clé étrangère. Vous pouvez vous référer aux ressources suivantes pour obtenir de l'aide pour diagnostiquer le problème :

  • [Que signifie l'erreur MySQL 1025 (HY000) : Erreur lors du changement de nom de '.foo' (erreur : 150) ?]( https://stackoverflow.com/questions/11444139/what-does-mysql-error-1025-hy000-error-on-rename-of-foo-errorno-150-me)
  • [http:/ /www.simplicidade.org/notes/archives/2008/03/mysql_errno_150.html](http://www.simplicidade.org/notes/archives/2008/03/mysql_errno_150.html)

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:php.cn
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