Requête SQL avec LIKE
Résolu
gaudian
Messages postés
62
Date d'inscription
Statut
Membre
Dernière intervention
-
gaudian Messages postés 62 Date d'inscription Statut Membre Dernière intervention -
gaudian Messages postés 62 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'ai un petit soucis avec une requête SQL.
Je travaille sous VB et j'interroge une base de données situées sous ACCESS
Je souhaiterais savoir comment faire pour rechercher une partie d'une chaîne de caractères, je m'explique :
je dispose de 2 tables ou il y a des enregistrements (nom, prenom, adresse, etc.)
- ma 1ère table comprend un enregistrement tel que TOTO pour le nom
- ma 2ème table comprend un enregistrement tel que M. TOTO pour le nom (c'est la même personne)
quand j'exécute le code ci-dessous :
il ne me trouve pas M. TOTO à cause du M. pour les monsieur, (j'ai également Mlle. Mme.)
je ne peux pas changer la 2ème table pour ceux qui vont me dire enlève M. ou Mme. ou encore Mlle.
Set DB1 = DBEngine(0)(0)
Set rsNewResponsable = DB1.OpenRecordset("SELECT * FROM PVHT_VH")
Set rsNewResponsable2 = DB1.OpenRecordset("SELECT * FROM PVHT_RESP")
rsNewResponsable.MoveFirst
rsNewResponsable2.MoveFirst
'Pour la table PVHT_RESP
Do Until rsNewResponsable2.EOF
'Si le champ de la table PVHT_RESP correspond
If Trim(lsAncienResponsable) = Trim(rsNewResponsable2.FindFirst.Fields("RESPONSABLE")) Then
rsNewResponsable2.EDIT
rsNewResponsable2.Fields("RESPONS_SITE") = RESPONSABLE.Text
rsNewResponsable2.Update
Exit Do
End If
rsNewResponsable2.MoveNext
Loop
J'ai donc voulu changer ma requête par celle-ci :
Set rsNewResponsable2 = DB1.OpenRecordset("SELECT * FROM PVHT_RESP WHERE RESPONSABLE LIKE & '% lsAncienResponsable% ' & ")
Mais l'application plante car il ne trouve aucun enregistrement, alors que quand j'exécute cette requête directement sur ma base de données, celle-ci fonctionne.
Merci pour votre aide
J'ai un petit soucis avec une requête SQL.
Je travaille sous VB et j'interroge une base de données situées sous ACCESS
Je souhaiterais savoir comment faire pour rechercher une partie d'une chaîne de caractères, je m'explique :
je dispose de 2 tables ou il y a des enregistrements (nom, prenom, adresse, etc.)
- ma 1ère table comprend un enregistrement tel que TOTO pour le nom
- ma 2ème table comprend un enregistrement tel que M. TOTO pour le nom (c'est la même personne)
quand j'exécute le code ci-dessous :
il ne me trouve pas M. TOTO à cause du M. pour les monsieur, (j'ai également Mlle. Mme.)
je ne peux pas changer la 2ème table pour ceux qui vont me dire enlève M. ou Mme. ou encore Mlle.
Set DB1 = DBEngine(0)(0)
Set rsNewResponsable = DB1.OpenRecordset("SELECT * FROM PVHT_VH")
Set rsNewResponsable2 = DB1.OpenRecordset("SELECT * FROM PVHT_RESP")
rsNewResponsable.MoveFirst
rsNewResponsable2.MoveFirst
'Pour la table PVHT_RESP
Do Until rsNewResponsable2.EOF
'Si le champ de la table PVHT_RESP correspond
If Trim(lsAncienResponsable) = Trim(rsNewResponsable2.FindFirst.Fields("RESPONSABLE")) Then
rsNewResponsable2.EDIT
rsNewResponsable2.Fields("RESPONS_SITE") = RESPONSABLE.Text
rsNewResponsable2.Update
Exit Do
End If
rsNewResponsable2.MoveNext
Loop
J'ai donc voulu changer ma requête par celle-ci :
Set rsNewResponsable2 = DB1.OpenRecordset("SELECT * FROM PVHT_RESP WHERE RESPONSABLE LIKE & '% lsAncienResponsable% ' & ")
Mais l'application plante car il ne trouve aucun enregistrement, alors que quand j'exécute cette requête directement sur ma base de données, celle-ci fonctionne.
Merci pour votre aide
A voir également:
- Requête SQL avec LIKE
- Voir like instagram - Guide
- Coco like - Accueil - Réseaux sociaux
- Logiciel sql - Télécharger - Bases de données
- Wawacity like - Accueil - Outils
- Supprimer like instagram - Forum Facebook
6 réponses
Bonjour,
Il me semble que tu t'emmêles un peu dans les ".
Essaie ceci :
Set rsNewResponsable2 = DB1.OpenRecordset("SELECT * FROM PVHT_RESP WHERE RESPONSABLE LIKE '%" & lsAncienResponsable & "%')
Xavier
Il me semble que tu t'emmêles un peu dans les ".
Essaie ceci :
Set rsNewResponsable2 = DB1.OpenRecordset("SELECT * FROM PVHT_RESP WHERE RESPONSABLE LIKE '%" & lsAncienResponsable & "%')
Xavier
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai trouvé il manqué un " a la fin.
Maintenant, il me dit que je n'ai aucun enregistrement en cours
Maintenant, il me dit que je n'ai aucun enregistrement en cours