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

avec Java Discussion :

Vérifier si l'insertion s'est bien passée


Sujet :

avec Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 53
    Points : 35
    Points
    35
    Par défaut Vérifier si l'insertion s'est bien passée
    Bonjour j'ai fait une classe java qui fait des insertion dans une BDD sql server je voudrais savoir comment vérifier si l'insertion s'est bien passée avec une condition ou autre chose

  2. #2
    Membre actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2009
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 130
    Points : 276
    Points
    276
    Par défaut
    Bonjour,

    Je ne connais pas SQLServer, mais si la requête ne lève pas d'exception, alors elle s'est bien passé et donc ton insertion est en base.
    MigouW

    La seule bataille perdue d'avance est celle que l'on refuse de livrer.


    Pensez au tag
    Ma réponse vous a été utile, votez plus 1 sur le message.
    Ma réponse est hors sujet, votez moins 1 sur le message.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 53
    Points : 35
    Points
    35
    Par défaut
    Merci pour la réponse, oui ça je le sais.En faite ce que je voudrais c'est afficher un pop up signalant que l'insertion s'est bien passée alors il faut une condition ou quelque chose dans le genre.

  4. #4
    Membre chevronné
    Inscrit en
    Août 2009
    Messages
    1 073
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1 073
    Points : 1 806
    Points
    1 806
    Par défaut
    Tu peux a priori afficher ta popup si tu n'as pas d'exception levée ...

    Dans le pire des cas, tu peux toujours faire une requête sur ta base de données pour vérifier que ton objet a bien été persisté avec les bonnes valeurs ...

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 53
    Points : 35
    Points
    35
    Par défaut
    Oui c'est la solution que j'allais faire si il n'y avait pas d'autre moyen c'est juste que je cherche quelque chose du genre
    if(stmt.excuteUpdtate) {
    //afficher pop up
    }

  6. #6
    Membre actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2009
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 130
    Points : 276
    Points
    276
    Par défaut
    executeUpdate() ne renvoie pas un booléen mais un int, qui compte le nombre de lignes insérées, modifiées ou supprimées, ou qui renvoie zéro si la requête ne renvoie rien. Personnellement je gérerai via un booléen,

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    boolean executionOk = true;
    try{
        ...
        stmt.executeUpdate();
        ...
    }catch(SQLException ex){
       executionOk = false;
    }
    if(executionOk){
       // Affichage de la popUp
    }
    MigouW

    La seule bataille perdue d'avance est celle que l'on refuse de livrer.


    Pensez au tag
    Ma réponse vous a été utile, votez plus 1 sur le message.
    Ma réponse est hors sujet, votez moins 1 sur le message.

  7. #7
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Et vu que ce int renvoie le nombre de ligne modifiée comme le dit MigouW Tu peux aussi vérifier qu'il y a eu des modifications en base via ce int avant d'afficher la pop-up pour une analyse encore plus fine.

    Exemple repris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    boolean executionOk = true;
    int nbLigneModif = 0;
    try{
        ...
        nbLigneModif = stmt.executeUpdate();
        ...
    }catch(SQLException ex){
       executionOk = false;
    }
    if(executionOk && (nbLigneModif > 0)) {
       // Affichage de la popUp si il y a eu un update d'un tuple au moins en base
    }
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  8. #8
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    Je partirai du postulat que par défaut ca se passe mal, afficher une pop-up d'erreur s'il y en a une, éventuellement afficher une pop-up si rien n'a été mis à jour (rien de plus crispant que pas de retour).
    Citation Envoyé par Robin56 Voir le message
    Citation Envoyé par MigouW Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    boolean executionOk = false;
    try{
        ...
        executionOk = stmt.executeUpdate() > 0;
        ...
    }catch(SQLException ex){
      // Affichage pop-up d'erreur
    }
    if(executionOk){
       // Affichage de la popUp
    }
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 53
    Points : 35
    Points
    35
    Par défaut
    Merci tous pour votre réponse je crois que je vais retenir la solution de MigouW

  10. #10
    Membre actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2009
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 130
    Points : 276
    Points
    276
    Par défaut
    Citation Envoyé par skouza Voir le message
    Merci tous pour votre réponse je crois que je vais retenir la solution de MigouW

    Youhou, j'ai gagné , honnetement je prendrais plus celle de Nemek, c'est plus propre
    MigouW

    La seule bataille perdue d'avance est celle que l'on refuse de livrer.


    Pensez au tag
    Ma réponse vous a été utile, votez plus 1 sur le message.
    Ma réponse est hors sujet, votez moins 1 sur le message.

  11. #11
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 083
    Points
    7 083
    Par défaut
    Je me suis pas trop fouler :p un true changer en false et un regroupement des conditions de Robin56.

    Ceci dit j'ai voté pour ta première réponse: Si pas d'exception, c'est que tout se passe bien.
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  12. #12
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    En tout cas, on est tous d'accord pour dire que le sujet peut passer en résolu.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

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

Discussions similaires

  1. [Web Service] Vérifier que SOAPClient s'est bien passé
    Par Delphi-ne dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 05/09/2008, 02h19
  2. Réponses: 4
    Dernier message: 08/08/2006, 15h41
  3. MSXML : vérifier si un document XML est bien formé
    Par Patriarch24 dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 19/04/2006, 13h36
  4. [JDBC] Savoir si un INSERT s'est bien effectué
    Par david71 dans le forum JDBC
    Réponses: 5
    Dernier message: 16/02/2005, 12h06
  5. Réponses: 6
    Dernier message: 11/01/2005, 12h49

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