Erreur #3780 lors importation dump 16.04 vers Dolibarr 16.04

Bonjour,

Mes tentatives de restauration d’un dump Dolibarr 16.04 debian 12 vers Dolibarr Mint 21 se soldent toutes pas ce message ;

#3780 - Referencing column 'fk_pcg_version' and referenced column 'pcg_version' in foreign key constraint 'fk_accounting_account_fk_pcg_version' are incompatible.

Pouvez-vous m’aider s’il vous plaît ?

Bonjour,

Sujet maintes fois abordé.

Par exemple Problème restauration fichier dump ancien - #6 par jtraulle

Ha je sais bien ; C’est un maronnier !
J’ai moi-même maintes fois lu cette réponse ; Pas de vérification des contraintes ! Case à cocher ou mention en début de dump.
Cependant, cela ne veut pas fonctionneer chez moi…

Vous avez les mêmes versions de mariadb et/ou mysql sur vos deux configurations ?

Il y a des configurations par défaut qui changent suivant les versions, je ne les connait pas toutes, mais par exemple sur mariadb le sql_mode est différent selon la version

Bonjour,
2 idées :

  1. Supprimer toutes les tables Dolibarr (llx_) existantes dans votre nouvelle base et réessayez l’import.

  2. Vérifiez l’encodage des tables dans le dump. Selon le SGBD ça peut coincer si une table est en utf8_unicode_ci et l’autre en utf8_general par exemple.
    Pour réencoder une table :
    ALTER TABLE `llx_accounting_account` DEFAULT CHARSET=utf8 COLLATE utf8_general_ci;
    ou sur votre ancienne installation faire
    https://urldevotredolibarr/install/repair.php?force_utf8_on_tables=confirmed
    avant de refaire votre export.

@+

Bonjour :slight_smile:

quelques lignes à ajouter au début de votre dump :

SET FOREIGN_KEY_CHECKS=0;
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";

DROP TABLE IF EXISTS llx_accounting_account;
DROP TABLE IF EXISTS llx_accounting_system;

COMMIT;

C’est certainement la solution la plus efficace !!!
Plus d’informations sur le wiki : Restaurations - Dolibarr ERP CRM Wiki

Bonne continuation

Et voila ; J’ai pu importer mon dump grâce à votre deuxième solution !
Je vous remercie vraiment beaucoup !
C’était un plaisir.
Jérôme

Bonjour,
Je n’ai pas essayé votre solution mais je vous remercie pour le post. Je garde cette solution pour une prochaine fois !
Jérôme

Bonjour,
Je n’ai pas vérifié ceci mais une des solutions proposées fonctionne. Merci !