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 :

CachedRowSet delete / insert


Sujet :

JDBC Java

  1. #1
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut CachedRowSet delete / insert
    Voilà je vous explique mon ch'ti probleme.

    J'utilise les CachedRowSet,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CachedRowSetImpl rowSet = new CachedRowSetImpl();
    rowSet.setCommand("select * from message");
    rowSet.execute(con);
    Jusque la aucun probleme ca fonctionne j'affiche ma table dans un tableau c'est niquel.
    Je clique sur un bouton censé me deleter une ligne, et la bame:

    Voila le code que je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    rowSet.absolute(5);
    rowSet.deleteRow();
    rowSet.acceptChanges();
    Et voila l'erreur :

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    Value of params1 : {0} 888
    Value of params1 : {0} 2
    Value of params1 : {0} 6876876897
    Value of params1 : {0} 2
    Value of params1 : {0} 2007-02-13
    Value of params1 : {0} ghgnvfgg
    Value of params1 : {0} 2007-02-13
    javax.sql.rowset.spi.SyncProviderException: 12 conflicts while synchronizing 
    	at com.sun.rowset.internal.CachedRowSetWriter.writeData(CachedRowSetWriter.java:382)
    	at com.sun.rowset.CachedRowSetImpl.acceptChanges(CachedRowSetImpl.java:859)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:585)
    	at com.cc.framework.adapter.struts.ActionUtil.handleControlAction(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.handleControlAction(Unknown Source)
    	at com.cc.framework.adapter.struts.ActionUtil.handleControlAction(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.handleControlAction(Unknown Source)
    	at com.cc.framework.adapter.struts.ActionUtil.handleFormAction(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.handleFormAction(Unknown Source)
    	at com.cc.framework.adapter.struts.ActionUtil.execute(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
    	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
    	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
    	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
    	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
    	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
    	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
    	at java.lang.Thread.run(Thread.java:595)

    Pareil avec un bouton qui insert une row :

    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
    34
    35
    java.sql.SQLException: Failed on insert row
    	at com.sun.rowset.CachedRowSetImpl.insertRow(CachedRowSetImpl.java:5440)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:585)
    	at com.cc.framework.adapter.struts.ActionUtil.handleControlAction(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.handleControlAction(Unknown Source)
    	at com.cc.framework.adapter.struts.ActionUtil.handleControlAction(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.handleControlAction(Unknown Source)
    	at com.cc.framework.adapter.struts.ActionUtil.handleFormAction(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.handleFormAction(Unknown Source)
    	at com.cc.framework.adapter.struts.ActionUtil.execute(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
    	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
    	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
    	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
    	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
    	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
    	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
    	at java.lang.Thread.run(Thread.java:595)

    Donc si vous saviez pourquoi? Je n'ai pas essayer les updates pour le moment. Mais vu que ca plante à l'insert et delete j'ose meme pas imaginer l'update. J'espere que quelqu'un a deja rencontré ce meme probleme ou que quelqu'un connait le pourquoi du comment ca me serait bien utile.

    Edit : Petite precision je suis en JDK 1.5
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  2. #2
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Salut, je n'y connais pas grand chose mais regarde ce lien ICI comment ils font ça :

    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
     
    Inserting, updating, and deleting rows are supported by the row set feature as they are in the result set feature. The following code illustrates the insertion of a row at the fifth position of a row set:
     
    /**
     * Inserting a row in the 5th position of the rowset.
     */
    // moving the cursor to the 5th position in the rowset
    if (rowset.absolute(5))
    {
      rowset.moveToInsertRow ();
      rowset.updateInt (1, 193);
      rowset.updateString (2, "Ashok");
      rowset.updateInt (3, 7200);
     
      // inserting a row in the rowset
      rowset.insertRow ();
     
      // Synchronizing the data in RowSet with that in the
      // database.
      rowset.acceptChanges ();
    }
    j'espère que ça pourra t'aider
    "Le calendrier, c'est la bureaucratie du temps." Quino

  3. #3
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Ouais merci en faite pour le insert j'ai vu que je faisais n'importe quoi. Mais ca n'empeche que j'ai toujours la meme erreur au delete.

    J'essaye en vain d'integrer le insert dans mon code mais n'y suis pas encore arrivé, car je gere un tableau qui est ou non editable en fonction de la row que l'on veut editer avec des boutons save, edit. Donc ca prend pas mal de temps.


    [Edit : J'ai reussi à faire mon insert correctement dans mon CachedRowSet. Malheureusement que j'essaye de le resynchronizer avec la base ca plante comme pour le delete.

    Pour info le 12 devant est le nombre de row en conflit. Ce qui veut dire que toute mes rows sont en conflits. Pourquoi alors que je n'ai rien fait. Une conversion, String/Object serait-elle à l'origine de tout ca?

    Merci]
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  4. #4
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Si toutes tes rows sont en conflit, c'est qu'il n'arrive pas à mettre à jour les rows et insérer en plein milieu.

    Tu as essayé d'ajouter une row à la fin pour voir si ça marche ?

    Sinon comme je te l'ai dit je n'y connais pas grand chose donc mon aide sera light
    "Le calendrier, c'est la bureaucratie du temps." Quino

  5. #5
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    En faite pour le moment je m'occupe pas de l'insert, et puis l'insert est fait à la fin à chaque fois.
    Meme un delete, je fais mon delete. Et quand je synchronize bamm toute les rows sont en conflit.

    En faite j'ai p'etre compris pourquoi. J'avais mis les primaryKey mais je viens de m'appercevoir qu'il n'arrivait pas à les récupérer donc peut-etre aucun moyen pour lui de reconnaitre les rows d'ou le plantage.

    Edit: Bon bé ca na pas l'air d'etre ca, j'ai mis les primaryKey en dur et toujours tous les conflits.

    Donc j'ai toujours mon CachedRowSet. Si j'appuie sur mon bouton save qui fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rowSet.acceptChanges(con);
    Il n'y a pas d'erreur.

    Par contre si je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    rowSet.absolute(2);
    rowSet.deleteRow();
    rowSet.acceptChanges(con);
    J'ai le message d'erreur. Et je n'y comprend rien. Pourquoi y a-t-il autant de conflit que de row? Je doit positionner mon rowSet ailleur? Je dois me mettre au debut?
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  6. #6
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Pour la suppression essaie un positionnement en relative plutôt qu'en absolute.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    rowset.relative(5);
    rowset.deleteRow();
    Sinon, il y a la FAQ JDBC sur le sujet ICI même si je pense que tu as déjà dû la parcourir.
    "Le calendrier, c'est la bureaucratie du temps." Quino

  7. #7
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Relative ou Absolute ca ne change rien. Mais pour faire plus simple, j'essaye de supprimer des le chargement (au lieu de passer par mon bouton dans un premier temps).


    J'obtient cette erreur la :


    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
    34
    35
    36
    37
    java.lang.reflect.InvocationTargetException
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:585)
    	at com.cc.framework.adapter.struts.ActionUtil.handleFormAction(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.handleFormAction(Unknown Source)
    	at com.cc.framework.adapter.struts.ActionUtil.execute(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
    	at com.cc.framework.adapter.struts.FWAction.execute(Unknown Source)
    	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
    	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
    	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
    	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
    	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
    	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
    	at java.lang.Thread.run(Thread.java:595)
    
    Caused by: java.lang.NullPointerException
    	at com.sun.rowset.internal.CachedRowSetWriter.deleteOriginalRow(CachedRowSetWriter.java:862)
    	at com.sun.rowset.internal.CachedRowSetWriter.writeData(CachedRowSetWriter.java:312)
    	at com.sun.rowset.CachedRowSetImpl.acceptChanges(CachedRowSetImpl.java:859)
    	at com.sun.rowset.CachedRowSetImpl.acceptChanges(CachedRowSetImpl.java:919)
    	... 29 more
    Bien sur je sais ce qu'est un nullPointer le probleme est que ce nullPointer arrive dans une classe Sun. AYE. Donc étant donné que certain doive s'en servir, du moins je l'espere, la classe doit marcher. Ai-je oublié de faire un ptit truc.
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  8. #8
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Je ne sais pas trop. Je parcoure le Web à la recerche de réponses

    Sinon as tu pensé à faire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    CachedRowSet crset = new CachedRowSet();
    crset.setType(ResultSet.TYPE_SCROLL_INSENSITIVE);
    crset.setConcurrency(ResultSet.CONCUR_UPDATABLE);
    set the result-set concurrency constant to CONCUR_UPDATABLE to make a ResultSet object scrollable and updatable.
    Sinon je ne peux que te renvoyer sur des tutoriaux pour vérifier ton code et leur similarité.

    Tutoriel n°1

    Tutoriel n°2

    Désolé de ne pouvoir faire plus
    "Le calendrier, c'est la bureaucratie du temps." Quino

  9. #9
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    En faite le scroll est pas necessaire.

    Bon pour faire simple, je test dans une class de test ou je n'ai ni tableau ni rien du tout. Juste pour tenter de faire un update ou un delete bref un truc quoi.

    Ma classe DAO ne fait que construire une connection avec l'url, le username et le password puis renvoi la connection qui est correct car j'ai bien mon resultat. J'ai fait la requete avec messageid pour n'avoir que 1 seule ligne. La 2ieme colonne est bien un int.

    J'ai deja regarder des 100aine de tuto et je ne vois pas de difference si ce n'est qu'il utilise généralement l'url, le username et le password directement au lieu de la connection mais j'ai testé et ca ne change rien.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    DAOFactory daoFactory = DAOFactory.getDAOFactory(DAOFactory.ORACLE);
    Connection con = daoFactory.getConnection();
    String query = "SELECT * FROM message where MESSAGEID=3";
    CachedRowSet rowSet = new CachedRowSetImpl();
    rowSet.setCommand(query);
    rowSet.execute(con);
    rowSet.first();
    rowSet.updateInt(2,8);
    rowSet.updateRow();
    rowSet.acceptChanges(con);

    et voilà mon erreur :

    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
    javax.sql.rowset.spi.SyncProviderException: 1 conflicts while synchronizing 
    	at com.sun.rowset.internal.CachedRowSetWriter.writeData(Unknown Source)
    	at com.sun.rowset.CachedRowSetImpl.acceptChanges(Unknown Source)
    	at com.sun.rowset.CachedRowSetImpl.acceptChanges(Unknown Source)
    	at mon.package.dao.OracleBuilderDAOTestCase.testSelect(OracleBuilderDAOTestCase.java:46)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    	at java.lang.reflect.Method.invoke(Unknown Source)
    	at junit.framework.TestCase.runTest(TestCase.java:154)
    	at junit.framework.TestCase.runBare(TestCase.java:127)
    	at junit.framework.TestResult$1.protect(TestResult.java:106)
    	at junit.framework.TestResult.runProtected(TestResult.java:124)
    	at junit.framework.TestResult.run(TestResult.java:109)
    	at junit.framework.TestCase.run(TestCase.java:118)
    	at junit.framework.TestSuite.runTest(TestSuite.java:208)
    	at junit.framework.TestSuite.run(TestSuite.java:203)
    	at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
    	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
    	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  10. #10
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Bon alors bonne et mauvaise nouvelle.
    J'ai crée une autre table toute simple. Ca passe. C'est la bonne nouvelle.

    La mauvaise est que je n'ai pas encore compris pourquoi. IL y a des triggers sur l'autre table, peut-etre la source du probleme....
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  11. #11
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    alors là... je suis aussi preneur d'une explication
    "Le calendrier, c'est la bureaucratie du temps." Quino

  12. #12
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Encore une mauvaise nouvelle. J'ai été mangé, c'était bon. Je relance ma classe de test et la miracle un conflit.
    Je ne comprend vraiment pas.

    J'en ai vraiment besoin j'vais devenir fou. Ca a marché mais ca ne marche plus.

    Edit : et la ca remarche. Je n'ai strictement rien changé. Si ce n'est supprimer une colonne date et de l'avoir recreer.


    Edit2 : En faite le insert marche à merveille mais l'update et le delete font des conflits. Et je ne vois pas pourquoi....
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  13. #13
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Salut maxf1 alors ça en est où ?

    Si tu bloques toujours, peut être vaudrait-il mieux décocher le tag résolu pour avoir un peu plus d'aide
    "Le calendrier, c'est la bureaucratie du temps." Quino

  14. #14
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Ouais c'est clair que je l'avais oublié que j'avais mis résolu. EN faite j'ai pu voir sur 2 ou 3 forum qu'il y avait un probleme avec Oracle avec les champs Date, car probleme avec Date et TimeStamp.

    Bref je n'ai pas chercher à comprendre trop longtemp, faut que j'avance un minimum quand meme. Donc je n'utilise plus la methode acceptChange du rowset qui n'est pas très stable dans mon cas. Et je fais meme la synchro, en update, insert ou delete dans la base via requete.

    De toute facon c'est bien ce qu'il doit faire derriere, lol!


    Donc je laisse le résolu car pour moi c'est réglé j'ai passé ce probleme en le contournant légèrement;
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  15. #15
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    ok bonne chance pour la suite
    "Le calendrier, c'est la bureaucratie du temps." Quino

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

Discussions similaires

  1. Java/MySQL insert, delete, insert et update
    Par sniper_marra dans le forum JDBC
    Réponses: 2
    Dernier message: 21/08/2008, 23h44
  2. [SQL2005]Trigger On delete, insert, update(colonne)
    Par slim dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 27/02/2007, 16h36
  3. [SQL] delete+insert ou plusieurs update c'est quoi le mieux?
    Par cassy dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 21/06/2006, 10h47
  4. voir les tables virtuel deleted inserted
    Par berceker united dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 19/06/2006, 14h31
  5. performance delete/insert vs update
    Par Dionisos dans le forum Langage SQL
    Réponses: 6
    Dernier message: 01/08/2005, 18h23

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