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 :

Récupérer numéro automatique dans access


Sujet :

VB.NET

  1. #1
    Membre habitué
    Homme Profil pro
    Informaticien
    Inscrit en
    Août 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien
    Secteur : Service public

    Informations forums :
    Inscription : Août 2007
    Messages : 176
    Points : 158
    Points
    158
    Par défaut Récupérer numéro automatique dans access
    Bonjour à toutes et tous,

    Mon environnement est le suivant vb.net 2008 express et base de données en access 2003.

    J'ai dans mon programme vb.net le module suivant:
    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
    Imports System.Data
    Imports System.Data.OleDb
     
    Module dbaccess
        Dim MyConnection As New System.Data.OleDb.OleDbConnection()
        Dim MyDataSet As DataSet = New DataSet()
     
        'Procédure de connexion à une database access
        Public Sub Connection(ByVal namedb As String) ' As Boolean
     
            Try
                MyConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & namedb
            'namedb contient le chemin d'accès à la bd access 2003
                MyConnection.Open()
     
            Catch ex As Exception
                MessageBox.Show("Database connection is impossible! " & ex.Message)
            End Try
        End Sub
     
        'Déconnexion de la base
        Public Sub Deconnection()
            Try
                MyConnection.Close()
            Catch ex As Exception
                MessageBox.Show("Database connection is impossible! " & ex.Message)
            End Try
        End Sub
     
        Public Function Access(ByVal RequeteSQL As String, ByVal Table As String) As DataSet
            Dim MyAdapter As OleDbDataAdapter= New OleDbDataAdapter(RequeteSQL, MyConnection)
     
            Try
                MyDataSet.Clear()
                MyAdapter.Fill(MyDataSet, Table)
                'A ce niveau les données résultantes de la requete se trouvent dans => MyDataSet.Tables(0)
            Catch ex As Exception
                MessageBox.Show("Database connection is impossible! " & ex.Message)
            End Try
            Return MyDataSet
        End Function
    End Module
    Ensuite, sur l'évènement click d'un bouton, je réalise ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click
            Dim MyDataset As DataSet
     
            MyDataset = Access("INSERT INTO CONTRACT (CUSTOMERNAME) VALUES ('a')", "CONTRACT")
     
        End Sub
    J'aimerais récupérer le numéro automatique créer par access 2003 lors du INSERT.
    J'ai vu pas mal de fois que l'on parlais de faire 'SELECT @@IDENTITY' mais je ne suis pas certain que cela fonctionne avec access. J'ai d'ailleurs fait plusieurs essais mais sans succès.
    Quelqu'un pourrait-il m'aider svp? Merci.

  2. #2
    Membre habitué
    Homme Profil pro
    Informaticien
    Inscrit en
    Août 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien
    Secteur : Service public

    Informations forums :
    Inscription : Août 2007
    Messages : 176
    Points : 158
    Points
    158
    Par défaut
    Bon, j'ai trouvé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                Dim ComRecup As New OleDbCommand("SELECT @@IDENTITY", MyConnection)
                MsgBox(CType(ComRecup.ExecuteScalar, Integer).ToString)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2002] Filtrage automatique dans Access 2002
    Par sergio_gr66 dans le forum Access
    Réponses: 6
    Dernier message: 09/10/2011, 15h18
  2. [A-07] Calcul automatique dans Access
    Par JMMEDIA dans le forum Modélisation
    Réponses: 7
    Dernier message: 14/11/2008, 21h39
  3. [Table]augmenter le nombre de numéro automatique dans access
    Par cedric_balme dans le forum Modélisation
    Réponses: 2
    Dernier message: 27/03/2007, 08h12
  4. Numéro automatique dans access
    Par Hbenne dans le forum Access
    Réponses: 1
    Dernier message: 17/03/2006, 17h51
  5. Import de fichier CSV automatique dans Access
    Par Jmar dans le forum Access
    Réponses: 4
    Dernier message: 20/01/2006, 10h48

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