IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

Firebird : tester l'existence d'une table


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Responsable associatif
    Inscrit en
    Octobre 2005
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Responsable associatif

    Informations forums :
    Inscription : Octobre 2005
    Messages : 229
    Par défaut Firebird : tester l'existence d'une table
    bonjour,

    je débute avec firebird...
    Comment faire pour tester l'existence d'une table dans la base ?

    merci d'avance

  2. #2
    Membre éclairé
    Inscrit en
    Décembre 2004
    Messages
    390
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 390
    Par défaut
    Je ne sais pas si la propriété Exists du BDE fonctionne avec FB !
    C'est bon d'essayer.

  3. #3
    Expert confirmé
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Par défaut
    Salut

    Cette requête renvoie 0 ou 1 avec respectivement l'absence ou la présence de MATABLE dans la BDD.
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select count(*)
    from RDB$RELATIONS
    where RDB$RELATION_NAME = 'MATABLE';

    @+ Claudius

  4. #4
    Membre éclairé
    Homme Profil pro
    Responsable associatif
    Inscrit en
    Octobre 2005
    Messages
    229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Responsable associatif

    Informations forums :
    Inscription : Octobre 2005
    Messages : 229
    Par défaut
    ok merci je vais essayer ça

  5. #5
    Membre éprouvé Avatar de defluc
    Homme Profil pro
    Architecte
    Inscrit en
    Mai 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 383
    Par défaut
    Bonjour

    Voici ma fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Function TableExist(TableName : String): Boolean;
    Begin
     Query.SQL.Clear;
     Query.SQL.Add('SELECT COUNT(*) AS COMBIEN FROM RDB$RELATIONS  WHERE RDB$RELATION_NAME = '+
                    QuotedStr(TableName));
     Query.ExecSQL  ;
     Query.Active:=true;
    if DataSourceQuery.DataSet.FieldByName ('COMBIEN').asinteger > 0 then
                        Result := True
                                                                      else
                        Result := False;
    End;

  6. #6
    Membre éclairé Avatar de cantador
    Homme Profil pro
    Chef de projet
    Inscrit en
    Mars 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Chef de projet
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2006
    Messages : 572
    Par défaut un os..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    fuction IsValidDatabase : boolean;
    begin
      with QValidDatabase.SQL do
      begin
        QValidDatabase.Close;
        Clear;
        Add('SELECT count(*)  ');
        Add('FROM RDB$RELATIONS ');
        Add('WHERE RDB$RELATION_NAME =:MATABLE ');
        QValidDatabase.ParamByName('MATABLE').Text := 'TOTO';
        QValidDatabase.Open;
      end;
      Result := (QValidDatabase.RecordCount <> 0);
    end;
    je n'ai aucune table au nom de TOTO et pourtant
    un point d'arrêt sur le RecordCount me donne 1 !!
    ???

    merci de votre aide

    cantador

  7. #7
    Membre Expert
    Avatar de Thierry Laborde
    Homme Profil pro
    N/A
    Inscrit en
    Avril 2002
    Messages
    1 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : N/A

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 391
    Par défaut
    Citation Envoyé par zarbouine Voir le message
    bonjour,

    je débute avec firebird...
    Comment faire pour tester l'existence d'une table dans la base ?

    merci d'avance
    Vous utilisez quelle version de Delphi ? et quels composants d'accès à votre base Firebird ?

Discussions similaires

  1. Tester l'existence d'une table avec une requête
    Par Oluha dans le forum Access
    Réponses: 6
    Dernier message: 29/08/2005, 09h45
  2. Tester l'existence d'une table sous Access
    Par Oluha dans le forum Bases de données
    Réponses: 10
    Dernier message: 29/08/2005, 09h42
  3. tester l existance d une table
    Par mick84m dans le forum Requêtes
    Réponses: 4
    Dernier message: 25/04/2005, 11h24
  4. [JDBC]Tester l'existence d une table
    Par juflata dans le forum JDBC
    Réponses: 7
    Dernier message: 29/06/2004, 15h27
  5. [ADO] Tester l'existence d'une table
    Par nd25 dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 05/09/2002, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo