Page 1 sur 1

chr(34) et sqlite

Publié : mer. 16/janv./2013 18:46
par omega
C'est bizarre... J'ai remarqué que CHR(34) n'est pas toujours obligatoire mais ce que je ne comprends pas c'est
dans quel cas elle devient obligatoire... Bon je vais donner un exemple ppuir mieux me faire comprendre.

Pour ajouter un enregistrement dans une table (base sqlite), on fait généralement comme ça:

Code : Tout sélectionner

Wsql="INSERT into MaTable (Nom,Prenom,Age) Values ("
Wsql+ CHR(34) + wNom$      + CHR(34) + ","
Wsql+ CHR(34) + wPrenoms$ + CHR(34) + ","
Wsql+ CHR(34) + wAge$       + CHR(34) + ")"
CheckDataBaseUpdate(0,Wsql)
Ici, les variables à insérer sont toutes précédées et suivies par CHR(34)

De même, pour modifier ou supprimer des enregistrements:

Code : Tout sélectionner

Wsql="Update MaTable Set Age=" + CHR(34) + wAge$  + CHR(34) 
Wsql+                " WHERE Nom=" + CHR(34) + "Titi"    + CHR(34)
CheckDataBaseUpdate(0,Wsql)
Même ici, toutes les variables sont précédées et suivies par CHR(34)

Ce que je viens de constater aujourd'hui , c'est ce code qui a marché le plus normalement du monde.

Code : Tout sélectionner

wNom$="toto"
Wsql="Delete from MaTable WHERE Nom=" + wNom$
CheckDataBaseUpdate(0,Wsql)
Pourtant, il ne contient pas de CHR(34).... et il fonctionne bien.

Quelqu'un veut bien m'éclairer?

Merci beaucoup



















[/code]

Re: chr(34) et sqlite

Publié : jeu. 17/janv./2013 3:08
par falsam

Code : Tout sélectionner

wNom$="toto"
Wsql="Delete from MaTable WHERE Nom=" + wNom$
CheckDataBaseUpdate(0,Wsql)
Essayes avec wNom$ = "l'artiste"