[ACCESS-VBA]-Vérifier la présence d'une table

Résolu
gaudian Messages postés 62 Statut Membre -  
 midkar -
Bonjour,

Je souhaiterai savoir comment on peut vérifier la présence d'une table sous VB ACCESS ? Car j'aimerai effectuer un test au début

Si la table existe alors on fait sinon on la créée

Pour le moment je supprime la table manuellement parce qu'au début de mon application je lance une requête SQL comme ci-dessous :
SQL = "CREATE TABLE tb_SauvegardeTemporaire(NumOperationTransfert char(50)) "
  
DoCmd.RunSQL SQL


Je voudrai donc vérifier si elle existe, alors comment faire?

Merci d'avance
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. blux Messages postés 2049 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Salut,

    il suffit de parcourir la liste des tables de ta base...
    Dim Db As Database
    Dim Tb As TableDef
    Set Db = CurrentDb
    For Each Tb In Db.TableDefs
        MsgBox Tb.Name
    Next
    Ca devrait afficher le nom des tables, à toi de faire le test que tu veux...
    3
    1. midkar
       
      Etant donné que le nom exact de la table est connu, il me semble plus simple (et plus court à l'exécution) d'utiliser une fonction qui teste le nom de la table et maîtrise l'erreur au cas où la table n'existe pas.
      Cette fonction renvoie 0 (ou False) si la table n'existe pas, -1 (ou True) si elle existe

      If TableExists(NomDeLaTableAVérifier) then = True ou =-1 est sous-entendu ici
      Faire ce qu'il y a à faire
      Else
      Créer la table
      End if

      Function TableExists(TblName as string) as integer
      Dim NomTable as string
      On Error Goto ErrTable
      NomTable = CurrentDb.TableDefs(TblName)
      TableExists = -1
      Exit Function
      ErrTable:
      End Function
      0
  2. Beu-C
     
    Bonjour,

    Je souhaiterais faire la même chose mais en ASP ...
    Je ne trouve pas ...

    Et le mot "CurrentDb" n'est pas reconnu en vbscript.

    D'avance merci.
    2
  3. gaudian Messages postés 62 Statut Membre 3
     
    Merci beaucoup ça fonctionne
    0