Rechercher : dans
Par :

[VB ACCESS] utilisation du like

Dernière réponse le 14 jan 2009 à 20:55:00 Tidodo, le 31 mai 2007 à 15:19:07 
 Signaler ce message aux modérateurs

Bonjour !

voilà un petit soucis de syntaxe. Pouvez me dire comment j'utilise la fonction like SQL dans VB.

Ca doit etre un truc du genre :

ADODC1.RecordSource=("Select * From concert Where Date_concert like ' " & TextRechercheDate.Texte & " ' ? ")

Mais cette syntaxe ne marche pas !

Please help me ! C'est assez urgent !

Configuration: Windows XP
Firefox 2.0.0.3

Meilleures réponses pour « [VB ACCESS] utilisation du like » dans :
Bases de données - Utilisation de formulaires VoirUtilisation de formulaires Afin d'exploiter les bases de données, il faut fournir une interface à l'utilisateur lui permettant de visualiser des données en fonction de certains critères. Pour cela il existe un outil : les formulaires. Un formulaire...
Bases de données - Introduction VoirQu'est-ce qu'une base de données ? Une base de données (son abréviation est BD, en anglais DB, database) est une entité dans laquelle il est possible de stocker des données de façon structurée et avec le moins de redondance possible. Ces données...

1

Tidodo, le 3 jun 2007 à 22:50:48

Snif :'( Personne pour m'éclairer ?

Répondre à Tidodo

2

blux, le 4 jun 2007 à 14:11:12

Salut,

c'est quoi qui ne marche pas :

erreur de syntaxe, pas de résultat, résultat incorrect ?
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

3

Tidodo, le 4 jun 2007 à 18:24:15

Erreur de syntaxe

Répondre à Tidodo

4

blux, le 4 jun 2007 à 22:02:03

A quel moment : compilation, exécution ?

En VBA ou VB ?
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

6

Tidodo, le 6 jun 2007 à 15:51:26

Je veux juste la syntaxe SQL sous VB pour l'utilisation du like.

Répondre à Tidodo

7

blux, le 6 jun 2007 à 15:55:41

La syntaxe est la même que tu sois en vb ou vba, c'est du sql avec des caractères joker (? = n'importe quel caractère unitaire, * = chaine de n caractères quelconques), ex :

SELECT TOTO FROM TATA WHERE TITI LIKE "toto*";
SELECT TOTO FROM TATA WHERE TITI LIKE "*toto*";
SELECT TOTO FROM TATA WHERE TITI LIKE "*toto";
SELECT TOTO FROM TATA WHERE TITI LIKE "?toto";
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

8

Flo, le 6 jun 2007 à 15:56:01

Essaie ca, ca devrait marcher : "Select * From concert Where Date_concert like * " & TextRechercheDate.Texte & " ? ")

Après si tu expliquais ce que tu veux faire on pourrait peut etre plus t'aider. j'imagine que TextRecherchedate c'est une textbox.

Répondre à Flo

9

Tidodo, le 6 jun 2007 à 16:03:32

Au fur et à mesure que je tape, je dois avoir des résultats


Private Sub Text1_Change()
Adodc1.RecordSource = "Select * From concert Where Date_concert like * " & Text1.Text & " ? "
Adodc1.Refresh


End Sub


sqlbindparameter not used for all parameter


Tchuss

Répondre à Tidodo

10

blux, le 6 jun 2007 à 16:07:49

Il faut mettre un like *" & Text1.Text & "* ", mais ne pas oublier de rafraichir le code à chaque saisie de caractère...
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

11

Tidodo, le 6 jun 2007 à 16:16:12

"You have an error in your SQL syntaxe near '* m *' at line 1"

Private Sub Text1_Change()
Adodc1.RecordSource = "Select * From concert Where Date_concert like * " & Text1.Text & " * "
Adodc1.Refresh


End Sub

Répondre à Tidodo

12

Flo, le 6 jun 2007 à 16:18:51

Rajoute un ' avant la premiere étoile et aprrès la deuxieme ce qui donne :
like'* " & Text1.Text & " *' "

Répondre à Flo

13

blux, le 6 jun 2007 à 16:19:42

Personne ne t'a dit de mettre un espace entre * et ce que tu cherches :-)

Regarde mes exemples...
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

14

Tidodo, le 6 jun 2007 à 16:20:48

Plus d'erreur, mais aucun resultat :(

Ben corrige moi blux puisque tu es si fort !

Répondre à Tidodo

15

blux, le 6 jun 2007 à 16:28:50

Tu avais mis des simple-quote pour séparer la chaine de caractères, ils ont disparu...

... like '*" & Text1.Text & "*';" 
--
A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

16

Flo, le 6 jun 2007 à 16:28:59

L'erreure a été corrigée lorsque tu as rajouté les apostrophes ? vu qu'il n'y a plus d'erreur on peut pas trop d'aider, soit il n'y avait rien dans ta table qui correspondait à ta recherche soit il y a un probleme autre part.

Répondre à Flo

17

blux, le 6 jun 2007 à 16:31:23

Il y a deux problèmes :

- l'absence de quote/apostrophe pour délimiter la chaine de car. dans la définition de la requête
- les blancs entre * et le texte recherché
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

18

Tidodo, le 6 jun 2007 à 16:41:29

Ma table est pleine je suis pas débutant ... puisque j'ai dit que sous delphi je sais le faire ... c'est juste cette foutu syntaxe la c**

Répondre à Tidodo

19

blux, le 6 jun 2007 à 17:42:31

puisque j'ai dit que sous delphi je sais le faire
Désolé, mais je ne l'ai lu nulle part...

La syntaxe sql/vb est celle donnée en 11.
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

20

Tidodo, le 6 jun 2007 à 20:11:52

A ui lol dsl !
En 11 ca ne marche pas puisque j'ai une erreur LooL !

Répondre à Tidodo

21

blux, le 7 jun 2007 à 09:14:39

Pardon, en 15...
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

22

Flo, le 7 jun 2007 à 09:16:13

En 14 il dit qu'il n'a plus d'erreur donc je vois pas ou est le probleme

Répondre à Flo

23

Tidodo, le 7 jun 2007 à 09:30:59

Voilà les screen : http://www.univers-com.fr/CCM/Screen1.JPG

http://www.univers-com.fr/CCM/Screen2.JPG

Voilà le code :


Adodc1.RecordSource = "Select * From concert Where Ville_concert like '*" & Text1.Text & "*';"
Adodc1.Refresh

Répondre à Tidodo

24

Flo, le 7 jun 2007 à 09:44:17

Ok. donc en fait il n'y a plus d'erreur mais ca ne fonctionne pas..
Pourquoi mets tu ville_concert et pas ville dans ta requete SQL ?

Répondre à Flo