Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Recherche dans une base des données à partir de VB6

2 réponses
Avatar
atout
Slt ! D=E9butant en VB6, comment rechercher une expression d'un textbox
dans une base de donn=E9es ? Merci

2 réponses

Avatar
Jean-marc
>"atout" a écrit dans le message de news:

Slt ! Débutant en VB6, comment rechercher une expression d'un textbox
dans une base de données ? Merci



Hello,

L'exemple suivant suppose que ta base de données s'appelle
"my_base.mdb", qu'elle contient une table nommée
"Table1", et que dans cette table il y a au moins 2
champs: "nom" et "prenom".

Pour le reste, il faut ajouter à ton projet une référence à
"Microsoft DAO 3.6" (Menu Projets/Références)

Copier ce code dans une forme comprenant:
- Un command button nommé "cmdCherche"
- une textBox nommée "txtRecherche"


' 8<-------------------------------------------------------

Option Explicit

Private Sub cmdCherche_Click()
Dim db As Database
Dim rs As Recordset
Dim szSQLtext As String

Set db = OpenDatabase("c:jmmy_base.mdb")

szSQLtext = "SELECT * FROM TABLE1 WHERE nom LIKE '" & _
txtRecherche.Text & "*';"

Set rs = db.OpenRecordset(szSQLtext)
If Not rs.EOF And Not rs.BOF Then
rs.MoveFirst
While Not rs.EOF
Debug.Print rs.Fields("Nom") & "," & rs.Fields("prenom")
rs.MoveNext
Wend
End If
End Sub

' 8<-------------------------------------------------------

Le fonctionnement est ensuite on ne peut plus simple.

Bonne journée!

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
mailto: remove '_no_spam_' ;
FAQ VB: http://faq.vb.free.fr/
Avatar
SAISAS
Bonjour,

juste quelques remarques sur la proposition de jean-marc :

1. utiliser "%" (Standard SQL) au lieu de "*" (pur microsoft) ce qui donne :

szSQLtext = "SELECT * FROM TABLE1 WHERE nom LIKE '%" & _
txtRecherche.Text & "%';"

2. je te suggère aussi de rechercher mot par mot plutôt que toute la chaîne
lorsque tu recherches dans du texte (tu as la fonction split qui est pas mal
pour découper en mots)

A ta disposition.

"Jean-marc" a écrit :

>"atout" a écrit dans le message de news:
>
>Slt ! Débutant en VB6, comment rechercher une expression d'un textbox
>dans une base de données ? Merci

Hello,

L'exemple suivant suppose que ta base de données s'appelle
"my_base.mdb", qu'elle contient une table nommée
"Table1", et que dans cette table il y a au moins 2
champs: "nom" et "prenom".

Pour le reste, il faut ajouter à ton projet une référence à
"Microsoft DAO 3.6" (Menu Projets/Références)

Copier ce code dans une forme comprenant:
- Un command button nommé "cmdCherche"
- une textBox nommée "txtRecherche"


' 8<-------------------------------------------------------

Option Explicit

Private Sub cmdCherche_Click()
Dim db As Database
Dim rs As Recordset
Dim szSQLtext As String

Set db = OpenDatabase("c:jmmy_base.mdb")

szSQLtext = "SELECT * FROM TABLE1 WHERE nom LIKE '" & _
txtRecherche.Text & "*';"

Set rs = db.OpenRecordset(szSQLtext)
If Not rs.EOF And Not rs.BOF Then
rs.MoveFirst
While Not rs.EOF
Debug.Print rs.Fields("Nom") & "," & rs.Fields("prenom")
rs.MoveNext
Wend
End If
End Sub

' 8<-------------------------------------------------------

Le fonctionnement est ensuite on ne peut plus simple.

Bonne journée!

--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
mailto: remove '_no_spam_' ;
FAQ VB: http://faq.vb.free.fr/