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 :

[Postgresql] CallableStatement execute qu'une seule ligne en batch mode


Sujet :

JDBC Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut [Postgresql] CallableStatement execute qu'une seule ligne en batch mode
    Bonjour,
    j'ai un probleme avec ma callablestatement qui n'exexute qu'une seule ligne en batch mode

    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
                                    PaginatedList<SCRDetailDTO> paginatedList = new PaginatedList<SCRDetailDTO>(theptf.SCRlines, 100);
                                    conn2.setAutoCommit(false);
                                    while (true) {
                                        List<SCRDetailDTO> page = paginatedList.nextPage();
                                        if (page == null || page.isEmpty()) {
                                            break;
                                        }
                                        for (SCRDetailDTO theDetail : page) {
                                            request = theUtil.generateSaveRequest(theDetail, scrId, SCR);
                                            if (request != null) {
                                                callableStatement = conn2.prepareCall(StoredProc.prerapareCallableStmt(request, userId));
                                                callableStatement.addBatch();
                                            }
                                        }
                                        int[] result = callableStatement.executeBatch();
                                        conn2.commit();
                                        callableStatement.clearBatch();
                                        callableStatement.close();
                                        conn2.setAutoCommit(true);
                                    }
    juste une précision
    1- que ma requête a déjà tout les parametre tout est fait dans la methode (StoredProc.prerapareCallableStmt(request, userId))
    2- la fonction que j'appelle prends 160 paramètres en entrée
    avez vous une idée svp?
    Merci

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 461
    Points : 894
    Points
    894
    Billets dans le blog
    5
    Par défaut
    Juste une remarque:
    C'est non!

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par PhilippeGibault Voir le message
    Juste une remarque:
    C'est non!
    if (page == null || page.isEmpty()) {
    break;
    }
    je n'ai pas de problème avec ma boucle en réalité

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 461
    Points : 894
    Points
    894
    Billets dans le blog
    5
    Par défaut
    En lisibilité du code, ce n'est pas bien.

    On continue tant que c'est vrai.

    Soit WHILE(TANT QUE CONDITION VRAIE)

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par PhilippeGibault Voir le message
    En lisibilité du code, ce n'est pas bien.

    On continue tant que c'est vrai.

    Soit WHILE(TANT QUE CONDITION VRAIE)
    Je suis d'accord avec vous sur le principe mais je n'ai pas eu un problème de coté mon soucis c'est comme indiqué la callebalestatement ne prendds qu' un seul batch

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/04/2018, 20h41
  2. Sélection aléatoire d'une seule ligne.
    Par Pat bol 002 dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 05/01/2005, 19h30
  3. plusieurs enregistrements dans une seul ligne
    Par Celelibi dans le forum Requêtes
    Réponses: 3
    Dernier message: 03/01/2005, 15h55
  4. wxWidgets : couleur de texte sur une seule ligne
    Par Oatly dans le forum wxWidgets
    Réponses: 8
    Dernier message: 05/12/2004, 19h24
  5. [JTable]Selectionner une seule ligne d'une jTable ?
    Par Maximus32 dans le forum Composants
    Réponses: 2
    Dernier message: 22/10/2004, 02h06

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