Sélection de données dans une base Access

cs_spookie Messages postés 5 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 10 août 2013 - Modifié par NHenry le 10/08/2013 à 13:37
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 - 11 août 2013 à 09:42
Bonjour,

Je suis un débutant et je souhaite avoir un peu d'aide pour un projet de base de données access.

J'ai une Form1
Listbox1
Textbox1

Imports System.Data
Imports System.Data.OleDb


Public Class Form1

   
    Dim MyConnexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data source= C:\Users\Milardi\Documents\Contacts.accdb")
    Dim Mycommand As OleDbCommand = MyConnexion.CreateCommand()

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


        Try
            Mycommand.CommandText = "SELECT NOM FROM CONTACTS"
            MyConnexion.Open()

        Catch ex As OleDbException

            MsgBox(ex.Message)

        End Try

        Dim myReader As OleDbDataReader = Mycommand.ExecuteReader()

        Do While myReader.Read()

            ListBox1.Items.Add(myReader.GetString(0))


        Loop

        myReader.Close()

        MyConnexion.Close()

    End Sub


    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged

     



    End Sub
End Class


Je voudrais afficher les informations liées et restante sur la même table quand je clique sur le nom dans la listbox.

J'espère de j'ai été clair dans mes propos.

Merci d'avance.
--

1 réponse

cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
11 août 2013 à 09:42
Salut
écris une requete parametrée

Private Function GetDetailsContact (ByVal ClientName As String)  as OleDbDataReader
        Dim sql As String = String.Empty
        Dim command As New OleDbCommand(sql, MyConnexion)
        Dim recordset As OleDbDataReader
        recordset = Nothing
        command.CommandText = "SELECT CHAMP1,CHAMP2,ETC   FROM  CONTACTS WHERE NOM = [?] ;"
        command.Parameters.Add("?", OleDbType.BSTR).Value = ClientName
        recordset = command.ExecuteReader()
        return recordset

 End Function

Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 
ListBox1.SelectedIndexChanged

  Dim recordset As OleDbDataReader
  recordset =   GetDetailsContact (DirectCast(sender, ListBox).SelectedItem.ToString)

'ton recordset contient les données à propos de la personne

End Sub


0
Rejoignez-nous