Salut,

Le 25/10/2015 13:54, Julien Lesaint a écrit :
> Bonjour,
> 
> Je tente de venir en aide à un utilisateur désirant effectuer une mise à
> jour depuis une version 0.8.1 vers une 0.8.2.2.
> 
> La mise à jour de la structure de la table adherents ne se passe pas
> bien. Après avoir constaté l'échec, via l'interface web, du second
> "ALTER TABLE", j'ai restauré la sauvegarde de la base faite juste avant
> l'upgrade, puis relancé manuellement chacune des opérations exécutées
> par le script install/scripts/upgrade-to-0.82-mysql.sql.
> 
> Le résultat est le suivant:
> 
> mysql> SET FOREIGN_KEY_CHECKS=0;
> Query OK, 0 rows affected (0.00 sec)
> 
> mysql> ALTER TABLE abon_adherents ADD parent_id int(10) unsigned DEFAULT
> NULL;
> Query OK, 0 rows affected (0.05 sec)
> Records: 0  Duplicates: 0  Warnings: 0
> 
> mysql> ALTER TABLE abon_adherents ADD FOREIGN KEY (parent_id) REFERENCES
> abon_adherents (id_adh) ON DELETE RESTRICT ON UPDATE RESTRICT;
> ERROR 1822 (HY000): Failed to add the foreign key constaint. Missing
> index for constraint '' in the referenced table 'abon_adherents'
> 
> Je n'ai pas suffisamment de connaissances MySQL pour corriger le
> problème, sauriez-vous nous expliquer ce qui ne va pas ?
> 
> Le serveur MySQL est en version 5.6.25, PHP en 5.6.14.

Je pense qu'il s'agit ici d'un problème de configuration du MySQL ; mais
je ne vois pas pourquoi ça foire.
Il faudrait essayer de faire un backup de cette table, d'en vider les
données, d'appliquer le ALTER, puis de remonter les données (bien que je
crains que ça ne fonctionne pas forcément mieux).

++
-- 
Johan

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Galette-discussion mailing list
Galette-discussion@gna.org
https://mail.gna.org/listinfo/galette-discussion

Répondre à