Maison > base de données > tutoriel mysql > Comment supprimer les clés primaires des colonnes dans MySQL tout en conservant l'incrémentation automatique ?

Comment supprimer les clés primaires des colonnes dans MySQL tout en conservant l'incrémentation automatique ?

DDD
Libérer: 2024-12-28 15:16:10
original
813 Les gens l'ont consulté

How to Remove Primary Keys from Columns in MySQL While Keeping Auto-Increment?

Suppression des clés primaires dans MySQL

Question :

Comment supprimer les clés primaires de colonnes spécifiques dans une table MySQL tout en conservant un identifiant auto-incrémenté comme identifiant principal clé ?

Réponse :

Contexte :

Dans MySQL, une colonne à incrémentation automatique doit être définie dans le cadre de un index, ce qui rend difficile la suppression des clés primaires d'autres colonnes sans erreurs.

Solution :

Pour supprimer les clés primaires de colonnes spécifiques, suivez ces étapes :

  1. Désactiver l'incrémentation automatique : Utilisez l'instruction ALTER TABLE pour modifier le type de données de la colonne id en INT et supprimer le NOT NULL contrainte.
ALTER TABLE user_customer_permission MODIFY id INT;
Copier après la connexion
  1. Supprimer la clé primaire : Une fois la propriété d'incrémentation automatique supprimée, utilisez l'instruction ALTER TABLE pour supprimer la contrainte de clé primaire de user_customer_id et colonnes permission_id.
ALTER TABLE user_customer_permission DROP PRIMARY KEY;
Copier après la connexion

Supplémentaires Considérations :

  • La clé primaire composite d'origine s'étendait sur les trois colonnes, la colonne id peut donc ne pas être unique.
  • Si l'identifiant est unique, vous pouvez réactiver le Propriétés de clé primaire et d'incrémentation automatique sur la colonne id.
ALTER TABLE user_customer_permission MODIFY id INT NOT NULL PRIMARY KEY AUTO_INCREMENT;
Copier après la connexion

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 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