begin process at 2012 02 12 18:04:42
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de Donnees

 > GÉRER SA BASE DE DONNÉES ACCESS EN TOUTE SIMPLICITÉ QUELQUE SOIT LE NOMBRE DE CHAMPS...

GÉRER SA BASE DE DONNÉES ACCESS EN TOUTE SIMPLICITÉ QUELQUE SOIT LE NOMBRE DE CHAMPS...


 Information sur la source

Note :
10 / 10 - par 3 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de Donnees Source .NET ( DotNet ) Classé sous :base, donnees, access, gestion, gerer Niveau :Initié Date de création :29/05/2007 Date de mise à jour :30/05/2007 14:34:07 Vu / téléchargé :22 339 / 3 189

Auteur : fdiedler2000

Ecrire un message privé
Site perso
Commentaire sur cette source (30)
Ajouter un commentaire et/ou une note

 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

  • '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
'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 !

++

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

29 mai 2007 22:44:45 :
orthographe
29 mai 2007 23:37:28 :
ajout commentaires
30 mai 2007 14:34:08 :
Mise à jour ====> Maintenant il y a deux classes qui s'adaptent parfaitement au cas par cas... Voir les explications

 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) CRÉER UN FICHIER SITEMAP POUR GOOGLE EN TOUTE SIMPLICITÉ
Source avec Zip Source avec une capture Source .NET (Dotnet) JEU D'ÉNIGME CODÉ EN .NET 2005 (VERSION 2)
Source avec Zip Source avec une capture Source .NET (Dotnet) JEU D'ÉNIGME (VB.NET 2005)
Source avec Zip Source avec une capture Source .NET (Dotnet) CRÉER FACILEMENT UNE ARBORESCENCE POUR VOS PAGES HTML AVEC U...
Source avec Zip Source .NET (Dotnet) LIBRAIRIE QUI RASSEMBLE TOUTES LES FONCTIONS UTILISES POUR P...

 Sources de la même categorie

Source avec Zip Source avec une capture BIEN ADMINISTRER LES ETUDIANTS ET LEURS CÔTES par okosa
Source avec Zip VBA EXEL GESTION DE PERSONEL NOUVEAU CONTRAT DE TRAVAI par oudlarbi
Source avec Zip Source avec une capture CREATION D'UN OBJET D'ACCÈS AUX DONNÉES par okosa
Source avec Zip Source .NET (Dotnet) MISAHORAIRE par MdelM
Source avec Zip Source avec une capture BASEDEDONNEES,GESTIONDEMALADES,DATABASSE par shadkitenge

 Sources en rapport avec celle ci

Source avec Zip Source .NET (Dotnet) UTILISER ADO.NET COMME EN ADO (RECORDSET) par bouv
Source avec Zip Source avec une capture Source .NET (Dotnet) GESTION DE BASE DE DONNÉE ACCESS COMPLÈTE AVEC ORIENTÉ OBJET par ThoT49
Source avec Zip Source .NET (Dotnet) GESTION D'UN CONCOURS DE PÊCHE SANS BASE DE DONNÉES par theboogymaster
Source avec Zip UNNE APPLICATION DE GESTION DE BASE DE DONNÉE ACCESS SANS DA... par fnicha1
Source avec Zip Source avec une capture Source .NET (Dotnet) OUVRIR ET MODIFIER UNE BASE ACCESS AVEC ADO.NET [ COCKTAIL E... par sLaYeR31DevCpp

Commentaires et avis

Commentaire de fdiedler2000 le 31/05/2007 22:00:20

C'est bizarre j'avais mis a jour mon code et ca n'a pas été mis a jour...

Commentaire de fdiedler2000 le 01/06/2007 18:52:53

Pas de commentaires ? :(

Commentaire de fdiedler2000 le 04/06/2007 19:07:29

AU moins ma source à l'air de plaire :)

Commentaire de bobeche le 06/06/2007 12:18:42

je dois adapter un code vb6 EN .NET
JE CHERCHE DES CODES SOURCES QUI PUISSENT M  AIDER A ME CONNECTER ET A GERER MES BASES ACCESS
JE TROUVE TA SOURCE BIEN FAITES
MAIS J AI DU MAL A L UTILISER
COMMENT ME CONNECTER A MA BASE
AVANT DE LIRE LA BASE AVEC TES FONCTIONS
MERCI POUR LA REPONSE
BOBECHE

Commentaire de Renfield le 06/06/2007 12:28:30 administrateur CS

merci de ne pas écrire en majuscules

c'est impoli et illisible

Commentaire de fdiedler2000 le 06/06/2007 18:57:35

Pourtant c'est simple, si ta base est deja crée alors tu utilises la classe C_BDD sinon tu utilises la classe C_DD_New et regarde l'exemple !!

Commentaire de Jul_76 le 12/06/2007 14:32:33

Bonjour je suis un utilisateur débutant de VB.Net.
Je voudrais savoir si on peut ajouter ce code dans une form dans laquelle je possède déjà une liaison Oledb avec une table access.
Cette form me permet de faire défiler mes entrées access par l'intermédiaire de "BindingManagerBase = 0 ,  +1 , etc..."
merci d'avance
++

Commentaire de PWM63 le 15/06/2007 12:40:29

FDIEDLER2000, j'ai utilisé ta classe c_bdd pour ajouter des enregistrements dans une base existante.

Utilisation facile + fonctionne parfaitement = 10/10 + surtout merci !

Commentaire de fdiedler2000 le 25/06/2007 10:24:43

JUL_76 ==> Sincerement je ne sais pas mais vous pouvez tester !

PWM63 ==> Merci ca fait plaisir à entendre ^^

Commentaire de farradjs le 31/08/2007 19:34:30

est ce qu votre première classe permet de creer des tables dans une base deja creé parce que je constate une contradition entre :
test As New C_BDD("Principale", 3, Application.StartupPath & "\Birthday.mdb")

et
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

en faite la fonction test.ModifierElement(z, "Age", "15") pour la première classe (C_BDD) me sort une erreur que je connait pas la solution si qlq a pu résoudre ce problème qu'il me soufle la réponse.
en tout les cas c'est deux classes sont superbe.

Commentaire de TokRa14 le 19/06/2008 15:41:32

Bonjour !
Merci pour ce code qui m'aide beaucoup !
Cependant, j'ai une erreur avec vb.net 2008 lors de la fonction Faire_Champs:

    Private Function Faire_Champs(ByVal tab_champs() As String) As String
        Dim resultat As String = ""
        For i As Integer = 0 To UBound(tab_champs) 'liste tous les elements
            If i = UBound(tab_champs) Then 'si c'est le dernier element
                resultat += tab_champs(i).ToString  'syntaxe pour le dernier champs
            Else
                resultat += tab_champs(i).ToString & ", " 'syntaxe pour les champs
            End If
        Next

        Return " (" & resultat & ")"
    End Function

Apparement ça plante au Else et ça me renvois une erreur qui dit:

L'exception System.NullReferenceException n'a pas été gérée
  Message="La référence d'objet n'est pas définie à une instance d'un objet."

avez vous une idée du probleme ?

Commentaire de PWM63 le 20/06/2008 12:10:08

Apparement, ton tab_champs(i) est Null.

Essaye d'encapsuler la condition par celle-ci à peu près comme ca (j'ai pas vérifier la syntaxe) :
if not isnull(tab_champs(i)) then
            If i = UBound(tab_champs) Then 'si c'est le dernier element
                resultat += tab_champs(i).ToString  'syntaxe pour le dernier champs
            Else
                resultat += tab_champs(i).ToString & ", " 'syntaxe pour les champs
            End If
end if

Commentaire de TokRa14 le 20/06/2008 14:04:40 10/10

Coucou !
Merci pour ta réponse, en fait j'ai trouvé le probleme !
C'était mon nombre de champs qui n'était pas correct ! Ce que je comprend pas c'est que la gestion d'erreur ne marche pas et du coup j'avais aucuns message.
J'ai tout remplacer par des msgbox et maintenant ça roule !
En tout cas, super code, facile à comprendre, à manipuler, j'adore !!

PS: Je débute tout juste en VB (.NET) alors la gestion des données, huhu !

Commentaire de fdiedler2000 le 20/06/2008 14:08:50

Salut,
Effectivement il n'y a pas d'erreur mais si ton nombre de champs n'est pas correct alors tu auras des problèmes !

En revanche, tu aurais du recevoir une erreur... As tu bien ajouté l'évent "Erreur" dans ton formulaire ?

Commentaire de TokRa14 le 20/06/2008 18:21:44

Ha oui !!
J'avais peut etre oublié ce détail !
Oups !!
Bon bah en tout cas, j'ai mis des msgbox, et ça marche aussi bien :D

Autre question, est-il possible de mettre à jour plusieurs champs en même temps avec ton code ? Ou dois-je faire appel à ModifierElement() à chaque champs que je veux modifier ?

Merci pour vos réponse !

Commentaire de fdiedler2000 le 20/06/2008 18:58:55

Oui une ligne de code par modification ;)

Commentaire de Gatinho le 16/04/2009 16:14:32

Bonjour les spécialistes, y aurait-il quelqu'un qui pourrait me (supper débutant) donner le code pour créer une table qui contiendrait la structure d'une autre table ? (access 2003)
Un grand merci d'avance.

Commentaire de PWM63 le 16/04/2009 22:07:12

Bonjour Gatinho,

La classe C_BDD_New te montre comment créer une table via 1 requête Create Table.

Mais apparemment, il n'y a rien ici qui puisse permettre de connaître la structure d'une table existante.

Je peux donc te proposer de regarder ces 2 sources :
http://www.vbfrance.com/codes/CONNAITRE-CERTAINES-ENUMERATIONS-OLEDBSCHEMAGUID-NET_43174.aspx
http://www.vbfrance.com/codes/CONNAITRE-DATATYPE-ADODB-COMPATIBLES-AVEC-TYPES-DONNEES-ACCESS_43088.aspx

La 1ère source te permet de trouver tes tables et tes champs existants.

Et la 2e, de pouvoir créer des tables en trouvant les bons types de données pour tes champs.

Bon courage pour la suite.

Commentaire de Gatinho le 17/04/2009 11:46:09

Bonjour PWM63,
Merci beaucoups, j'y vais

Commentaire de Adn56 le 26/05/2009 09:47:47

salut, je commence à m'intéresser au bdd, et je test ta source. elle me parait idéale pour se lancer avec les bdd.
Mais voila, probléme (surrement débile), mais vb me lance cette erreur dés l'insertion de ta classe :
Dim FicMdb As New ADOX.Catalog "type ADOX.Catalog non défini"
what the fuck ? (ps c'est vb2008)
merci pour le débug ^^

Commentaire de PWM63 le 27/05/2009 15:39:48

Projet
Ajouter une référence...
Onglet COM
Microsoft ADO 2.8 for DDL and Security
OK

PS : la question en anglais est superflue

Commentaire de Adn56 le 27/05/2009 16:38:12

Ok j'essaye toutal, merci pour ta rapidité modulation à largueur d'impulsion63 ^^ ;)
je note aprés hein, car j'aurais d'autres questions surrement
Encore merci Gatinho pour les comms du code et les noms explicites des vars !
ça fait plaisir à lire.
++

Commentaire de PWM63 le 27/05/2009 18:46:24

De rien Acide désoxyribonucléique56, mais je n'ai rien à voir avec la modulation à largeur d'impulsion.

Commentaire de Adn56 le 27/05/2009 19:20:05

lol alors c'est quoi PWM ?
(pourissage de topic =on)

Commentaire de Gatinho le 27/05/2009 23:22:02

Merci beaucoups

Commentaire de PCPT le 27/05/2009 23:37:38 administrateur CS

pourrissage de topic =off, MERCI

Commentaire de Adn56 le 28/05/2009 08:44:07

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 ?

Commentaire de PWM63 le 29/05/2009 10:41:08

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.

Commentaire de Adn56 le 10/06/2009 09:26:34

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.

Commentaire de Adn56 le 10/06/2009 09:28:04

Ps version du fichier au cas ou :
2.81.1132.0 (xpsp.080413-0852)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Gerer les formulaires et sous formulaires d'une base de donnees access [ par youandme2005africa ] Bonsoir,Suis nouveau sur ce site si génial où apparemment on peux tout trouver même pour les débutants.Je suis entrain de créer une base de données ac creation et gestion d'une base de donnees sous sql server [ par oumzo525 ] slt tout quelqu'un peut me donner une idée sur les etapes qu'il faut faire pour creer une application ki va permettre une gestion automatisée d'une bo Quelle base de donnees choisir ? [ par jothecracker ] Bonjour,   Je suis actuellement entrain de travailler sur un projet de base de donnée, le principe est de récupérer quelques 6500 fichiers CSV et de l interogation d'une base de donnees Access [ par nOOr28 ] Force ET Gloire[^^sad2] Bonjour tout le monde je suis un debutant en Vb.net.je viens de creer une base de donnees access avec une seule table:client i VB 2008 express [ par hamza_esc ] Bonjour tout le mondeVoila, je suis nouveau et j'apprécie beaucoup votre sens d'entraideJ'ai un probléme et j'arrive pas à le résoudre méme si j'ai lu access avec base de donnees+formulaire [ par express2008 ] salut tous le monde voila j'ai creer une base de donnees avec access 2007 + formulaire je voudrais savoir comment creer un petit programme avec VB (mo gestion d'erreur avec base access [ par MANURELAIS ] Salut à tous,je me lance dans le code avec base de donnée.Ce que je ne sais pas faire pour l'heure c'est de gerer les erreurs:A l'aide de VB2005 je ra VB2008 et Access [ par faycalche ] salut à tous,Je suis debutant en VB, j'ai creé une base de donnees access et des interfaces dans projet  VB(j'ai utilisé Microsoft Visual Basic 2008 E aide [ par tranca11 ] slt tou l monde .  je suis un étudiant en informatique de gestion je suis entrain de faire un projet de  fin d étude .( une application de gestion d a


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,154 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales