La modifier ce fait pas si j'ai un apostrophe

Résolu
amylee1984 Messages postés 153 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 20 août 2006 - 19 janv. 2006 à 23:31
aieeeuuuuu Messages postés 698 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 20 mai 2011 - 20 janv. 2006 à 17:45
salut, je devlope sous vb.net2003 ,j'ai un petit sousi , j'explique:
j'ai un table nomé article ou j'ai un champ qui s'apelle text ,j'ai creer la base sous sql server 2000, et j'ai declarer ce champ de type varchar (600), alors quand je veux modifier ce text en clickant sur le boutton modifier , si il a trouvé un truc du genre ( c'est , l'es....)
bref une lettre + l'apostrophe+lettre il me dit sytaxte incorect vers et le mot qui contient l'apostrophe
par ex (syntaxe incorect vers "est")
et si le text ne contient pas l'apostrophe tout marche bien
je sais pas comment resoudre ce probleme , pouvez vous m'aider svp
merci d'avance

3 réponses

aieeeuuuuu Messages postés 698 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 20 mai 2011 3
20 janv. 2006 à 11:18
salut

le probleme vient bien de l'apostrophe en elle meme.
pour l'interpreteur de commande SQL, elle signifie la fin de ta chaine de caractere.
par exemple si tu fait


INSERT INTO MaTable VALUES('C'est Beau'),


l'interpreteur ne va prendre que le C comme chaine de caractére a inserer, et va s'attendre derriere a d'autre istructin SQL, ce qui n'est pas le cas.


pour resoudre le probleme, il suffit de doubler les apostrophe :


INSERT INTO MaTable VALUES ('C''est beau')


attention, il s'agit bien de deux fois le caractére ' et non du caractere guillement (")


donc le mieux pour eviter ce genre d'ennui, dans ton programme, a chaque fois que tu insere un champs de type chaine de caractere, remplace tous les ' par ''


bonne continuation
3
amylee1984 Messages postés 153 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 20 août 2006 3
20 janv. 2006 à 14:17
salut , merci aieeuuuu ca marche nikel , au fait moi j'ai utilisé la fonction replace puisque je prend les modifications à travers des zones de texte
update articles set [text integral]='" &
Replace(tx_titre.Text, "'", "''") &" ' .......

merci a vous
0
aieeeuuuuu Messages postés 698 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 20 mai 2011 3
20 janv. 2006 à 17:45
de rien

vi, c'est la fonction que j'utilise aussi, mais je suis sous VB6, et je ne savais pas si elle existait de la meme facon sous VB.net.
0
Rejoignez-nous