Erreur SQL sur mise à jour 7>8

Bonjour,

Afin de tester la nouvelle version, j’ai installé une v8 vierge puis ai effectué une restauration de la base de notre v7.0.3
On obtient un petit paquet d’erreurs, toutes du même type :

[code]
Request 19 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 1, ‹ PCG14-DEV ›, ‹ The developed accountancy french plan 2014 ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 1, ‹ PCG14-DEV ›, ‹ The developed accountancy french plan 2014 ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 20 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 6, ‹ PCG_SUISSE ›, ‹ Switzerland plan ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 6, ‹ PCG_SUISSE ›, ‹ Switzerland plan ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 21 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (140, ‹ PCN-LUXEMBURG ›, ‹ Plan comptable normalisé Luxembourgeois ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (140, ‹ PCN-LUXEMBURG ›, ‹ Plan comptable normalisé Luxembourgeois ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 22 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 80, ‹ DK-STD ›, ‹ Standardkontoplan fra SKAT ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 80, ‹ DK-STD ›, ‹ Standardkontoplan fra SKAT ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 23 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 10, ‹ PCT ›, ‹ The Tunisia plan ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 10, ‹ PCT ›, ‹ The Tunisia plan ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 24 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 12, ‹ PCG ›, ‹ The Moroccan chart of accounts ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 12, ‹ PCG ›, ‹ The Moroccan chart of accounts ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 25 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 67,‹ PC-MIPYME ›, ‹ The PYME accountancy Chile plan ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 67,‹ PC-MIPYME ›, ‹ The PYME accountancy Chile plan ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 26 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 7,‹ ENG-BASE ›, ‹ England plan ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 7,‹ ENG-BASE ›, ‹ England plan ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 27 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 49,‹ SYSCOHADA-BJ ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 49,‹ SYSCOHADA-BJ ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 28 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 60,‹ SYSCOHADA-BF ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 60,‹ SYSCOHADA-BF ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 29 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 24,‹ SYSCOHADA-CM ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 24,‹ SYSCOHADA-CM ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 30 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 65,‹ SYSCOHADA-CF ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 65,‹ SYSCOHADA-CF ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 31 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 71,‹ SYSCOHADA-KM ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 71,‹ SYSCOHADA-KM ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 32 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 72,‹ SYSCOHADA-CG ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 72,‹ SYSCOHADA-CG ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 33 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 21,‹ SYSCOHADA-CI ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 21,‹ SYSCOHADA-CI ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 34 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 16,‹ SYSCOHADA-GA ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 16,‹ SYSCOHADA-GA ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 35 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 87,‹ SYSCOHADA-GQ ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 87,‹ SYSCOHADA-GQ ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 36 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (147,‹ SYSCOHADA-ML ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (147,‹ SYSCOHADA-ML ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 37 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (168,‹ SYSCOHADA-NE ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (168,‹ SYSCOHADA-NE ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 38 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 73,‹ SYSCOHADA-CD ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 73,‹ SYSCOHADA-CD ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 39 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 22,‹ SYSCOHADA-SN ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 22,‹ SYSCOHADA-SN ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 40 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 66,‹ SYSCOHADA-TD ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 66,‹ SYSCOHADA-TD ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 41 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 15,‹ SYSCOHADA-TG ›, ‹ Plan comptable Ouest-Africain ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 15,‹ SYSCOHADA-TG ›, ‹ Plan comptable Ouest-Africain ›, 1);
Field ‹ fk_pays › doesn’t have a default value

Request 220 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (188, ‹ RO-BASE ›, ‹ Plan de conturi romanesc ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES (188, ‹ RO-BASE ›, ‹ Plan de conturi romanesc ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 221 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 5, ‹ SKR03 ›, ‹ Standardkontenrahmen SKR 03 ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 5, ‹ SKR03 ›, ‹ Standardkontenrahmen SKR 03 ›, 1);
Field ‹ fk_pays › doesn’t have a default value
Request 222 sql=‹ INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 5, ‹ SKR04 ›, ‹ Standardkontenrahmen SKR 04 ›, 1); ›
Erreur DB_ERROR_1364: INSERT INTO llx_accounting_system (fk_country, pcg_version, label, active) VALUES ( 5, ‹ SKR04 ›, ‹ Standardkontenrahmen SKR 04 ›, 1);
Field ‹ fk_pays › doesn’t have a default value[/code]

Que pourrai-je faire ?

Bonjour :happy:
Je pense que ce n’est pas fk_pays mais fk_country

Hmm je crois que je comprends ce que tu veux dire.
Mais comment je modifie ça moi ? :happy:

Modifier le nom d’une table directement en BDD ? C’est risqué il me semble, surtout quand on ne sait pas ce que l’on fait :slight_smile:
Et puis il me semble de nombreuses tables sont liées les unes aux autres donc autant ça va corriger le soucis ici mais créer une erreur là-bas…

Est-on d’accord pour dire que c’est le script de mise-à-jour auquel il manque quelques lignes pour renommer la table fk_pays en fk_country ?

Si c’est une version de test et que tu as des sauvegardes :

Oui tout a fait je pense que la MAJ a loupé un truc.

Bonjour,

je pense qu’il s’agit d’un problème de procédure pour la maj.

Il ne faut pas faire : installation de la 8.0.0 -> import de la sauvegarde (7.0.0+)

mais il faut faire : installation de la version actuelle (7.0.0+) -> import de la sauvegarde de la base -> upload de la nouvelle version (8.0.0+) -> processus de mise à jour (en virant le fichier install.lock)

+1 :sunglasses:

Bonsoir,

Alors, j’ai procédé comme demandé : installation d’une 7.0.3 vierge > import de ma base (qui est en 7.0.3 aussi) et de mes /documents (mais pas de mes /htdocs/customs) > mise à jour en 8.0.1
=> On obtient les mêmes erreurs.

@dolibarr95
Je te remercie mais que suis-je censé comprendre ?
Relancer une mise à jour en
A) remplaçant le fk_country par fk_pays ?
B ) ajoutant une ligne fk_pays sur le même modèle que fk_country ?
C) exécutant un konami code sur la page github pour jouer avec un « dogopus » ?
D) la réponse D.

Bonjour :happy:

Arre a dit juste il faut d’abord importer puis faire l’update. Afin de minimiser les erreur et que les données soient correctement importées.
Si l’erreur existe toujours renomme simplement le champ fk_pays en fk_country (à faire sur une version test :whistle: par sécurité) et une fois l’update en 8 terminée.

Visiblement le nouveau champ aurait du etre fait lors de la migration de la 6 vers la 7:

Je ne sais pas trop ce qu’il s’est passé durant les différentes mises-à-jour de notre doli de production mais voici sa table llx_accounting_system :

navicat_2018-09-04_10-29-17.png

Et voici la même table sur une installation en 7.0.3 vierge

navicat_2018-09-04_10-28-51.png

Comme on peut le voir, il y a une légère différence sur le contenu (mais j’ai pu supprimer les plans qui ne m’intéressaient pas donc, à la limite, ok) mais aussi sur la structure où l’on note que j’ai bien le champ fk_country qui est correctement rempli mais j’ai aussi le fk_pays qui est resté au lieu, j’imagine, d’avoir été supprimé lors d’une précédente update.

Il me semble que cela explique pourquoi le script de mise-à-jour de 7 vers 8 plantait.
J’ai donc mis en place une instance de test en 7.0.3 avec notre bdd de prod, j’ai remplacé cette table llx_accounting_system par la table d’une 7.0.3 vierge puis j’ai lancé la mise-à-jour vers 8.0.1
=> tout a bien fonctionné et voici d’ailleurs l’état de cette table après la mise-à-jour

navicat_2018-09-04_10-43-14.png

Je vais faire quelques tests rapides mais je suis complètement incapable de savoir si ce remplacement de table préalable au passage en v8 peut avoir des conséquences plus ou moins néfastes ailleurs dans dolibarr.
Quelqu’un pourrait-il nous aider sur ce coup ?

En vous remerciant,

je persiste à penser qu’à cette migration (ou une précédente) … la procédure de mise à jour n’a pas été respectée.

Comme tout fonctionne correctement chez tout le monde sauf chez toi, il faut te rapprocher d’un spécialiste.

Une liste (peut être non exaustive) est disponible ici :
https://wiki.dolibarr.org/index.php/List_of_Dolibarr_partners_and_providers

Bonjour

Avez vous essayé avec la 8.0.1 ?

Fred

Bonsoir,

Que ce soit vers une 8.0.0 ou 8.0.1 ou 8.0.2 le résultat est le même : erreurs sans préalablement repeupler la table llx_accounting_system et aucune erreur en l’ayant au préalable repeuplée comme expliqué dans mon message précédent.

Pour ceux qui veulent passer à la quête suivante, voir ce petit soucis >> www.dolibarr.fr/forum/t/echec-du-test-dintegrite/28163/1