Astuces de recherche...
Home
- Accueil & nouveautés
- Les newsgroups VB
- Téléchargements
- L'équipe
- Nous contacter
- Liens
Rubriques
- Toutes les questions
- Affichage & graphismes
- Algorithmique
- API
- Base de registre
- Bases de données
- Contrôles
- Date & heure
- Déploiement
- Divers
- Erreurs & problèmes
- Fichiers & dossiers
- Généralités
- Impression
- Internet & mails
- Math
- Multimédia
- Réseaux
- Structures de données
- Texte & strings
- VB .Net
- VB Script
- VBA
- Windows

Question 70

Comment vérifier l'existence d'une table dans une base de données avec ADO ?

Il faut employer le modèle objet ADOX qui est consacré à la structure des bases de données (le modèle objet ADODB étant lui consacré à la gestion de données).

La première chose à faire est donc de rajouter une référence à ADOX. Pour ce faire, cliquer sur le menu "Projet/Références...". Dans la liste des références disponibles, sélectionnez "Microsoft ADO Ext. 2.1 for DDL and Security". Vous pouvez maintenant essayer la fonction suivante qui vérifie l'existence d'une table :

Public Function TableExists(cat As ADOX.Catalog, TableName As String) As Boolean

    Dim tbl As ADOX.Table

    ' Enumère toutes les tables du catalogue
    For Each tbl In cat.Tables
        If tbl.Name = TableName Then
            TableExists = True
            Exit For
        End If
    Next

    Set tbl = Nothing

End Function

Private Sub Form_Load()

    Dim cat As New ADOX.Catalog

    ' Connexion à la base de donnée
    cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Mes Documents\MyDataBase.mdb"

    MsgBox TableExists(cat, "Table1")

    Set cat = Nothing

End Sub

Date de publication : 14 juillet 2002
Dernière modification : 09 octobre 2002
Rubriques : Bases de données
Mots-clés : base de données, tables, existence, tester, vérifier, ADO, ADOX