IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

VB.net & Access


Sujet :

VB.NET

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut VB.net & Access
    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

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    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.
    --

  2. #2
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    Bonjour,

    Cette méthode de connexion est obsolète il est plutôt conseillé d'utiliser ADODB.

    Un petit cours, par ici:
    http://dotnet.developpez.com/articles/ado1/vbnet/
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

  3. #3
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Bonjour
    tient toi aussi tu es un cs ?
    Comment vas tu ?


    Cette méthode de connexion est obsolète il est plutôt conseillé d'utiliser ADODB.
    ah bon la class OleDbConnection est bien utilisé par vb.net
    msdn

    j'avais posté une response à la meme question posée par le meme demandeur
    dans l'autre cite mais restée sans réplique bon

  4. #4
    Membre averti
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2013
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2013
    Messages : 235
    Points : 359
    Points
    359
    Par défaut
    Salut Shay comment ça va?

    Je devrais marquer ex_cs

    Oui j'ai vu ça... mais pourquoi ils nous ont conseillé d'autres solutions il y a quelques temps alors?

    Comme sur CETTE PAGE ou sur CETTE DISCUSSION?
    Bref je crois que t'as raison on peux l'utiliser.
    Par nature les mots, ils sont flous, c'est une fois alignés qu'ils se précisent.

  5. #5
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Salut

    un petit coup de main
    utilise un dataset
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    Imports System.Data.OleDb
    Public Class Form1
        Private Connection As New OleDbConnection
        Private ObjetDataAdapter As OleDbDataAdapter
        Private ds As New DataSet
     
        Private Sub Initdbase()
            Dim base As String = "provider=microsoft.jet.oledb.4.0;data source= C:\Users\Milardi\Documents\Contacts.accdb"
            Try
                Connection.ConnectionString = base
                Connection.Open()
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            End Try
        End Sub
     
       Private Sub GetALLdata()
            Dim sql As String
            Dim ObjetCommand As New OleDbCommand
            Dim da As OleDb.OleDbDataAdapter
            sql = "SELECT * FROM CONTACTS "
         Try
                ObjetCommand = New OleDbCommand(sql)
                ObjetCommand.Connection() = Connection
                da = New OleDbDataAdapter(ObjetCommand)
                Connection.Close()
                da.Fill(ds, "LES CONTACTS")
            Catch ex As Exception
                MessageBox.Show(ex.Message)
            End Try
     
        End Sub
     
       'ds contient une table nommée "LES CONTACTS"
       '  tu peux lire cette table  par ex mettre tous les noms dans un listbox
       ' si NOM est le champ 1 de la table "LES CONTACTS
     
        Private Sub FillListBox()
            GetALLdata()
            ListBox1.Items.Clear()
            For Each row As DataRow In ds.Tables("LES CONTACTS").Rows
                ListBox1.Items.Add(row.Item(1).ToString)
            Next
        End Sub
     
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            FillListBox()
        End Sub
    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
    'afficher dans un dgv les données 
            Dim line As Integer
            Dim row As DataRow
     
            line = DirectCast(sender, ListBox).SelectedIndex
            row = ds.Tables("CONTACT").Rows(line)
            'row contient tous les données du nom choisi 
            'il  suffit de lire row dans un composant adapté comme un datagridview
            DataGridView1.ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.Sunken
            DataGridView1.Font = New Font("arial", 14, FontStyle.Bold, GraphicsUnit.Pixel)
            DataGridView1.AutoResizeColumns()
            DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing
            DataGridView1.EnableHeadersVisualStyles = False
            DataGridView1.ColumnHeadersDefaultCellStyle.BackColor = Color.PowderBlue
            DataGridView1.Columns.Clear()
            DataGridView1.Rows.Clear()
     
            For col = 0 To ds.Tables("LES CONTACTS").Columns.Count - 1
                DataGridView1.Columns.Add(row(col).ToString, "  ")
                DataGridView1.Rows.Item(0).Cells(col).Value = row(col).ToString
            Next
     
        End Sub
     
    End Class

Discussions similaires

  1. Vb.net et Access
    Par guandal dans le forum VB.NET
    Réponses: 3
    Dernier message: 24/01/2007, 11h56
  2. [.net] vb.net & DB access
    Par olbi dans le forum Accès aux données
    Réponses: 2
    Dernier message: 09/01/2007, 21h02
  3. programmer en vb .net sous access 2003
    Par rideom dans le forum Access
    Réponses: 4
    Dernier message: 20/07/2006, 14h59
  4. [VB.NET] Tables access
    Par kite37 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/07/2006, 07h24
  5. Vb.Net et Access : comment modifier la structure d'une base
    Par hucliez dans le forum Accès aux données
    Réponses: 3
    Dernier message: 09/11/2005, 13h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo