Error 1833 : VARCHAR(20) CHARACTER SET utf8

Bonjour,

Je tente de faire une mise à jour pour un copain qui a une veille version de dolibarr.
Je pars de loin : version 6 pour aller vers la 13…
j’ai une erreur dans la migration entre la 6 et la 7 :
Erreur DB_ERROR_1833: ALTER TABLE llx_accounting_system MODIFY pcg_version VARCHAR(20) CHARACTER SET utf8;
Cannot change column ‹ pcg_version ›: used in a foreign key constraint ‹ fk_accountingaccount_fk_pcg_version › of table ‹ dolibarr.llx_accountingaccount ›
Erreur DB_ERROR_1833: ALTER TABLE llx_accounting_system MODIFY pcg_version VARCHAR(20) COLLATE utf8_unicode_ci;
Cannot change column ‹ pcg_version ›: used in a foreign key constraint ‹ fk_accountingaccount_fk_pcg_version › of table ‹ dolibarr.llx_accountingaccount ›

Voilà… Si vous avez une solution, merci d’avance :slight_smile:

La réponse est ici : 8.0.4 vers 9.0.0 DB_ERROR_1833 pcg_version

SET foreign_key_checks = 0; ALTER TABLE llx_accounting_system MODIFY pcg_version varchar(20) CHARACTER SET utf8; SET foreign_key_checks = 1;

Merci pour cette réponse super rapide :slight_smile:
J’ai tapé la commande et j’ai une nouvelle erreur :

Erreur DB_ERROR_1833: ALTER TABLE llx_accounting_system MODIFY pcg_version VARCHAR(20) COLLATE utf8_unicode_ci;
Cannot change column 'pcg_version': used in a foreign key constraint 'fk_accountingaccount_fk_pcg_version' of table 'dolibarr.llx_accountingaccount'

Désolée si ce que je demande vous parait trop simple, j’aide quelqu’un d’autre mais je suis pas compétent non plus, enfin, au moins je comprends ce qu’on me dit de faire…

Et si je tape :

ALTER TABLE llx_accounting_system MODIFY pcg_version varchar(20) COLLATE utf8_unicode_ci

Je reviens à l’erreur ci-dessus « character set utf8 »

Peut-être en essayant les deux commandes en une :

SET foreign_key_checks = 0; ALTER TABLE llx_accounting_system MODIFY pcg_version varchar(20) CHARACTER SET utf8 COLLATE utf8_unicode_ci; SET foreign_key_checks = 1;

non, j’ai toujours le message :

Erreur DB_ERROR_1833: ALTER TABLE llx_accounting_system MODIFY pcg_version VARCHAR(20) CHARACTER SET utf8;
Cannot change column 'pcg_version': used in a foreign key constraint 'fk_accountingaccount_fk_pcg_version' of table 'dolibarr.llx_accountingaccount'

Il faudrait tester sur un double de la base ou vérifier que la sauvegarde est bonne avant cette action « au cas où » mais l’action :

SET GLOBAL FOREIGN_KEY_CHECKS=0;

désactive la vérification des clés étrangères, ensuite upgrader à la v7.

Remettre juste après le passage en v7 :

SET GLOBAL FOREIGN_KEY_CHECKS=1;

ça ne change rien, j’ai toujours les deux erreurs :confused:
Une sauvegarde qui as un problème ? je peux la refaire.
Après comme je disais on part de loin, d’une version 3.9 je crois, déjà j’arrive jusqu’à la V6 c’est pas mal :smiley:

Bonjour,

Un dernier truc, Dolibarr est installé ou et comment ?
Mysql ou postgresql ?

Yunohost 4.1.8, MariaDB.
C’est une récupération d’un serveur sous debian 0.8 je crois qui devait avoir mysql, là je peux pas vérifier pour l’ancien serveur, mais je me renseigne.
Merci du suivi :slight_smile: