Bonjour,
Ayant repris une base de donnée existente, je tente de la modifier, en particulier un champ type id_typeutilisateur, qui est une VARCHAR de 5 characteres.
Ma table est constituée de la manière suivante :
La derniere ligne "rang" est celle que je veux mettre a la place de id_typeutilisateur mais il me retourne l'erreur suivante lors de la destruction de l'entrée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 CREATE TABLE `utilisateur` ( `id` int(11) NOT NULL auto_increment, `nom` varchar(50) collate utf8_unicode_ci NOT NULL, `prenom` varchar(50) collate utf8_unicode_ci NOT NULL, `id_typeutilisateur` varchar(5) collate utf8_unicode_ci default NULL, `identifiant` varchar(20) collate utf8_unicode_ci NOT NULL, `motdepasse` blob NOT NULL, `observations` text collate utf8_unicode_ci NOT NULL, `rang` enum('user','s_user','admin') collate utf8_unicode_ci NOT NULL default 'user', PRIMARY KEY (`id`), UNIQUE KEY `id_typeutilisateur_2` (`id_typeutilisateur`), KEY `rang` (`rang`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=2 ;
Impossible de supprimer l'entrée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4#1025 - Error on rename of '.\***\#sql-88c_1bb' to '.\***\utilisateur' (errno: 150)
Dans les clef il est indiqué en INDEX
J'ai donc ajouter une clef INDEX sur une autre entrée du tableau pour supprimer la précédente mais rien n'y fait, il continue de me retourner ce message, après quelque lectures sur le net, cela viendrais de la construction de la ligne et de la clef mais je n'ai pas trouver plus d'informations a ce jour.
Comment supprimer cette entrée ?
Cordialement.
Agité.
Partager