OVH Cloud OVH Cloud

quotes et mysql

11 réponses
Avatar
Pif
Salut, j'ai une chaine de caractères qui contient des quotes. Comment
faire en sorte que quand je l'ajoute dans mon prepared statement, il
gere directment les caractères spéciaux ?

merci !

10 réponses

1 2
Avatar
Adobex
Ben le preparedstatement est censé le faire... C'est quoi ton problème?

"Pif" a écrit dans le message de
news:d3dr0l$n7a$
Salut, j'ai une chaine de caractères qui contient des quotes. Comment
faire en sorte que quand je l'ajoute dans mon prepared statement, il
gere directment les caractères spéciaux ?

merci !


Avatar
Pif
je créé un prepared statement, je lui met ma chaine de caractères; quand
y'a des caractères spéciaux j'ai une SQL exception...
si j'ajoute des slash devant les guillemets ca se passe bien !

Ben le preparedstatement est censé le faire... C'est quoi ton problème?

"Pif" a écrit dans le message de
news:d3dr0l$n7a$

Salut, j'ai une chaine de caractères qui contient des quotes. Comment
faire en sorte que quand je l'ajoute dans mon prepared statement, il
gere directment les caractères spéciaux ?

merci !







Avatar
Lionel
Pif wrote:
je créé un prepared statement, je lui met ma chaine de caractères;
quand y'a des caractères spéciaux j'ai une SQL exception...
si j'ajoute des slash devant les guillemets ca se passe bien !


Comment tu lui "mets" la chaine de caractères ?

Avatar
Pif
Pif wrote:

je créé un prepared statement, je lui met ma chaine de caractères;
quand y'a des caractères spéciaux j'ai une SQL exception...
si j'ajoute des slash devant les guillemets ca se passe bien !



Comment tu lui "mets" la chaine de caractères ?


c'est pas optimal, mais while(test) {String.relplace() }

marche bien...


Avatar
Pif
nb : je ne gère que les quotes et doubles quotes pour le coup...
y'a d'autres caractères mais la je capture l'exception et je laisse
tomber la requete (et tant pis pour l'instant pour la fiabilité 100% ;) )
Avatar
Lionel
Pif wrote:
Comment tu lui "mets" la chaine de caractères ?


c'est pas optimal, mais while(test) {String.relplace() }

marche bien...


Tu devrais lire ceci:
http://java.sun.com/j2se/1.4.2/docs/api/java/sql/PreparedStatement.html


Avatar
Pif
dois-je comprendre que je dois passer par le setString() pour avoir la
conversion ?

mais dans ce cas la, on est obligé de générer une requete avec "?" puis
de les remplir !
C'est pas gégé... :(
pourquoi de pas filer une méthode statique qui parse une chaine de
caractères ...

enfin merci !
Je vais essayer ca...

Pif wrote:

Comment tu lui "mets" la chaine de caractères ?




c'est pas optimal, mais while(test) {String.relplace() }
marche bien...



Tu devrais lire ceci:
http://java.sun.com/j2se/1.4.2/docs/api/java/sql/PreparedStatement.html






Avatar
Lionel
Pif wrote:
dois-je comprendre que je dois passer par le setString() pour avoir la
conversion ?

mais dans ce cas la, on est obligé de générer une requete avec "?"
puis de les remplir !
C'est pas gégé... :(


oui, mais c'est plus propre, plus fiable, et plus performant et plus facile
à maintenir.
Pas de magic_quotes ou addSlashes en java :)

Avatar
Pif
oui, mais java et la gestion des String en mémoire = gros caca !
Donc faire des string pour rien, c'est pas forcément propre !

mais bon, on fait avec ce qu'on a... :)
Avatar
Adobex
ah? Tu tiens ça d'où?
En fait, je pense que tu as ta vision des choses qui est sans doute éloignée
de la phylosophie Java...
Faut s'adapter voilà tout, cependant, il n'est pas faux de dire que d'autres
langages rendent plus facile la gestion des chaînes... surtout que certaines
facilités sont apparues tardivement en Java.

"Pif" a écrit dans le message de
news:d3guaa$69$

oui, mais java et la gestion des String en mémoire = gros caca !
Donc faire des string pour rien, c'est pas forcément propre !

mais bon, on fait avec ce qu'on a... :)


1 2