{MySQL} Probleme d'interprétation du caractère +
Résolu/Fermé
Dark_Lycan
-
1 oct. 2009 à 10:30
Dark_Lycan Messages postés 2 Date d'inscription jeudi 1 octobre 2009 Statut Membre Dernière intervention 1 octobre 2009 - 1 oct. 2009 à 15:01
Dark_Lycan Messages postés 2 Date d'inscription jeudi 1 octobre 2009 Statut Membre Dernière intervention 1 octobre 2009 - 1 oct. 2009 à 15:01
A voir également:
- {MySQL} Probleme d'interprétation du caractère +
- Caractère ascii - Guide
- Caractere speciaux - Guide
- Caractère spéciaux - Guide
- Caractere speciaux mac - Guide
- Mysql community server - Télécharger - Bases de données
5 réponses
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
1 oct. 2009 à 12:55
1 oct. 2009 à 12:55
MySQL n'interprète pas les chaines de caractères, ton problème vient d'ailleurs.
Dark_Lycan
Messages postés
2
Date d'inscription
jeudi 1 octobre 2009
Statut
Membre
Dernière intervention
1 octobre 2009
1 oct. 2009 à 13:54
1 oct. 2009 à 13:54
Merci pour ta réponse P@t@ch0n.
J'ai peut-être un début de solution. Je viens de faire une vérification de mes données présentes dans les tables concernées, et je vois que je n'ai aucun enregistrement avec les valeurs "EC+". Je me dit, que dans ce cas là, c'est peut être à cause de cette absence que la requête ne fonctionne pas correctement.
J'ajoute donc une entrée avec pour valeur "EC+" et vérifie dans ma table, mais je me retrouve avec pour valeur "EC". Je modifie ce champs plusieurs fois, en passant la valeur à "EC+", mais à la fin de l'enregistrement, j'ai toujours comme valeur "EC".
Pourquoi? Un problème dans la définition de mes tables (je ne pense pas, vu que pour ce champs, il fait parti d'une liste et lorsque je contrôle la liste, il y a tous les éléments qui s'affichent)? Ou bien un soucis dans le paramétrage? Ou ailleurs?
Merci d'avance pour votre aide.
J'ai peut-être un début de solution. Je viens de faire une vérification de mes données présentes dans les tables concernées, et je vois que je n'ai aucun enregistrement avec les valeurs "EC+". Je me dit, que dans ce cas là, c'est peut être à cause de cette absence que la requête ne fonctionne pas correctement.
J'ajoute donc une entrée avec pour valeur "EC+" et vérifie dans ma table, mais je me retrouve avec pour valeur "EC". Je modifie ce champs plusieurs fois, en passant la valeur à "EC+", mais à la fin de l'enregistrement, j'ai toujours comme valeur "EC".
Pourquoi? Un problème dans la définition de mes tables (je ne pense pas, vu que pour ce champs, il fait parti d'une liste et lorsque je contrôle la liste, il y a tous les éléments qui s'affichent)? Ou bien un soucis dans le paramétrage? Ou ailleurs?
Merci d'avance pour votre aide.
Bonjour
Comment est défini ton champ ? emum ? varchar(3) ? ou autre ?
Et comment fais-tu tes essais quand tu enregistres EC+? avec un script ou avec phpmyadmin ?
Comment est défini ton champ ? emum ? varchar(3) ? ou autre ?
Et comment fais-tu tes essais quand tu enregistres EC+? avec un script ou avec phpmyadmin ?
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
1 oct. 2009 à 14:08
1 oct. 2009 à 14:08
Qu'entends-tu par liste ?
Si le + est supprimé lors de l'enregistrement, le problème viendrait en effet de la définition de cette colonne.
De quel type est cette colonne acquisition ?
Si le + est supprimé lors de l'enregistrement, le problème viendrait en effet de la définition de cette colonne.
De quel type est cette colonne acquisition ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Dark_Lycan
Messages postés
2
Date d'inscription
jeudi 1 octobre 2009
Statut
Membre
Dernière intervention
1 octobre 2009
1 oct. 2009 à 15:01
1 oct. 2009 à 15:01
Le champs acquisition est de type enum. Il prend sa valeur parmi 6 ("V", "EC+", "EC", "EC-", "NF" et "NA"). Pour les autres valeurs, les enregistrements se font sans souci. Il n'y a que le cas EC+ qui pose problème.
Et pour enregistrer une valeur, je passe directement par phpmyadmin, afin de tester la validité de mes tables, et de ma base de données (ensuite je scripterai, lorsque qu'on m'aura validé la structure).
[EDIT]: J'ai trouvé la solution mais je n'ai pas trouvé la logique qui se cache derrière.
Pour résoudre mon problème, j'ai tenté de passer par une requête d'insertion banale:
INSERT INTO test_dev_cpt_eleve( id_dev_cpt, id_eleve, acquisition )
VALUES ( 16141, 2, 'EC+' )
Et là, paf, mon EC+ est présent dans ma table. Alors que si je passe par l'interface PHPMyAdmin, il ne prend pas en compte le +. Je ne sais pas pourquoi, mais bon, tant que ça marche, c'est l'essentiel.
Voilà, mon problème est résolu mais si quelqu'un sait pourquoi l'interface tronque la saisie, ce serait cool de me l'expliquer.
Encore merci le père et P@t@ch0n pour votre aide.
Et pour enregistrer une valeur, je passe directement par phpmyadmin, afin de tester la validité de mes tables, et de ma base de données (ensuite je scripterai, lorsque qu'on m'aura validé la structure).
[EDIT]: J'ai trouvé la solution mais je n'ai pas trouvé la logique qui se cache derrière.
Pour résoudre mon problème, j'ai tenté de passer par une requête d'insertion banale:
INSERT INTO test_dev_cpt_eleve( id_dev_cpt, id_eleve, acquisition )
VALUES ( 16141, 2, 'EC+' )
Et là, paf, mon EC+ est présent dans ma table. Alors que si je passe par l'interface PHPMyAdmin, il ne prend pas en compte le +. Je ne sais pas pourquoi, mais bon, tant que ça marche, c'est l'essentiel.
Voilà, mon problème est résolu mais si quelqu'un sait pourquoi l'interface tronque la saisie, ce serait cool de me l'expliquer.
Encore merci le père et P@t@ch0n pour votre aide.