Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2711 connectés 

  FORUM HardWare.fr
  Programmation

  [VB6] les guillemets dans une recherche ... avec SQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VB6] les guillemets dans une recherche ... avec SQL

n°12881
Hepil
Posté le 06-02-2001 à 10:21:18  profilanswer
 

si j'execute
rs.open "select * from table1 where nomcli = 'andrew' and précli = 'Lucky'"
ça marche
mais si je remplace Andrew par o'Mc Loch
ça ne marche plus parce qu'il y a une apostrophe dans la chaîne de caractères
Si je double l'apostrophe, il y a une erreur
 
 
Quelle est la solution ?

 

--Message édité par Hepil--

mood
Publicité
Posté le 06-02-2001 à 10:21:18  profilanswer
 

n°12883
jupiler
Un cousin...
Posté le 06-02-2001 à 11:21:51  profilanswer
 

essaye ceci:
 
select * fril table1 where nomcli = 'o''Mc Loch '  
 
 
c'est le type de code généré lors d'un export Data sur une base Oracle donc l'un des champs contenait une apostrophe

n°12885
Hepil
Posté le 06-02-2001 à 11:27:21  profilanswer
 

excuses, mais le fril étai en fait from !!
sinon, ce que tu me dis je l'ai déjà testé  
c'est le message d'erreur que je rencontre, car l'exécution s'arrête au deuxième guillemet, le reste est alors considéré comme du commentaire

 

--Message édité par Hepil--

n°12888
thegti
La constipation se soigne ...
Posté le 06-02-2001 à 11:42:39  profilanswer
 

En fait il faut t'arranger selon ce que ton SGBD comprends
Le SGBD ne comprends la chaine 'o'Mc Loch'
SQLServer comprends 'o'+Char(39)+'Mc Loch'
Oracle comprends 'o''Mc Loch'
Access comprends les deux il me semble
 
Après le reste, je connais pas

n°12889
duch
Posté le 06-02-2001 à 11:45:53  profilanswer
 

deux soluces :  
 
essaie de remplacer les guillemets par &chr(39)&, ou essaie avec cette fonction que m'avait filé Magibuzz il y a quelques temps (je pense qu'il n'y verra pas d'objection) :  
 
 
function quote(byval chaine)  
on error resume next  
chaine = cstr(chaine)  
if chaine <> "" then  
   chaine = replace(chaine,"'","''" )  
   quote="'"&chaine&"'"  
else  
quote="''"    
end if  
if err <> 0 then  
quote="''"  
end if  
on error goto 0  
end function


---------------
Webmaster du site de l'Île-Saint-Denis : http://www.lile-saint-denis.fr
n°12892
Hepil
Posté le 06-02-2001 à 12:18:20  profilanswer
 

ok je vais tester cela
merci ... Magic

 

--Message édité par Hepil--


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [VB6] les guillemets dans une recherche ... avec SQL

 

Sujets relatifs
VB6 Passé un objet form a une procédure commune???[Vb6] Feuille MDI
Recherche librairie C++ pour traitement d'image HELPHELP je recherche le script CGI (GWo_ANNURECHERCHE)
[Vb6] Objet ToolBartechniques pour mettre en cache les résultats d'une requete SQL en ASP
[VB6] créer un menu contextuel[VB6] clique droit du mulot
Base SQL[Transact SQL] Doublons à l'insertion...
Plus de sujets relatifs à : [VB6] les guillemets dans une recherche ... avec SQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR