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

Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
- - Dernière réponse : japee
Messages postés
1799
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
19 juillet 2018
- 18 avril 2007 à 18:25
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.
Afficher la suite 

Votre réponse

11 réponses

Meilleure réponse
Messages postés
122
Date d'inscription
mardi 3 avril 2007
Statut
Membre
Dernière intervention
15 novembre 2007
1
3
Merci
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;

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 112 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jelume
Messages postés
122
Date d'inscription
mardi 3 avril 2007
Statut
Membre
Dernière intervention
15 novembre 2007
1
0
Merci
bjr,

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

J-Luc ! 
Commenter la réponse de jelume
Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
0
Merci
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.
Commenter la réponse de cs_Loda
Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
0
Merci
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.
Commenter la réponse de cs_Loda
Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
0
Merci
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.
Commenter la réponse de cs_Loda
Messages postés
1799
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
19 juillet 2018
1
0
Merci
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
Commenter la réponse de japee
Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
0
Merci
[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.
Commenter la réponse de cs_Loda
Messages postés
1799
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
19 juillet 2018
1
0
Merci
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
Commenter la réponse de japee
Messages postés
900
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
0
Merci
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.
Commenter la réponse de cs_Loda
Messages postés
69
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
4 août 2008
0
Merci
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é...
Commenter la réponse de cs_mounjetado
Messages postés
1799
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
19 juillet 2018
1
0
Merci
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'
Commenter la réponse de japee

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.