Gérer sa base de données access en toute simplicité quelque soit le nombre de champs...

Soyez le premier à donner votre avis sur cette source.

Vue 26 260 fois - Téléchargée 3 600 fois

Description

Bonjour à tous,

J'ai créer ces deux classes dans le but de simplifier la gestion d'une basse de donnée access.

1ere classe ====> Si votre base de données est deja créée ainsi que votre table, utiliser la classe C_BDD
2eme classe ====> Si votre base de données n'est pas créée alors la classe C_BDD_New est pour vous !

Fonctions implementées dans la 1ere classe :

- Parametrage en fonction de sa base de donnée (nombre de champs et de valeurs)
- Supprimer un element
- Inserer un element
- Update un element
- Supprimer tous les elements
- Selectionner un element particulier
- Verifie les doublons (lors des requetes insert et update)
- Gestions de quelques erreurs

Fonctions implementées dans la 2eme classe :

- Parametrage en fonction de sa base de donnée (nombre de champs et de valeurs)
- Creation de la base
- Creation d'une table spécifique
- Supprimer un element dans une table specifique
- Supprimer tous les elements dans une table specifique
- Supprimer la Base
- Supprimer une table specifique
- Supprimet toutes les tables
- Inserer un element dans une table specifique
- Update un element dans une table specifique
- Selectionner un element particulier dans un table spécifique
- Verifie les doublons (lors des requetes insert et update) dans une table specifique
- Gestions de quelques erreurs

Et oui ces classes s'adaptent à n'importe quelle base de donnée Access (deja créée ou pas) quelque soit le nombre de champs !!

Voir les exemples pour plus d'explications.

Source / Exemple :


'Utiliser cette classe que si votre base Access est deja créée !!!!!
 Private WithEvents test As New C_BDD("Principale", 3, Application.StartupPath & "\Birthday.mdb") 'en argument il faut le nom de la table, la nombre de champs et le chemin d'accès de la table 

    Private Sub az()

        Dim t(2) As String
        t(0) = "Prenom"
        t(1) = "Age"
        t(2) = "Birthday"
        test.CreerChamps(t) 'pour créer les champs Prenom, Age, Birthday

        Dim v(2) As String
        v(0) = "Toto"
        v(1) = "15"
        v(2) = "15/07/88"
        test.AjouterElement(v) 'ajout un elment

        Dim z(2) As String
        z(0) = "Tutu"
        z(1) = "2145"
        z(2) = "14/01/87"
        test.ModifierElement(z, "Age", "15") 'modifie un element

        Ndata = test.SelectionnerTousElements() 'selectionne tous les elements
        Ndata = test.SelectionnerUnElements("Prenom", "toto") 'selectionne l'enregistrement dont le prenom = toto

        test.EffacerTousLesElements() 'efface tous les elements
    End Sub

    Private Sub test_Erreur(ByVal Description As String) Handles test.Erreur
        MsgBox(Description) 'pour la gestion des erreurs
    End Sub

'**********************************
'**********************************

'Utiliser cette classe que si votre base n'existe pas encore !
Private WithEvents test As New C_BDD_New

    Private Sub az()
        Dim t(4) As String 'tableau qui contient les champs
        t(0) = "Prenom"
        t(1) = "Age"
        t(2) = "Birthday"
        t(3) = "Cool"
        t(4) = "Raoulke"

        test.SupprimerBase(Application.StartupPath & "\Birthday1.mdb") 'supprime la base si elle existe
        test.CreerBase(Application.StartupPath & "\Birthday1.mdb") 'crée la base de donnée
        test.CreerTable("Salut", t)  'pour créer les champs Prenom, Age, Birthday, Coll et Raeoulke
        test.CreerTable("Bonsoir", t)
        test.CreerTable("Aurevoir", t)

        Dim v(4) As String
        v(0) = "Toto"
        v(1) = "15"
        v(2) = "15/07/88"
        v(3) = "er"
        v(4) = "trtrtrt"

        test.AjouterElement("Salut", v) 'ajout un elment
        test.AjouterElement("Bonsoir", v) 'ajout un elment

        Dim z(4) As String
        z(0) = "Tutu"
        z(1) = "2145"
        z(2) = "14/01/87"
        z(3) = "jhyt"
        z(4) = "oopopo"

        test.ModifierElement("Salut", z, "Age", "15") 'modifie un element dans la table Salut
        test.ModifierElement("Aurevoir", z, "Age", "15") 'modifie un element dans la table Aurevoir

        Ndata = test.SelectionnerTousElements("Salut") 'selectionne tous les elements de la table Salut
        Ndata = test.SelectionnerUnElements("Aurevoir", "Prenom", "toto") 'selectionne l'enregistrement dont le prenom = toto dans la talbe Aurevoir

        test.EffacerTousLesElements("Salut") 'efface tous les elements de la table Salut
        test.SupprimerToutesBases()
    End Sub
    Private Sub test_Erreur(ByVal Description As String) Handles test.Erreur
        MsgBox(Description) 'pour la gestion des erreurs
    End Sub

Conclusion :


Voila pas de bugs connus.

J'attends vos commentaires et critiques constructives !

++

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Adn56
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Statut
Membre
Dernière intervention
28 septembre 2013
1 -
Ps version du fichier au cas ou :
2.81.1132.0 (xpsp.080413-0852)
Adn56
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Statut
Membre
Dernière intervention
28 septembre 2013
1 -
Ok je l'ai trouvé, dsl pour la réponse tardive mais j'ai un pti soucis de santé.
Donc je fait tout comme tu le dis, et tadam :
"Une référence à 'C:\Program Files\Fichiers Communs\System\ado\msADOX.dll
' n'a pas pu être ajoutée, assurer vous que le fichier est accessible et qu'il s'agit d'un assembly ou d'un composant Com valide!"
Grrr là cela commence à saouler méchament ! si tu vois autres choses à faire, merci pour ta patience.
PWM63
Messages postés
127
Date d'inscription
lundi 11 octobre 2004
Statut
Membre
Dernière intervention
18 mai 2016
-
Projet
Ajouter une référence...
Onglet Parcourir
C:\Program Files\Fichiers Communs\System\ado\msADOX.dll
OK

Si tu ne l'as pas dans ce répertoire, cherche la DLL sur ton disque dur, ou à défaut, essaie de la trouver sur internet.
Adn56
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Statut
Membre
Dernière intervention
28 septembre 2013
1 -
S'était pour rire PCPT ^^
Bon revenons au sujet.
J'ai ai trouvé DEUX qui se ressemble :
ActiveX Data Object 2.8 library et ActiveX Data Object recordset 2.8 library
aucune trace de activex data object (ou ADO) 2.8 for DLL and security.
Ton avis PWM63 ?
PCPT
Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
26 -
pourrissage de topic =off, MERCI

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.