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

Dotnet Discussion :

Erreur création base Access [Débutant]


Sujet :

Dotnet

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Août 2011
    Messages : 103
    Points : 49
    Points
    49
    Par défaut Erreur création base Access
    Bonjour, je suis en train de mettre en place une architecture n-tiers avec visual studio 2012.

    J'ai donc un projet IHM, un projet DAL + 2 autres projet

    Je voudrais que au premier lancement de mon application une base Access se crée mais j'ai un message d'erreur qui indique "Erreur création base, classe non enregistrée"

    IHM
    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
     
    Imports DAL
     
    Public Class Accueil
     
        'objet Connexion
        Private connect As New Connexion
     
        Private Sub Accueil_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Try
                If connect.verif_chemin() = False Then
                    'MessageBox.Show("azerty")
                    connect.Create_base("a", "z")
                End If
            Catch ex As Exception
                MessageBox.Show(ex.Message, ".:: ERREUR", MessageBoxButtons.OK, MessageBoxIcon.Error)
            End Try
     
        End Sub
    End Class
    DAL
    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
     
    ' Ajout référence : Microsoft ADO Ext. 2.8 for DDL and Security
    Imports ADOX
     
    Public Class Connexion
     
    #Region "Attributs"
     
        'chemin de la base
        Private chemin As String = My.Application.Info.DirectoryPath & "\DataBase.accdb"
        'connexion à la BD
        Private cnx As OleDb.OleDbConnection = Nothing
        'Attribut chaine de connection (fournisseur d'accès aux données + chemin)
        Private cnxstr As String = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & chemin & ";"
     
    #End Region
     
    #Region "Fonctions"
     
        ' test existance base
        Public Function verif_chemin() As Boolean
            Return System.IO.File.Exists(chemin)
        End Function
     
        'créer base
        Public Sub Create_base(pseudo As String, mdp As String)
            Try
                Dim Cat As New Catalog
                Dim chaine_cnx As String
                chaine_cnx = cnxstr & "User ID=" & pseudo & ";Password=" & mdp & ";"
                Cat.Create(chaine_cnx)
            Catch ex As Exception
                Throw New Exception("Erreur création base" & Environment.NewLine & ex.Message)
            End Try
        End Sub
    #End Region
     
    End Class
    De plus j'ai déjà réalisé ce genre d'applications avec une visual basic 2010 et je n'avais pas eu de problème particulier.

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Août 2011
    Messages : 103
    Points : 49
    Points
    49
    Par défaut erreur création base access
    En faite, j'ai trouvé la solution grâce aux cours de Plasserre :
    http://plasserre.developpez.com/cour...ees3#LXVII-G-1

    De plus, je met mon code si sa peux aider :
    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
     
    'Ajout référence COM : Microsoft DAO 3.6 Library 5
    Imports DAO
    Imports DAO.LanguageConstants
     
    Public Class Connexion
     
    #Region "Attributs"
     
        'chemin de la base
        Private chemin As String = My.Application.Info.DirectoryPath & "\DataBase.accdb"
     
    #End Region
     
    #Region "Fonctions"
     
        ' test existance base
        Public Function verif_chemin() As Boolean
            Return System.IO.File.Exists(chemin)
        End Function
     
        'créer base
        Public Sub Create_base(pseudo As String, mdp As String)
            Try
                Dim dbe As New DBEngine
     
                Dim db As Database
                db = dbe.CreateDatabase(chemin, dbLangGeneral)
            Catch ex As Exception
                Throw New Exception("Erreur création base" & Environment.NewLine & ex.Message)
            End Try
        End Sub
    #End Region
    End Class
    Par contre, je n'ai pas trouvé si je voudrai créer un base protégé par un mot de passe ? si quelqu'un à un exemple ou un lien ? merci

  3. #3
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    db = dbe.CreateDatabase(chemin, dbLangGeneral & ";pwd=Password")
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Août 2011
    Messages : 103
    Points : 49
    Points
    49
    Par défaut erreur création base access
    Merci Graffito pour ton aide cela marche nikel mais on m'a dit que utilisé DAO était obsolète qu'il fallait utilisé ADO.net mais cela me fait revenir à ma première question où j'utilise ADO et cela me provoque une erreur.

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations forums :
    Inscription : Août 2011
    Messages : 103
    Points : 49
    Points
    49
    Par défaut erreur création base access
    En faite ma chaine de connexion n'était pas bonne maintenant sa marche je met l'info pour les futurs chercheurs. J'utilise Visual Studio 2012 & Access 2010.

    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
     
    'Ajout référence COM : Microsoft DAO 3.6 Library 5
    Imports ADOX
     
    Public Class Connexion
     
    #Region "Attributs"
     
        'chemin de la base
        Private chemin As String = My.Application.Info.DirectoryPath & "\DataBase.accdb"
        'connexion à la BD
        Private cnx As OleDb.OleDbConnection = Nothing
        'Attribut chaine de connection (fournisseur d'accès aux données + chemin)
        Private cnxstr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & chemin
     
    #End Region
     
    #Region "Fonctions"
        ' test existance base
        Public Function verif_chemin() As Boolean
            Return System.IO.File.Exists(chemin)
        End Function
     
        'créer base
        Public Sub Create_base(pseudo As String, mdp As String)
            Try
                Dim cat As New Catalog
                cat.Create(cnxstr)
            Catch ex As Exception
                Throw New Exception("Erreur création base" & Environment.NewLine & ex.Message)
            End Try
        End Sub
    #End Region
    End Class

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

Discussions similaires

  1. [Débutant] Test création base ACCESS
    Par thomasaurelien dans le forum VB.NET
    Réponses: 2
    Dernier message: 10/08/2011, 16h23
  2. Création Base Access
    Par frogs dans le forum VBA Access
    Réponses: 2
    Dernier message: 02/10/2008, 15h17
  3. Création base access
    Par manpel dans le forum Access
    Réponses: 1
    Dernier message: 29/08/2007, 17h53
  4. VBScript : création base Access pour import fichier XML
    Par abertaud dans le forum VBA Access
    Réponses: 3
    Dernier message: 02/04/2007, 14h35
  5. VBScript : création base Access pour import fichier XML
    Par abertaud dans le forum VBScript
    Réponses: 1
    Dernier message: 02/04/2007, 14h34

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