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 :

Comment vérifier qu'une table ne contient aucun enregistrement ?


Sujet :

Bases de données Delphi

  1. #1
    Membre du Club
    Inscrit en
    Mai 2006
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 192
    Points : 65
    Points
    65
    Par défaut Comment vérifier qu'une table ne contient aucun enregistrement ?
    bjr à tous
    je travail sur delphi 2008 et interbase, je voulai teste si une table est vide pour affiche un msg à l'utilisateur, mais je sais pas comment faire
    j'ai une table famille qui contien une liste de produit, quand cette famille contient des produit la liste s'affiche( pour ca c fait) mais il me reste le cas de la liste vide
    merci pour votre aide

  2. #2
    Expert éminent sénior
    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 : 61
    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
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    Examine la propriété IsEmpty juste après l'ouverture de ta table/query.
    Si le DataSet est vide IsEmpty renvoie True.

    @+ Claudius

  3. #3
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 304
    Points
    2 304
    Par défaut
    Salut;

    Ou encore la propriété EOF mais faut faire attention elle ne renvoie pas toujours le bon résultat.

    Tu peux aussi consulter la propriété RECORCOUNT avec la même remarque faite pour EOF.

    À mon avis, la propriété ISEMPTY est la plus sûre.

    Bon codage.
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  4. #4
    Membre habitué
    Inscrit en
    Décembre 2007
    Messages
    94
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Décembre 2007
    Messages : 94
    Points : 134
    Points
    134
    Par défaut
    Je te conseille le isempty c'est beaucoup + simple.just un if et hop. Documente toi dessus (F1)

  5. #5
    Membre du Club
    Inscrit en
    Mai 2006
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 192
    Points : 65
    Points
    65
    Par défaut
    merci pour votre reponse, j'arrive pas à trouver à quel endroit l'ajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if Datamodule4.DetailInventaire_QR.IsEmpty = true then
           begin showmessage('cette famille de produit est vide'); end
           else
    dans le code suivant ,si qlq'un peut me dire

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    procedure TForm_Select_Famille.BitBtn1Click(Sender: TObject);
    Var i:Integer;
    begin
           Datamodule4.DetailInventaire_QR.open;
     
        With DBGrid1 Do
      Begin
        for i:=0 to SelectedRows.Count-1 do
          begin
           DataSource.DataSet.GotoBookmark(pointer(SelectedRows.Items[i]));
           Datamodule4.Update.SQL.Clear;
           Datamodule4.Update.SQL.Add('select produit.codeproduit from produit where (Produit.famille = ' + quotedstr(DataSource.DataSet.FieldByName('NUMERO').asstring )+ ')');
           datamodule4.Update.open;
     
     
            WITH Datamodule4.update do
                 begin
                 while not eof do
                      begin
                        DAtamodule4.DetailInventaire_QR.Append;
                        Datamodule4.DetailInventaire_QRCODEPRODUIT.Value :=  Datamodule4.Update_DS.DataSet.FieldByName('CODEPRODUIT').value;
                        DAtamodule4.DetailInventaire_QR.post;
                        next;
                      end;
                 end;
          end;
       end;
     
         DAtamodule4.DetailInventaire_QR.CLOSE;
         DAtamodule4.DetailInventaire_QR.open;
         close;
    end;

  6. #6
    Membre chevronné Avatar de chaplin
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 215
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 215
    Points : 1 819
    Points
    1 819
    Par défaut
    Le test sur la propriété IsEmpty doit se faire immédiatement après l'appel de la méthode Open du Dataset

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MyDataset.Open
    If MyDataset.IsEmpty then ... else ...
    Sinon dans l'inspecteur d'objet du Dataset dans l'onglet Evénement, il y a une
    événement AfterOpen dans lequel le test de la table peut-être inséré.

    Ca revient au même.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-97] Comment vérifier si une table existe? (fn OpenSchema)
    Par BornToBe dans le forum VBA Access
    Réponses: 4
    Dernier message: 02/04/2012, 09h57
  2. [Débutant] MessageBox si la table ne contient aucun enregistrement
    Par lelvivien dans le forum VB.NET
    Réponses: 1
    Dernier message: 29/09/2011, 16h46
  3. Réponses: 1
    Dernier message: 30/05/2008, 17h00
  4. comment vérifier qu'une table esclave vérifie une condition?
    Par loikiloik dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/04/2004, 16h48

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