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

JDBC Java Discussion :

vérifier si une table est vide avant insertion


Sujet :

JDBC Java

  1. #1
    Membre habitué Avatar de cashmoney
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Points : 149
    Points
    149
    Par défaut vérifier si une table est vide avant insertion
    Bonjour, je voudrais juste savoir comment vérifier qu'une table est vide avant d'y insérer des éléments.
    Merci pour votre aide

  2. #2
    Rédacteur/Modérateur
    Avatar de regis1512
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mai 2008
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 264
    Points : 7 999
    Points
    7 999
    Par défaut
    Bonsoir,

    Un select count(*) from nomTable ?

  3. #3
    Membre habitué Avatar de cashmoney
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Points : 149
    Points
    149
    Par défaut
    ok, bas je fais le tester et te dirais ce qu'il en est. en tout cas, merci pour ta reponse. j'avais pensé à un select mais bon je savais plus trop après.
    j'avais pensé à ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ...
    int row = 0;
    ResultSet rs = stm.executeQuery("select count(*) from nomtable");
    while(rs.next()){
    row = rs.getRow();
    }
    if (row!=0) {data existe dans la table}
    else{data null dans la table}
    ...

  4. #4
    Rédacteur/Modérateur
    Avatar de regis1512
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mai 2008
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 264
    Points : 7 999
    Points
    7 999
    Par défaut
    Bonjour,

    Ca ma l'air bien.

    Je changerais juste le while en if avec un else et lancerais une exception si on est dans le else du if.

    Bon courage.

  5. #5
    Membre habitué Avatar de cashmoney
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Points : 149
    Points
    149
    Par défaut
    Merci pour ta reponse rapide et instantanée c'est vrai qu'à force d'y être on se fait la main mais on oublie souvent des petites choses basiques.
    je teste tout ça et je te dis.

  6. #6
    Membre habitué Avatar de cashmoney
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Points : 149
    Points
    149
    Par défaut
    J'ai testé, mais pour la vérification du nombre de ligne, il fallait juste un select sur toute la table. le count(*) renvoyait toujours un ligne mais avec 0 data, alors que le select 0 ligne et 0 data.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ...
    int row = 0;
    ResultSet rs = stm.executeQuery("select * from nomtable");
    while(rs.next()){
    row = rs.getRow();
    }
    if (row!=0) {data existe dans la table}
    else{data null dans la table}
    ...

  7. #7
    Rédacteur/Modérateur
    Avatar de regis1512
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Mai 2008
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 264
    Points : 7 999
    Points
    7 999
    Par défaut
    Pardon, j'avais lu trop vite...

    En fait, je voulais bien dire de faire un select count

    et de faire

  8. #8
    Membre habitué Avatar de cashmoney
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Points : 149
    Points
    149
    Par défaut
    T'inquiète, merci pour la seconde idée cela pourrais me servir

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

Discussions similaires

  1. Vérifier qu'une table est vide dans le datastore
    Par argonath dans le forum GWT et Vaadin
    Réponses: 3
    Dernier message: 20/03/2010, 18h47
  2. verifier si une table est vide
    Par mumu64 dans le forum IHM
    Réponses: 6
    Dernier message: 02/10/2008, 14h12
  3. Comment savoir si le champ d'une table est vide?
    Par CleeM dans le forum Bases de données
    Réponses: 2
    Dernier message: 14/07/2007, 11h35
  4. Tester si une table est vide
    Par rsc dans le forum SQL
    Réponses: 2
    Dernier message: 01/07/2004, 16h25
  5. [JDBC]tester si une table est vide
    Par zozolh2 dans le forum JDBC
    Réponses: 5
    Dernier message: 28/05/2004, 09h17

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