Vb6 et acces : chaine caractère
Fermé
eagleleader
-
26 nov. 2003 à 13:52
mounaattia Messages postés 41 Date d'inscription vendredi 15 février 2008 Statut Membre Dernière intervention 21 novembre 2009 - 7 mars 2008 à 10:04
mounaattia Messages postés 41 Date d'inscription vendredi 15 février 2008 Statut Membre Dernière intervention 21 novembre 2009 - 7 mars 2008 à 10:04
A voir également:
- Vb6 et acces : chaine caractère
- Vb6 - Télécharger - Divers Utilitaires
- Acces rapide - Guide
- Accès refusé - Guide
- Compte facebook piraté plus d'accès - Guide
- Clé d'accès google - Accueil - Guide confidentialité
5 réponses
deus
Messages postés
93
Date d'inscription
mercredi 20 novembre 2002
Statut
Membre
Dernière intervention
24 mai 2007
91
26 nov. 2003 à 17:52
26 nov. 2003 à 17:52
Moi pour contourner ce problème j'ai crée la focntion suivante:
"
Function PrepareString(Instring)
If Not IsNull(Instring) Then
PrepareString = "'" & Replace(Instring, "'", "' + CHAR(39) + '") & "'"
Else
PrepareString = "Null"
End If
End Function
"
et donc ton code devient :
rs.Open "select info_titre from T_infos where titre = ' " & PrepareString(Form1.Text1.Caption) & " ' ", db, adOpenStatic, adLockOptimistic
Voilà, j'espère que ca t'aide
dEUS
What Jesus can't fix tonight,
The Whisky certainly might.
"
Function PrepareString(Instring)
If Not IsNull(Instring) Then
PrepareString = "'" & Replace(Instring, "'", "' + CHAR(39) + '") & "'"
Else
PrepareString = "Null"
End If
End Function
"
et donc ton code devient :
rs.Open "select info_titre from T_infos where titre = ' " & PrepareString(Form1.Text1.Caption) & " ' ", db, adOpenStatic, adLockOptimistic
Voilà, j'espère que ca t'aide
dEUS
What Jesus can't fix tonight,
The Whisky certainly might.
comment récuperé les information qui se trouve dans une requette sql ave vb6
sql="select nom,code from emp where num=2"
comment utiliser les information trouvé dans nom et code dans la suite de mon prg
merci d'avance
sql="select nom,code from emp where num=2"
comment utiliser les information trouvé dans nom et code dans la suite de mon prg
merci d'avance
eagleleader
Messages postés
4
Date d'inscription
jeudi 28 mars 2002
Statut
Membre
Dernière intervention
3 août 2005
1
17 juil. 2004 à 15:24
17 juil. 2004 à 15:24
Et bien tu dois établir une connexion à la base de données, ensuite c'est simple tu crées ta requete sql :
dim db as Connection
dim rs as Recordset
' connexion à la base de donnees
Set db = New ADODB.Connection
db.CursorLocation = adUseClient
db.Open "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\emp.mdb;" (si elle se trouve dans le meme répertoire que l'application sinon tu dois donner le chemin complet
' création de l'objet recordset
Set RS = New ADODB.Recordset
ensuite tu crées ta requete sql :
RS.Open "select nom,code from emp where num=2", db, adOpenStatic, adLockOptimistic
RS.MoveLast
' affichage des résultats
Text1.Text = RS.Fields("nom")
Text2.Text = RS.Fields("code")
Text1 et 2 sont 2 textbox sur une feuille et elles afficheront les réponses sinon tu peux utiliser n'importe quel objet qui permet d'afficher les résultats.
dim db as Connection
dim rs as Recordset
' connexion à la base de donnees
Set db = New ADODB.Connection
db.CursorLocation = adUseClient
db.Open "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\emp.mdb;" (si elle se trouve dans le meme répertoire que l'application sinon tu dois donner le chemin complet
' création de l'objet recordset
Set RS = New ADODB.Recordset
ensuite tu crées ta requete sql :
RS.Open "select nom,code from emp where num=2", db, adOpenStatic, adLockOptimistic
RS.MoveLast
' affichage des résultats
Text1.Text = RS.Fields("nom")
Text2.Text = RS.Fields("code")
Text1 et 2 sont 2 textbox sur une feuille et elles afficheront les réponses sinon tu peux utiliser n'importe quel objet qui permet d'afficher les résultats.
zied
>
eagleleader
Messages postés
4
Date d'inscription
jeudi 28 mars 2002
Statut
Membre
Dernière intervention
3 août 2005
19 juil. 2004 à 09:54
19 juil. 2004 à 09:54
merci pour votre aide
j'ai un petit prob lors de l'execution un message s'affiche "type de donné incompatible dans l'expression du critére on me sélectionné toute la ligne de ma requette sql
rs.Open "select ORDRE,CODCARTE from EMP where CODEMP=' " & A & " '", db, adOpenStatic, adLockOptimistic
j'ai un petit prob lors de l'execution un message s'affiche "type de donné incompatible dans l'expression du critére on me sélectionné toute la ligne de ma requette sql
rs.Open "select ORDRE,CODCARTE from EMP where CODEMP=' " & A & " '", db, adOpenStatic, adLockOptimistic
RicHamilton
Messages postés
49
Date d'inscription
jeudi 10 mars 2005
Statut
Membre
Dernière intervention
18 juillet 2006
>
zied
17 févr. 2006 à 12:47
17 févr. 2006 à 12:47
Salut,
Eh bien concernant ton pb avec l'apostrophe, Access ne le reconnaît ke par deux apostrophes ''. Donc ce ke tu auras a faire, c'est ceci :
'Fonction ki transforme la quote en double quotes
Function DoubleQuote(str as String) as String
DoubleQuote = Replace(str,"'","''")
End Function
Cette fonction te sera utile lorske tu voudras par exemple enregistrer ou mettre à jour des données :
Insert into ETUDIANT(NumEtud, NomEtud, DateNaiss) VALUES(" & txtNum.text & ",'" & DoubleQuote(txtNom.text) & "',#" & txtDate.text & "#);
Maintenant si tu voudrais par exemple afficher ces memes données dans un autre formulaire tu feras donc :
'Fonction ki transforme les double-quotes en quote
Function Quote(str as String) as String
Quote = Replace(str,"''","'")
End Function
Ensuite par exemple :
Select NumEtud from ETUDIANT Where NomEtud = '" & Quote(txtNom.text) & "';
En ce qui concerne ton 2e pb, vérifie ke le critère de recherche de ta requête a le meme type ke celui du champ dans la base de données.
Eh bien concernant ton pb avec l'apostrophe, Access ne le reconnaît ke par deux apostrophes ''. Donc ce ke tu auras a faire, c'est ceci :
'Fonction ki transforme la quote en double quotes
Function DoubleQuote(str as String) as String
DoubleQuote = Replace(str,"'","''")
End Function
Cette fonction te sera utile lorske tu voudras par exemple enregistrer ou mettre à jour des données :
Insert into ETUDIANT(NumEtud, NomEtud, DateNaiss) VALUES(" & txtNum.text & ",'" & DoubleQuote(txtNom.text) & "',#" & txtDate.text & "#);
Maintenant si tu voudrais par exemple afficher ces memes données dans un autre formulaire tu feras donc :
'Fonction ki transforme les double-quotes en quote
Function Quote(str as String) as String
Quote = Replace(str,"''","'")
End Function
Ensuite par exemple :
Select NumEtud from ETUDIANT Where NomEtud = '" & Quote(txtNom.text) & "';
En ce qui concerne ton 2e pb, vérifie ke le critère de recherche de ta requête a le meme type ke celui du champ dans la base de données.
Salut.
J'ai été confronté à ce problème.
Plusieurs solutions :
=> Changer l'apostrophe par le caractère apostrophe tournée dans l'autre sens.
=> Supprimer les apostrophe et les remplacer par un espace dans ta base.
Cela a faire dans la chaine qui te pose problème. Tu le fais où tu veux, mais avant d'exécuter la requête.
@+
Roulito
J'ai été confronté à ce problème.
Plusieurs solutions :
=> Changer l'apostrophe par le caractère apostrophe tournée dans l'autre sens.
=> Supprimer les apostrophe et les remplacer par un espace dans ta base.
Cela a faire dans la chaine qui te pose problème. Tu le fais où tu veux, mais avant d'exécuter la requête.
@+
Roulito
eagleleader
Messages postés
4
Date d'inscription
jeudi 28 mars 2002
Statut
Membre
Dernière intervention
3 août 2005
1
26 nov. 2003 à 14:07
26 nov. 2003 à 14:07
Le problème étant que je ne peux pas modifier mes bases car elles sont très grosses et non touchables !!! Mais merci quand même.
J'espère qu'il existe une fonction qui permet d'éviter ce problème ou que quelqu'un connaît la solution.
J'espère qu'il existe une fonction qui permet d'éviter ce problème ou que quelqu'un connaît la solution.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mounaattia
Messages postés
41
Date d'inscription
vendredi 15 février 2008
Statut
Membre
Dernière intervention
21 novembre 2009
3
7 mars 2008 à 10:04
7 mars 2008 à 10:04
Bonjour,
Dans mon code je veux extraire le premier caractére d'une chaine de caractére donnée puis de trouver tous les noms qui débuterons par ce caractére dans la base de données access.
SVP je veux le code qui me permet de faire ça.
merci d'avance
Dans mon code je veux extraire le premier caractére d'une chaine de caractére donnée puis de trouver tous les noms qui débuterons par ce caractére dans la base de données access.
SVP je veux le code qui me permet de faire ça.
merci d'avance