SQL et << ' >> + << : >> [Résolu]

Signaler
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
-
Messages postés
1719
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 août 2020
-
Salut tout le monde,

j'ai un problème avec une commande SQL et les char << ' >> << : >>

je fait unUPDATE MSG set EN"Models hola" , ES"" where ID= 10413
UPDATE MSG set EN="Models ' hola", ES ="" where ID= 10413
UPDATE MSG set EN="Models x : hola", ES ="" where ID= 10413
tout ça marchent bien.

mais avec les deux char present une seul fois :
UPDATE MSG set EN ="Models' x: hola", ES="" where ID=10413
ça ne marche pas.
EOleException : Objeto Parameter mal definido. Se proporcionó información incompleta o incoherente

notez que
UPDATE MSG set EN="Models:: hola", ES="" where ID=10413
UPDATE MSG set EN="Models'' (double simple quote) hola", ES="" where ID=10413
UPDATE MSG set EN="Models'' x: hola", ES="" where ID=10413
UPDATE MSG set EN="Models' x:: hola", ES="" where ID=10413
marchent aussi très bien.

context:
MS Access 2003 (fichier format 2000), TADOQuery.SQL.Text

une idée? moi je nage....

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.

11 réponses

Messages postés
120
Date d'inscription
mardi 3 avril 2007
Statut
Membre
Dernière intervention
15 novembre 2007
1
Utiliser une TADOQuery

UPDATE MSG set EN="Models:: hola", ES="" where ID=10413

remplacé par
UPDATE MSG set EN :Param1, ES :Param2 where ID = :Param3
puis
AdoQuery.Parameters.ParamByname('Param1').value := lachainequicontientlavaleurpourEN;
AdoQuery.Parameters.ParamByname('Param2').value := lachainequicontientlavaleurpourES;
AdoQuery.Parameters.ParamByname('Param3').value := lentierpourID;
AdoQuery.Execute;
Messages postés
120
Date d'inscription
mardi 3 avril 2007
Statut
Membre
Dernière intervention
15 novembre 2007
1
bjr,

as-tu essayé en utilisant des parametres ?
Généralement, ça résoud tous les problèmes!

J-Luc ! 
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
salut,

"parametres"... heu. je suis pas doué en DB/SQL. Qu'entends-tu par paramètres? je vois pas du tout. :-(

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
oh

ça m'as l'aire très intéressant !

je vais tester ça demain (et oui, j'ai finit ma journée de taf)

merci, a+

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
salut,

ça marche impec ! j'ai juste du les crée avant (Parameters.CreateParameter).
très pratique ces params... :D

merci,

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Messages postés
1719
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 août 2020
3
Salut Loda,


Juste par curiosité, ne serait-il pas plus juste d'utiliser ocurrir plutôt que proporcionarse dans le message :

"Se proporcionó (=>ocurrió) información incompleta o incoherente" ?

Question subsidiaire : tu utilises un clavier espagnol ? Si c'est le
cas, vu tes nombreuses contributions à delphifr, bravo car bonjour les
"Alt + x" pour les caractères accentués. Tiens, ça me donne une idée de
programme...


A +


japee
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
[HS]

Pour le message d'erreur, bin j'en sais rien ! :D Je l'ai juste copié de mon fichier de log. (qui a des messages en espagnole, car mon window est en espagnole.)
Et le clavier, bin c'est comme le window, c'était sur le bureau quand je me suis fait engagé (je bosse/vie à Barcelone), alors je fais avec.

Mais on peut ajouter la "barre de langue" près du systray dans le paneau de configuration "configuration regional -> langue -> details" qui te permet de changer de clavier (FR, ES, ..) rapidement. très pratique. Si il n'y avait pas cette m**** de détéction automatique qui me le remettait en espagnole de temps en temps, ça serrait parfait.

Au finale, il faut juste se rappeler où son les accent sur le clavier français :-D

"Alt+X" je ne connait pas.... ?!

pour les accent/char très exotique j'utilise directement le code asci :

ex: pour " ñ " (241)
<li>maintient le alt de enfoncé .</li><li>press "0241" sur le pavé numérique<li>c'est magique ! :-)</li>
/HS

bon code,

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Messages postés
1719
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 août 2020
3
Salut Loda,


Désolé pour le hors-sujet.

Bref, l'idéal serait d'avoir les 2 claviers sous la main, un azety fr et un querty es sur lequel il y a le ñ entre autres...

Pour la 1ère question, je me suis imaginé que tu maîtrisais la langue de Cervantes.

Pour obtenir un caractère ne figurant pas sur le clavier, j'aurais dû
plutôt écrire Alt + n, "n" étant un nombre, comme tu nous l'expliques
plus haut.

Tiens, Alt + 0241 tu me l'apprends, moi je faisais Alt + 164 pour ñ... Intéressant.

Merci pour tes explications.


Buén código fuente a todas y a todos
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
salut,

" Désolé pour le hors-sujet." pourquoi? y a pas de mal. je l'indique juste pour les prochain qui relise.

non je parle pas couramment espagnole. je baraguine un peu et, avec les mains, les gens me comprennent...

164 vs 241:
bin en fait, 241 c'est le code asci. mais je vois pas à quoi correspond le 164 ?!?

"d'avoir les 2 claviers" ... tss, me dit pas que tu regarde (encore) le clavier pour taper... donc le dessin sur le touche ne sert à rien en fin de compte.... non ?

(oui oui, moi aussi je mates le clavier... ;o) )

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Messages postés
66
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
4 août 2008

bah et pourquoi pas juste AltGr+2 puis n pour obtenir ñ...
ça marche très bien sur un clavier azerty français... lol
bon oui je suis un peu chauvin sur les bords...
et beaucoup au milieu!!! mdr
mais je me permettrai si ça ne vous dérange pas de revenir vers vous car je risque fortement d'avoir besoin d'une aide précieuse sur SQL dans peu de temps!
en attendant, bonne continuation à tous ;-)







<hr />

si Delphi m'était conté...
Messages postés
1719
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 août 2020
3
Oh oui, bien vu, mounjetado.
Mais pour SQL, faudra pas compter sur moi...

Sinon pour répondre à Loda (pourquoi Alt + 164), c'est en référence au jeu de caractère MS-DOS Multi-Linguistique( Latin I). Ma devise est : pourquoi faire simple quand on peut faire compliqué, lol.

Bonne prog'