Je rebondis sur le problème des images sur une base SQL, et en
particulier mySQL.
Il y a bien d'autres caractères interdits dans mySQL, que l'on peut
retrouver dans une image (CHR(0) et autres). J'ai l'habitude, pour
enregistrer une image, de l'encoder auparavant en base64, et de la
décoder ensuite avant de l'afficher. Un autre petit problème est que
je dois sauvegarder l'image lue sur la base sur un fichier temporaire
sur l'ordinateur de l'utilisateur afin de pouvoir la récupérer comme
"picture" en REALbasic.
Quelqu'un a-t-il une solution plus simple ?
Concernant la question initiale, j'utilise la fonction replaceall
pour remplacer les ' par \' ou '' quand je n'utilise pas les classes
DatabaseRecord, qui n'ont pas toujours bien fonctionné lors des
évolutions diverses de RB ou du plugin mySQL.
Jacques Chanliau
Le 24 janv. 07 à 10:29, Stéphane Pinel a écrit :
Le 24 janv. 07 à 10:09, Jacquot Jules a écrit :
je me suis demandé ce que Powel voulait dire par là
protéger une chaîne de caractères ? Qu'es à co ?
Si vous n'utilisez pas les classes DatabaseRecord et RecordSet,
mais que vous exécutez la requête SQL via SQLExecute,
vous avez en effet besoin de "protéger" la chaîne pour tous les
caractères réservés (Escape/Unescape). Ce qui, par exemple
lors d'une insertion d'image, peu devenir assez lourd...
A+
---
Stéphane Pinel
Support Technique en Français
stephane at realsoftware dot fr - http://www.realsoftware.fr
|