comment rechercher un champ dans une base de données access [VB6] - VB/VBA/VBS - Programmation
Marsh Posté le 12-05-2002 à 13:24:41
De toute façon, la requête sera la suivante, dans le cas ou tu stockes le titre de ton jeu dans le champ "TitreJeu" de ta bdd :
SQL="SELECT * FROM Jeux WHERE TitreJeu LIKE '*" & TextBox1.Text & "*'"
[jfdsdjhfuetppo]--Message édité par Harkonnen le 12-05-2002 à 13:25:35--[/jfdsdjhfuetppo]
Marsh Posté le 12-05-2002 à 19:35:58
Ça marche pas... la description de mon jeu ne s'affiche pas,c'est comme si il ne voyais pas que je fait une recherche.
voici ce que j'ai écris :
Private Sub cmdrechercher_Click()
frmprincipale.adoliste.RecordSource = "SELECT * FROM tblliste WHERE fldtitre LIKE '*" & txttitrerech.Text & "*'"
frmprincipale.show
End Sub
ps : j'ai deux feuille frmrechercher (ou je fait la recherche)et frmprincipale ( ou les infos du jeu sont afficher)
Marsh Posté le 12-05-2002 à 21:03:55
"adoliste", c'est quoi comme controle ?
V-Ro> "passion : informatique" selon ton profil ! C'est plutot rare pour une fille, surtout quand la passion est la prog
Bienvenue dans ce forum, en espérant que tu posteras souvent
Qui a dit que j'étais en chaleur
[jfdsdjhfuetppo]--Message édité par Harkonnen le 12-05-2002 à 21:08:42--[/jfdsdjhfuetppo]
Marsh Posté le 12-05-2002 à 23:11:19
adoliste c mon controle ADO
merci pour le mot de bienvenue
Marsh Posté le 12-05-2002 à 23:33:58
Tu as déja une erreur :
1 - Toujours faire un refresh de ton controle après avoir initialisé sa RecordSource :
Citation : Private Sub cmdrechercher_Click() |
Ensuite, dans quoi affiches tu tes données ? Le controle ADO ne te permet de gérer que la connection à la base, et pas de les afficher. Tu dois pour ceci ajouter un controle à ta form pour afficher tes données.
Enfin, la ConnectionString de ton contrôle est elle correcte ? Utilises tu le bon Provider (Access 2000 = Microsoft Jet 4.0)
Exemple de code qui utilise un controle ADO, et qui affiche le nom du jeu dans un TextBox (Text1). Je suppose que tu utilises une base Access 2000:
Private Sub Form_Load()
Dim Chemin As String
Path = "C:\Jeux.mdb"
With Adoliste
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Persist Security Info=False;" & _
"Data Source=" & Chemin & _
"; Mode=Read|Write"
.RecordSource = "SELECT fldtitre FROM tblliste WHERE fldtitre LIKE '*" & txttitrerech.Text & "*'"
.Refresh
End With
With Text1
.DataField = "fldtitre"
Set .DataSource = adoliste
End With
End Sub
J'ai pondu ce code à l'arrache sans tester, mais normalement le nom du jeu devrait apparaitre dans le TextBox.
A+
[jfdsdjhfuetppo]--Message édité par Harkonnen le 12-05-2002 à 23:34:59--[/jfdsdjhfuetppo]
Marsh Posté le 13-05-2002 à 01:34:11
J'utilise access 97 ...
voici ce que jai compris et essayer
Private Sub cmdrechercher_Click()
frmprincipale.adoliste.RecordSource = _
"SELECT * FROM tblliste WHERE fldtitre LIKE '*" & txttitrerech.Text & "*'"
frmprincipale.adoliste.Refresh
With txttitrerech
.DataField = "fldtitre"
Set .DataSource = frmprincipale.adoliste
End With
frmprincipale.Show
End Sub
resultat :
il y a des case blanche dans mes label
(les informations du jeu sont afficher dans des labels sur la feuille frmprincipale ... )
bye
Marsh Posté le 13-05-2002 à 18:19:40
Citation : LIKE '*" & TextBox1.Text & "*'" |
les étoiles je vois pas trop a koi ca sert
si tu veux un caractere generique pour ta recherche, c %
Marsh Posté le 13-05-2002 à 18:24:48
Si tu utilises Access 97, alors le provider est "Microsoft.Jet.OLEDB.3.5".
As tu essayé l'exemple que je t'ai fourni ? Dans cet exemple, remplace "Microsoft.Jet.OLEDB.4.0" par "Microsoft.Jet.OLEDB.3.5"
La propriété ConnectionString est très importante, sinon tu ne pourras pas te connecter à ta base.
Essaye l'exemple que je t'ai donné, remplace la variable Chemin par le chemin d'accès à ta base. Normalement, tout devrait fonctionner sans pb. La seule raison qui fait que ça ne fonctionne pas est que ton contrôle ADO est mal configuré.
HappyHarry> j'ai tjs mis des "*" et ça a toujours marché. Il est possible que seul Jet n'accepte ces jokers.
Marsh Posté le 14-05-2002 à 01:59:45
ok ok
pas de chicane les gars chu pas la pour jouer la maman
lol
merci du coup de main je t'en reparle
bye
Marsh Posté le 12-05-2002 à 00:29:52
Salut,
J'essaye de créer une petite aplication vb qui permet de gerer une liste de jeux avec access. je n'arrive pas a rechercher un champ.La personne doit entrer le titre du jeux dans une textbox et c'est avec son contenu que je doit faire la recherche .
Ps: Je ne suis pas encore habituée aux base de données alors soyer pas trop raide.