« Gérer les erreurs » : différence entre les versions
De Documentation
Aller à la navigationAller à la recherche
Aucun résumé des modifications |
|||
| Ligne 21 : | Ligne 21 : | ||
== Les enregistrements ne se font plus == | == Les enregistrements ne se font plus == | ||
Les enregistrements en ligne affichent une erreur mysql ('''''incorrect integer value...'''''), les enregistrement via l'automate de prêt restent muets. | |||
Cela arrive après une mise à jour du serveur. La procédure ci-dessous s'effectue en ligne de commande sur le serveur ou en se connectant à phpMyAdmin par un navigateur. | |||
===<u>En ligne de commande</u>=== | |||
~# mysql | |||
MariaDB [(none)]> select @@sql_mode; (affiche le mode en cours) | |||
(MariaDB [(none)]> set global sql_mode='';) | |||
MariaDB [(none)]> set sql_mode=''; | |||
MariaDB [(none)]> quit; | |||
<br> | |||
===<u>Autre solution via phpMyAdmin</u>=== | |||
* Se connecter à phpmyadmin | |||
* Menu : Plus > Variables | |||
* Rechercher sql mode | |||
* Éditer et effacer les valeurs ; enregistrer | |||
Il semblerait qu'il faille refaire la procédure lors des mises à jour. | |||
===<u>Autre solution : modifier my.cnf</u>=== | |||
Éditer le fichier my.cnf (en mode su) | |||
# nano /etc/mysql/my.cnf | |||
Ajouter les lignes : | |||
[mysqld] | |||
sql_mode="" | |||
Enregistrer. | |||
Relancer le service : | |||
# service mysql restart | |||
Pour vérifier le contenu du paramètre : | |||
# mysql -e "select @@sql_mode;" | |||
'''Cette procédure a été automatisée sur le serveur pour qu'elle s'effectue après chaque mise à jour sans qu'aucune intervention ne soit nécessaire.''' | |||
Version du 22 mars 2022 à 17:25
L'indexation décimale des notices n'est pas vide
Lors de l'extraction des données pour impression des étiquettes code/cote, on remarque que certains exemplaires voient leur cote précédée d'un nombre. Il s'agit de l'indexation décimale qui a été renseignée lors de l'importation et qui précède automatiquement la cote. Ci-dessous la méthode pour corriger les notices et les exemplaires dans la base de données.
Correction des notices
- Catalogue > Recherche : Multi-critères
- Sélectionner : Indexation > Indexation décimale
- Expression Booléenne : "N'est pas vide"
- Rechercher
- Ajouter dans un panier ou en créer un
- Appliquer la procédure de suppression de l'indexation décimale : Paniers > Action > Par procédure d'action
- Sélectionner le panier
- Appliquer la procédure N 3.8 Supprimer l'indexation décimale...
Correction des exemplaires
- Recherche Multi-critères -> Exemplaires > Cotes : Commence par "0"
- Transformer en recherche d'exemplaires -> cocher -> ajouter dans un panier
- Recommencer avec tous les chiffres
- Paniers > Actions > Par procédure d'action : Sélectionner le panier
- Changement d'une partie de la cote : Remplacer successivement chaque nombre, espace, "." par rien
- Vérifier puis vider le panier
Les enregistrements ne se font plus
Les enregistrements en ligne affichent une erreur mysql (incorrect integer value...), les enregistrement via l'automate de prêt restent muets. Cela arrive après une mise à jour du serveur. La procédure ci-dessous s'effectue en ligne de commande sur le serveur ou en se connectant à phpMyAdmin par un navigateur.
En ligne de commande
~# mysql MariaDB [(none)]> select @@sql_mode; (affiche le mode en cours) (MariaDB [(none)]> set global sql_mode=;) MariaDB [(none)]> set sql_mode=; MariaDB [(none)]> quit;
Autre solution via phpMyAdmin
* Se connecter à phpmyadmin * Menu : Plus > Variables * Rechercher sql mode * Éditer et effacer les valeurs ; enregistrer
Il semblerait qu'il faille refaire la procédure lors des mises à jour.
Autre solution : modifier my.cnf
Éditer le fichier my.cnf (en mode su)
# nano /etc/mysql/my.cnf
Ajouter les lignes :
[mysqld] sql_mode=""
Enregistrer. Relancer le service :
# service mysql restart
Pour vérifier le contenu du paramètre :
# mysql -e "select @@sql_mode;"
Cette procédure a été automatisée sur le serveur pour qu'elle s'effectue après chaque mise à jour sans qu'aucune intervention ne soit nécessaire.