Savoir si une base donnée existe

big wallace Messages postés 30 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 3 décembre 2007 - 3 mai 2007 à 00:40
cavo789 Messages postés 168 Date d'inscription vendredi 9 janvier 2004 Statut Membre Dernière intervention 28 juillet 2009 - 4 mai 2007 à 23:52
salut ,
voila, ma question est es ce qu'on peut savoir si une table X existe dans une base de donnée Z ?
Et merci d'avance

12 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
3 mai 2007 à 01:36
Salut,

en VB6, il faut rechercher dans la class TableDef. Il fallait également supprimer les tables systèmes.
Désolé pour le peu de pistes, en espérant que ça t'aide quand même .

@++

<hr width="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
3 mai 2007 à 08:29
Salut, en fait je sais tres bien le faire en VBA mais je connais pas .net alors je vais te donner le code VBA.

Dans le principe, tu te connectes à la base de données et tu recherches toutes les objets de la collection Tables qui represente en fait toutes les tables de ta base de données et donc aussi les tables systèmes.

'ATTENTION CODE VBA ET NON .net   ET AVEC ADOX ET NON ADO.NET

Dim bdd As New ADOX.Catalog   
Dim Tableau As ADOX.Table

Set bdd.ActiveConnection = ta_connexion_à_la_base

For Each Tableau In bdd.Tables
   if tableau.name = "X" then
      msgbox "La table X est bien présente dans la base Z"
   end if
Next

Cela fonctionne parfaitement en VBA, il faut que tu cherche (à moins qu'un expert .net passe) pour mettre en .net.

A+
0
big wallace Messages postés 30 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 3 décembre 2007
3 mai 2007 à 11:11
Merci à vous les gas pour votre aide.
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
3 mai 2007 à 11:18
LOL, par contre ta reponse ne m'aide pas a savoir ou tu en es. Tu as reussi, tu es sur la voir ou tu bloque quelque part ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
big wallace Messages postés 30 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 3 décembre 2007
3 mai 2007 à 11:35
j'ai su comment savoir si la table est dans le dataset, mais dans la base non.
c'est ts pour l'instant
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 11:41
Bonjour tout le monde,
effectivement mortalino...on peut le savoir
grace à la collection TableDefs :
FunctionTest() As Boolean
 Dim i As Integer,y As Integer
  y = MaDb.TableDefs.Count
For i = 0 To y - 1
  If pDB.TableDefs(i).Name = LENOM Then
    Test=True
    Exit For
  End If
 Next
End Function
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 11:44
If MaDb.... bien sûr .
0
big wallace Messages postés 30 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 3 décembre 2007
3 mai 2007 à 11:49
c en vb.net ?
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 12:33
c' est VB  tout court...
Quelle différence y' aurait il ?
0
big wallace Messages postés 30 Date d'inscription mardi 21 mars 2006 Statut Membre Dernière intervention 3 décembre 2007
3 mai 2007 à 17:18
.net,vba,vb6....
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
3 mai 2007 à 17:33
   oui je sais..
je voulais dire au niveau du code proposé.
Je suis en VB6 mais Je pense que ça fonctionnera
aussi en VBA et en VB.NET
0
cavo789 Messages postés 168 Date d'inscription vendredi 9 janvier 2004 Statut Membre Dernière intervention 28 juillet 2009 1
4 mai 2007 à 23:52
Il y a plusieurs possibilités en VB / VBA

Par exemple :

Dim bExists As Boolean

    On Error Resume Next
     bExists = Not (CurrentDB.TableDefs("MaTable") Is Nothing)
     On Error Goto 0

      Je suppose ici que CurrentDB est un objet de table Database et qui représente ta base de données.   bExists sera à True si la table existe.

Christophe
0
Rejoignez-nous