Ça fonctionne et c'est rapide, petit problème lorsque j'essaie de retirer le caractère unique voire l'index, voire les deux (pour revenir à une table "normale") en utilisant ce que j'ai aussi trouvé sur la toile :
ou simplement UNIQUE ou INDEX ou un seul des champ (intitulé des colonnes) metier, ou entreprise ou ville ou prestation etc. etc. ça ne fonctionne pas...
Oui la fatigue aidant, je ne fais plus attention, je finis par faire n'importe quoi...
lorsque j'envoie la ligne de code que j'ai nommée avec unique, index unique ou index l'erreur est toujours la même
Erreur dans le script : ... à la Ligne 277 Message MySQL : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNIQUE INDEX(metier, entreprise, ville, prestation, departement)' at line 1
Ce qui ne nous apprend pas grand chose...
Lorsque j'essaie cela
$link = mysql_query("ALTER TABLE " . $table_eval_de_linscrit . " DROP INDEX metier");
j'obtiens un message plus intéressant quoi que...
Erreur dans le script :... à la Ligne 277 Message MySQL : Can't DROP 'metier'; check that column/key exists.
Je ne comprends pas bien ce que cela veut dire, je ne désire pas retirer la colonne metier mais seulement son caractère d'unicité...
Message MySQL : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNIQUE metier' at line 1
ce qui n'est pas passionnant...
avec la syntaxe conseillée par la ressource SGBD :
$link = mysql_query("DROP UNIQUE metier ON TABLE " . $table_eval_de_linscrit)
Message MySQL : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNIQUE metier ON TABLE tb_evals_de_linscrit_marcvart' at line 1
DROP INDEX supprime l'index nommé nom_de_l_index de la table nom_de_table. DROP INDEX ne fait rien avec la version 3.22 et les précédentes. Depuis cette version, DROP INDEX est un alias d'ALTER TABLE supprimant l'index.
Pour essayer de t'en dire davanatage... sur cette table, il y a une clé primaire qui est id, à priori rien d'autre, hormis grisées les cases d'unicité de metier, entreprise, ville departement.
Ce sont ces cases grisées que je n'arrive pas à "dégriser", sans jeu de mots subtils...
christouphe te parlais de vérifier à travers l'interface graphique de PMA si l'index existe toujours ou s'il a tout simplement déjà été retiré, expliquant le fait que depuis lors tes requêtes échouent...
Je pense que quelque-chose m'échappe dans ces explications...
Les cases INDEX de la BDD (sous PMA donc) sont toutes décochées, pour autant les cases UNIQUE restent grisées (c'est à dire "indécochables") pour les colonnes citées précédemment metier, entreprise, ville, departement, et ce quelles que soient mes tentatives SQL ou PHP +SQL. Était-ce ce que tu voulais que je vérifie ?
les UNIQUE sont des index, avec une particularité supplémentaire : ils interdisent les doublons. Donc si tu n'as d'index, ça comprend les unique aussi...
OK, merci pour l'info. il n'empêche que le statut de ces colonnes n'a pas changé puisque lorsque je tente de copier (dupliquer) une ligne de cette table en changeant l'id bien sûr, sql me dit :
Et ce problème reste vrai uniquement sur les champs pour lesquels la case UNIQUE est grisée, ce qui me laisse penser que le problème n'est pas résolu...
Si je ne me trompe pas, ceci va te rendre en résultat une chaîne : la requête qu'il faudrait faire pour recréer ta table telle qu'elle est actuellement. On sera fixés sur la présence ou non d'index (en dehors de la clé primaire, évidemment)
J'en suis revenu à la table d'origine qui était assez petite et qu'il ne m'a pas été difficile de réécrire... Je conserve précieusement ce que tu viens de m'expliquer, mais je suis obligé d'en revenir à une solution de "bucheron" pour le moment car je dois continuer de développer...
J'attends aussi une réponse du rédacteur de l'article ; si je trouve une solution au problème (car la méthode, il faut bien l'avouer, est extrêmement rapide et économique en ressource), je viendrai faire un post et fermer la discussion.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
{LVM}Plan de "partitions" pour machines virtuelles ? Carte de capture sous linux ? Erreur ACPI au boot ?
{LVM}Plan de "partitions" pour machines virtuelles ? Carte de capture sous linux ? Erreur ACPI au boot ?
{LVM}Plan de "partitions" pour machines virtuelles ? Carte de capture sous linux ? Erreur ACPI au boot ?
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
{LVM}Plan de "partitions" pour machines virtuelles ? Carte de capture sous linux ? Erreur ACPI au boot ?
Keep It Simple Stupid - SF4 conf Swift - Cours 1/4 SF4 - Exceptions PDO - Formes Normales
{LVM}Plan de "partitions" pour machines virtuelles ? Carte de capture sous linux ? Erreur ACPI au boot ?
Si je ne me trompe pas, ceci va te rendre en résultat une chaîne : la requête qu'il faudrait faire pour recréer ta table telle qu'elle est actuellement. On sera fixés sur la présence ou non d'index (en dehors de la clé primaire, évidemment)
{LVM}Plan de "partitions" pour machines virtuelles ? Carte de capture sous linux ? Erreur ACPI au boot ?