Solved

CURSOR STATE NOT VALID

Posted on 2004-09-28
14
824 Views
Last Modified: 2012-06-27
I am using the following result set and prepared statement.  The update query works, but the a "CURSOR STATE NOT VALID"
exception occurs and the rest of my code is ignore. Thanks in advance to anyone that can help.

String updateDb2Query = "UPDATE tstdtatst.A767040A set ORCPDT = '"+bReqCompDate+"', ORFL = '"+flag+"', ORACTN = '"+action+"', ORFIH = "+frontInsideHeight+",ORRIH = "+rearInsideHeight+",ORFLRT="+floorRate+",ORLNID="+lineSplit+", ORDATE='yyyy-mm-dd',ORGDTE='yyyy-mm-dd', ORTPRC="+bTotal+", ORTCST="+bTotalCost+", ORTMRG="+bTotalMargin+", ORQTY="+bTotalQty+",ORMODL='"+bModel+"',ORCO='"+bPlant+"',ORSLSF='"+salesfname+"', ORSLSL='"+saleslname+"', ORCUST="+customerJdeNum+", ORPRCD='"+productCode+"',ORDAUT='"+discountNumber+"',ORUSER='"+salesmanId+"' where ORGORN = "+oracleId+"";
pUpdateDb2Query = db2.prepareStatement(updateDb2Query, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rsUpdateDb2Query = pUpdateDb2Query.executeQuery();
rsUpdateDb2Query.close();  pUpdateDb2Query.close();
0
Comment
Question by:gdlp2004
  • 6
  • 5
  • 3
14 Comments
 
LVL 37

Expert Comment

by:zzynx
Comment Utility
Make

      pUpdateDb2Query.executeQuery();


     pUpdateDb2Query.updateQuery();

and see if it's better


0
 
LVL 37

Expert Comment

by:zzynx
Comment Utility
I mean t

       pUpdateDb2Query.executeUpdate();

of course ;°)
0
 
LVL 30

Expert Comment

by:mayankeagle
Comment Utility
Also, I think that you can do away with the rsUpdateDb2Query altogether. Just make it:

pUpdateDb2Query.updateQuery () ;
0
 
LVL 30

Expert Comment

by:mayankeagle
Comment Utility
>> pUpdateDb2Query.executeUpdate();

Copied from zzynxie's ;-) do the correction as he said.
0
 

Author Comment

by:gdlp2004
Comment Utility
The compiler does not recognize the executeUpdate method.  Is it because I used ResultSet.CONCUR_READ_ONLY in my prepared statement.
0
 
LVL 37

Expert Comment

by:zzynx
Comment Utility
>> The compiler does not recognize the executeUpdate method
??? It shoulc
http://java.sun.com/j2se/1.4.2/docs/api/java/sql/Statement.html#executeUpdate(java.lang.String)
0
 
LVL 30

Expert Comment

by:mayankeagle
Comment Utility
>> Is it because I used ResultSet.CONCUR_READ_ONLY in my prepared statement.

No. What code are you using? Can you post it? I'm sure something else is wrong.
0
Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

 
LVL 37

Accepted Solution

by:
zzynx earned 500 total points
Comment Utility
Replace the line

      rsUpdateDb2Query = pUpdateDb2Query.executeQuery();

of your original code by

      pUpdateDb2Query.executeUpdate();
0
 

Author Comment

by:gdlp2004
Comment Utility
The code is in the question statement.
0
 
LVL 37

Expert Comment

by:zzynx
Comment Utility
>> The code is in the question statement.
The original, yes.
But we can't see where you placed the executeUpdate() statement in the changed code.
0
 

Author Comment

by:gdlp2004
Comment Utility
OH, sorry!
0
 

Author Comment

by:gdlp2004
Comment Utility
String updateDb2Query = og query
pUpdateDb2Query = db2.prepareStatement(updateDb2Query, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
//rsUpdateDb2Query = pUpdateDb2Query.executeUpdate();
//updateDb2Query.executeUpdate();
//rsUpdateDb2Query.close();  pUpdateDb2Query.close();
pUpdateDb2Query.executeUpdate();

Here is the new code and it compiles. I am testing it now.
0
 

Author Comment

by:gdlp2004
Comment Utility
The new code works.  Thank you
0
 
LVL 37

Expert Comment

by:zzynx
Comment Utility
>> The new code works.  Thank you
Great. You're welcome
Thanks for accepting
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Suggested Solutions

For customizing the look of your lightweight component and making it look opaque like it was made of plastic.  This tip assumes your component to be of rectangular shape and completely opaque.   (CODE)
INTRODUCTION Working with files is a moderately common task in Java.  For most projects hard coding the file names, using parameters in configuration files, or using command-line arguments is sufficient.   However, when your application has vi…
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
This video teaches viewers about errors in exception handling.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now