Maison >base de données >tutoriel mysql >Pourquoi ma base de données génère-t-elle une erreur « Colonne de clé d'index non valide » et comment puis-je la corriger ?
Colonne de clé d'index non valide : compréhension et résolution de l'erreur
Le message d'erreur "La colonne 'clé' dans la table 'misc_info' est d'un type qui n'est pas valide pour être utilisé comme colonne clé dans un index" indique un problème avec le type de données d'une colonne utilisée comme clé dans un index. Bien qu'une recherche rapide révèle que la longueur limite de l'index est de 450 caractères, cela ne suffit pas à résoudre l'erreur.
Dans ce cas, l'erreur concerne une colonne nommée « clé » avec le type de données nvarchar(max). Pour résoudre ce problème, le type de données de la colonne clé doit être modifié en un type valide pour une clé d'index. Les contraintes uniques sur les clés d'index ont une limite de taille maximale de 8 000 octets par ligne, seuls les 900 premiers octets étant utilisés. Par conséquent, pour garantir une compatibilité maximale et éviter des erreurs potentielles, la colonne clé doit avoir un type de données autorisant une longueur maximale de 450 caractères.
L'instruction SQL révisée suivante résout l'erreur en modifiant le type de données de la colonne clé. à nvarchar(450):
CREATE TABLE [misc_info] ( [id] INTEGER PRIMARY KEY IDENTITY NOT NULL, [key] NVARCHAR(450) UNIQUE NOT NULL, [value] NVARCHAR(MAX) NOT NULL );
En utilisant nvarchar(450) pour la colonne clé, vous pouvez créer un index unique sans rencontrer le "type invalide pour l'erreur "colonne clé". Notez que si possible, utiliser varchar au lieu de nvarchar peut vous permettre d'augmenter la longueur de la colonne clé à 900 caractères.
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!