Maison >base de données >tutoriel mysql >Comment ajouter un ID à incrémentation automatique à une table avec une clé primaire existante ?

Comment ajouter un ID à incrémentation automatique à une table avec une clé primaire existante ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-01 14:01:11847parcourir

How to Add an Auto-Increment ID to a Table with an Existing Primary Key?

Comment ajouter un identifiant d'incrémentation automatique à une table existante

Lors de la maintenance d'une base de données, il peut s'avérer nécessaire d'ajouter un identifiant d'auto-incrémentation incrémenter la colonne vers une table existante. Cependant, cette tâche peut présenter des défis lorsqu'une clé primaire est déjà définie.

Problème d'origine :

Un développeur a rencontré une erreur lors de la tentative d'ajout d'une incrémentation automatique. ID à une table nommée "users" en utilisant la syntaxe suivante :

ALTER TABLE users
ADD id int NOT NULL AUTO_INCREMENT

L'erreur rencontrée was :

#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

Solution :

Pour réussir à ajouter un ID d'incrémentation automatique à une table avec une clé primaire existante, utilisez la syntaxe suivante :

ALTER TABLE `users` ADD `id` INT NOT NULL AUTO_INCREMENT;

Cette syntaxe modifiée définit correctement la colonne d'auto-incrémentation comme clé primaire, résolvant ainsi l'erreur.

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!

Déclaration:
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