RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Srv: irc.moteurprog.com
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 pb avec ma requête sous Jbuilder

Forum : IDE JAVA
Sous Catégorie : Aucune
Type du sujet : Sujet Normale
FAQ : FAQ IDE JAVA

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGE : [1]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM IDE JAVA

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
oziriss
Membre régulier
Inscrit : 17/08/2005
Messages : 72
Message
#90813
Posté le 13/03/06 à 17:00
salut à tous !
voici mon pb : j'ai une table contrat et une table avenant ; les 2 sont reliées par une relation de 1 à n (pour un contrat il existe 1 ou n avenants et 1 avenant est lié à 1 seul contrat) sur mon formulaire,je dois en même temps que je crée un nouveau contrat,créer son premier avenant . voici mon code de creation du contrat : [code]DataRow d = new DataRow(labase.qryContrat);

d.setString(1, Numcontrat.getText());
d.setString(2, Libcontrat.getText());
d.setString(3, Objetcontrat.getText());
d.setString(4, Lieucontrat.getText());
d.setDouble(6, Double.parseDouble(valeurParDefaut( Montantcontrat.getText(),"0").toString()));
d.setString(7, Dateeffetcontrat.getText());
d.setString(8, Dateechcontrat.getText());
d.setString(9, numremplacantcontrat.getText());
d.setString(10, numremplacecontrat.getText());
d.setString(11, Dateremplacement.getText());
d.setInt(12, Integer.parseInt(IdEtsCr.getText()) );
d.setInt(13, Integer.parseInt( Idclient.getText()));
d.setInt(14, Integer.parseInt( Idtypecontrat.getText()));
labase.qryContrat.addRow(d);
labase.qryContrat.saveChanges();[/code]

et juste après ce code qui crée un nouvel enregistrement dans la base de donnée, j'ai mon code de création de mon premier avenant que voici :
[code]Connection conn = labase.SysRegloDB.getJdbcConnection();
ResultSet res;
Statement stat = conn.createStatement();
String str="select max(idcontrat)as idcontrat from tblcontrat";
res= stat.executeQuery(str);

labase.qryAvenant3.open();
DataRow d1 = new DataRow(labase.qryAvenant3);

d1.setString(1, Numcontrat.getText());
d1.setString(2, Libcontrat.getText());
d1.setString(3, Dateeffetcontrat.getText());
d1.setString(4, Dateechcontrat.getText());
d1.setString(5, ObservationCltContrat.getText());
d1.setDouble(6, Double.parseDouble( valeurParDefaut(Montantcontrat.getText(),"0").toString()));
d1.setDouble(7, Double.parseDouble(valeurParDefaut(FraisAccessoireCltContrat.getText(),"0").toString()));
d1.setDouble(8, Double.parseDouble(valeurParDefaut(CoutTransacCltContrat.getText(),"0").toString()));
d1.setDouble(9, Double.parseDouble(valeurParDefaut(TotalHTCltContrat.getText(),"0").toString()));
d1.setDouble(10, Double.parseDouble(valeurParDefaut(MontantTaxeCltContrat.getText(),"0").toString()));
d1.setDouble(11, Double.parseDouble(valeurParDefaut(TotalTTCCltContrat.getText(),"0").toString()));
d1.setInt(12, (res.getInt(0)));
d1.setInt(13, Integer.parseInt(IdNatureOpCltContrat.getText()));
labase.qryAvenant3.addRow(d1);
labase.SysRegloDB.saveChanges(labase.qryAvenant3);
[/code]

Au fait à ce niveau là je vais recupérer le dernier identifiant auto de ma table contrat comme clé etrangère de mon enregistrement avenant. mais je reçois ce message d'erreur que je ne comprends pas:[quote]java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Invalid operation for the current cursor position.

at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)

at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.validateCursorPosition(Unknown Source)
at com.microsoft.jdbc.base.BaseResultSet.getInt(Unknown Source)
at projetsysreglo.FrmGestion.Validercontrat_actionPerformed(FrmGestion.java:2536)
at projetsysreglo.FrmGestion_Validercontrat_actionAdapter.actionPerformed(FrmGestion.java:4825)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
at java.awt.Component.processMouseEvent(Component.java:5100)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
at java.awt.Container.dispatchEventImpl(Container.java:1613)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:141)
at java.awt.Dialog$1.run(Dialog.java:540)
at java.awt.Dialog.show(Dialog.java:561)
at projetsysreglo.FenetrePpale.menugestion_actionPerformed(FenetrePpale.java:516)
at projetsysreglo.FenetrePpale_menugestion_actionAdapter.actionPerformed(FenetrePpale.java:528)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.AbstractButton.doClick(AbstractButton.java:289)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1113)
at javax.swing.plaf.basic.BasicMenuItemUI$MouseInputHandler.mouseReleased(BasicMenuItemUI.java:943)
at java.awt.Component.processMouseEvent(Component.java:5100)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3483)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3198)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3128)
at java.awt.Container.dispatchEventImpl(Container.java:1613)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)

[/quote]
Il me semble que la requête ne ramène aucune valeur or dans l'analyseur de requête le requête ramène bel et bien la valeur escomptée.
Aidez moi SVP !
__________________________
Seul le travail paye !

ERREUR BBCODE SUR CE MESSAGE :
- La valeur de la balise "quote" n'est pas correcte !

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

Molo
Membre du club
Avatar de Molo
Inscrit : 21/12/2005
Messages : 367
Message
#90820
Posté le 13/03/06 à 17:23
Salut oziriss
Je crois que ton premier bout de code ne s'execute pas corectement, aucun enregistrement n'est ajouté, et en mettant:

String str="select max(idcontrat) as idcontrat from tblcontrat"; res= stat.executeQuery(str);


La requête va retourner une valeur nulle qui peut être ne peut être stocké dans ta variable res ce qui cause l'erreur.

Bonne chance
__________________________
L'une des fonctions principales d'un ami consiste à subir, sous une forme plus douce et symbolique, les châtiments que nous désirerions, sans le pouvoir, infliger à nos ennemis.
Aldous Huxley
Le meilleur des mondes

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

oziriss
Membre régulier
Inscrit : 17/08/2005
Messages : 72
Message
#90822
Posté le 13/03/06 à 17:34
Mais pourtant à chaque fois je vérifie dans ma base de donnée et il y'a bel et bien une nouvelle ligne qui s'ajoute à la table contrat.
__________________________
Seul le travail paye !

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Molo
Membre du club
Avatar de Molo
Inscrit : 21/12/2005
Messages : 367
Message
#90824
Posté le 13/03/06 à 17:39
Donc il ne reste plus que cette probabilité:
Voici l'erreur-->max(idcontrat) as idcontrat

T'as mis comme alias le nom d'un champs existant, peut être c'est de là essaie pour voir avec par exemple:
select max(idcontrat) as idctr from tblcontrat
__________________________
L'une des fonctions principales d'un ami consiste à subir, sous une forme plus douce et symbolique, les châtiments que nous désirerions, sans le pouvoir, infliger à nos ennemis.
Aldous Huxley
Le meilleur des mondes

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

oziriss
Membre régulier
Inscrit : 17/08/2005
Messages : 72
Message
#90878
Posté le 14/03/06 à 09:41
Non c pas là le pb ! parce que quand je change c'est le même problème avec le même message d'erreur :[quote]java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Invalid operation for the current cursor position.
[/quote]. La requête ne s'execute pas il me semble et donc ne ramène aucune ligne . or dans l'analyseur de requête elle s'execute bien.
__________________________
Seul le travail paye !

ERREUR BBCODE SUR CE MESSAGE :
- La valeur de la balise "quote" n'est pas correcte !

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

oziriss
Membre régulier
Inscrit : 17/08/2005
Messages : 72
Message
#90882
Posté le 14/03/06 à 10:28
et maintenant quand je désactive cette instruction :[code] // d1.setInt(12, (res.getInt("test")));[/code]
voici le nouveau message que je reçois :[quote]See com.borland.dx.dataset.DataSetException error code: BASE+66
com.borland.dx.dataset.DataSetException: [Microsoft][SQLServer 2000 Driver for JDBC]Can't start a cloned connection while in manual transaction mode.
[/quote]

je ne comprends vraiment pas ce message !
__________________________
Seul le travail paye !

ERREUR BBCODE SUR CE MESSAGE :
- La valeur de la balise "quote" n'est pas correcte !

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM IDE JAVA



    PAGE : [1]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.