Recherche d'une chaine de caractere dans ma bd

- - Dernière réponse : ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
- 15 juin 2016 à 18:15
Bonjour, A TOUS

J'ai un soucis j'aimerais avoir des suggestions svp

J'ai un champs de ma table qui contient une chaine de caractère par exemples " papa et maman " qui se répète plusieurs fois j’aimerais faire une recherche bien spécifique à partir de "papa" pour que mon datagrid soit remplis de toutes les lignes de ma bd qui contiennent " papa et maman"

besoin de vo sugestion
Afficher la suite 

6 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
Bonjour,
Intéresse-toi alors à l'opérateur Like et utilise-le dans ta requête pour l'expression du critère concernant ce champ.

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Commenter la réponse de ucfoutu
0
Merci
J'ai essayer mais cela ne fonctionne pas je m'explique à nouveau

J'ai une table adherent dans ma bd cette table a un champ appelé nomprenom j'aimerais que pour toutes les lignes de ce champs qui auront la même valeur c'est à dire si il Ya Paul plusieurs fois dans ce champs à partir de ma recherche je puisse remplir mon datagrid de toutes les lignes de ma bd ou le nom Paul se trouve
Commenter la réponse de Baboulade
0
Merci
voici mon code

Dim cmd As OleDb.OleDbCommand
Dim sql As String


conn = New OleDbConnection(connstring)
conn.Open()

sql = "SELECT N°,nom_prenom_adherent,sexe_adherent,jour_naiss_adherent,mois_naiss_adherent,anee_naiss_adherent,profession_adherent,ville_adherent,adresse_adherent,tel_adherent,mobile_adherent,photo_adherent,code_adherent,email_adherent FROM adherrent WHERE nom_prenom_adherent = '" & TextBox12.Text & "' "


cmd = New OleDb.OleDbCommand(sql, conn)
Dim myreader As OleDbDataReader

myreader = cmd.ExecuteReader
Me.DataGridView1.Rows.Clear()
Do While myreader.Read

DataGridView1.Rows.Add(myreader(0), myreader(1), myreader(2), myreader(3), myreader(4), myreader(5), myreader(6), myreader(7), myreader(8), myreader(9), myreader(10), myreader(11), myreader(12))

Loop


cmd.Connection.Close()

conn.Close()
Commenter la réponse de baboulade
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
J'ai essayer mais cela ne fonctionne pas je m'explique à nouveau

1) On avait bien compris.
2) je ne vois nulle part, dans ta requête, l'utilisation de l'opérateur Like appliqué à la clause Where concernant le champ nomprenom !

Pire : je ne vois aucun critère concernant ce champ !

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Commenter la réponse de ucfoutu
0
Merci
j'ai insérer l’opérateur LIKE


Dim cmd As OleDb.OleDbCommand
Dim sql As String


conn = New OleDbConnection(connstring)
conn.Open()

sql = "SELECT N°,nom_prenom_adherent,sexe_adherent,jour_naiss_adherent,mois_naiss_adherent,anee_naiss_adherent,profession_adherent,ville_adherent,adresse_adherent,tel_adherent,mobile_adherent,photo_adherent,code_adherent,email_adherent FROM adherrent WHERE nom_prenom_adherent LIKE ' " & TextBox12.Text & " ' "


cmd = New OleDb.OleDbCommand(sql, conn)
Dim myreader As OleDbDataReader

myreader = cmd.ExecuteReader
Me.DataGridView1.Rows.Clear()
Do While myreader.Read

DataGridView1.Rows.Add(myreader(0), myreader(1), myreader(2), myreader(3), myreader(4), myreader(5), myreader(6), myreader(7), myreader(8), myreader(9), myreader(10), myreader(11), myreader(12))

Loop


cmd.Connection.Close()

conn.Close()
Commenter la réponse de baboulade
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
215
0
Merci
Tel qu'utilisé dans ta requête (sans aucun caractère générique) ton opérateur Like ne fait rien de plus qu'un = !!!!!!
Ouvre s'il te plait MSDN à la rubrique Like.
Commenter la réponse de ucfoutu