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 :

Sauvegarde base Access


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2010
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2010
    Messages : 347
    Par défaut Sauvegarde base Access
    Bonjour,

    pour finir mon projet, je dois enregistrer des informations dans une base Access (base Access 2007) depuis mon programme vb.net (visual studio 2008).

    Le code :
    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
     
    Imports System.Diagnostics
    Imports System.IO
    Imports System.IO.IOException
    Imports System.Data
    Imports System.Data.OleDb
    Imports System.Data.SqlClient
    Imports Microsoft.VisualBasic
    Imports System.Data.Sql
     
    Public Class FicheCollecte
       Private Sub btn_valider_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_valider.Click
        Try
                        Dim connexion As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\BDDContrat.accdb;Persist Security Info=False")
                        Dim cmd As IDbCommand
                        connexion.Open()
                        'Dim insertion As SqlCommand = New SqlCommand("Insert Into client Values ('','txt_nom.text','txt_prenom.text','txt_raisonSociale.text','txt_adresse.text','txt_commune.text','txt_codePostal.text', 'txt_telFixe.text','txt_telPort.text','txt_mail.text', 'txt_interlocuteur.text')")
                        cmd.CommandText = "Insert Into client Values ('','txt_nom.text','txt_prenom.text','txt_raisonSociale.text','txt_adresse.text','txt_commune.text','txt_codePostal.text', 'txt_telFixe.text','txt_telPort.text','txt_mail.text', 'txt_interlocuteur.text')"
                        If connexion.State = ConnectionState.Open Then
                            cmd.ExecuteNonQuery()
                        End If
                    Catch ex As Exception
                        MsgBox(ex.ToString)
                    End Try
     
    End sub
    Le script plante au niveau de connexion.open.
    Le message d'erreur :
    System.InvalidOperationException {"Le fournisseur 'Microsoft.ACE.OLEDB.12.0' n'est pas inscrit sur l'ordinateur local."}
    Donc ma question => faut-il rajouter des éléments, installer le fournisseur ACE () ?

    J'ai du louper un truc en me renseignant sur divers sujets :/

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 23
    Par défaut
    Bonjour,

    essaye avec ..."Provider=Microsoft.Jet.OLEDB.4.0;...

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2010
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2010
    Messages : 347
    Par défaut
    Même problème, il a changer le libellé de l'erreur par Jet.OleDB mais sinon c'est la même :/


    Edit : J'ai réussi à passer cette difficulté. J'ai du recompiler le projet en x86 étant donné que Jet.OleDB ne supporte pas le x64 :/

    Maintenant j'ai un problème de référence d'objet sur cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    cmd.CommandText = "Insert Into client Values ('','txt_nom.text','txt_prenom.text','txt_raisonSociale.text','txt_adresse.text','txt_commune.text','txt_codePostal.text', 'txt_telFixe.text','txt_telPort.text','txt_mail.text', 'txt_interlocuteur.text')"
    J'utilise ça que j'ai trouvé sur un autre sujet mais j'ai un doute la dessus
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim cmd As IDbCommand
    IDbCommand c'est quoi ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 23
    Par défaut
    Et tu as bien access d'installer sur ton poste? Sinon essaye en installant ce Runtime : http://www.microsoft.com/downloads/f...b-84b371ede16d

  5. #5
    Membre éclairé Avatar de lukeni2
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Finance

    Informations forums :
    Inscription : Février 2008
    Messages : 92
    Par défaut
    Pouvez vous donnez le message d'erreur.

  6. #6
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2010
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2010
    Messages : 347
    Par défaut
    La référence d'objet n'est pas définie à une instance d'un objet.
    et ce sur la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    cmd.CommandText = "Insert Into client Values ('','txt_nom.text','txt_prenom.text','txt_raisonSociale.text','txt_adresse.text','txt_commune.text','txt_codePostal.text', 'txt_telFixe.text','txt_telPort.text','txt_mail.text', 'txt_interlocuteur.text')"
    donc je pense que ça vient du cmd que j'ai déclaré comme tel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim cmd As IDbCommand
    en reprenant cette déclaration d'un autre sujet sur développez.com
    Seulement, je ne sais pas ce qu'est IDbCommand, donc je suppose que l'erreur vient de la.

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

Discussions similaires

  1. [AC-2010] Sauvegarde base Access 2010 avec scrip powershell
    Par patito1975 dans le forum Access
    Réponses: 5
    Dernier message: 03/03/2014, 13h00
  2. [Débutant] Sauvegarder une image ds base Access sous vb.net (vb 2010)
    Par warzet dans le forum VB.NET
    Réponses: 2
    Dernier message: 19/11/2011, 13h41
  3. [AC-2003] Copie de sauvegarde d'une base Access via VBA
    Par CC25 dans le forum VBA Access
    Réponses: 4
    Dernier message: 22/04/2010, 20h06
  4. access-sauvegarde de bases access
    Par VBBBA dans le forum Access
    Réponses: 6
    Dernier message: 30/06/2006, 22h15
  5. [VB6] [ADO] Like sur base Access
    Par dlpxlid dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 24/01/2003, 11h03

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