| From: | Guido Fiala <guido(dot)fiala(at)dka-gmbh(dot)de> |
|---|---|
| To: | pgsql-jdbc(at)postgresql(dot)org |
| Subject: | Re: updatable resultsets -> SQLException: -1 |
| Date: | 2004-01-21 08:10:41 |
| Message-ID: | 200401210906.17946.guido.fiala@dka-gmbh.de |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-jdbc |
Am Mittwoch, 21. Januar 2004 03:11 schrieben Sie:
> > rs.updateString(2,"abc");
> > rs.updateRow();
> > rs.previous();//show some other record
> > rs.next();//go back to modified one
> > //now the above record has strangely enough vanished from my ResultSet
> > !!! //how do i get it back? (the ResulSet gives me at that position the
> > values of the previous-record instead) rs.updateString(2,"xyz");
> > rs.updateRow();//now i get the SQLException -1
>
> You have apparently not navigated back to the original row. The attached
> program shows the error you are getting. The error message is completely
> unhelpful here, but it is your code that isn't working.
The question is for me - would have the above code navigate back to the same record?
For me it looks like this:
(see attached code, it throws no excpetion)
The result is with one next():
a b
1 zzz
2 aaa
3 world
But i would expect it should be:
a b
1 hello
2 zzz
3 world
Do i need to requery the ResultSet to get the updated record back?
I would have to remember the primary-key of the record i was editing, to be able to jump back to the correct record after requery.
Which would be going through a loop until i find my record again as i can not assume that the records are ordered by primary key.
What a waste of CPU!
Am i supposed to actually do that?
Guido
| Attachment | Content-Type | Size |
|---|---|---|
| updaters2.java | text/x-java | 2.5 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Paul Thomas | 2004-01-21 08:28:25 | Re: a little disillusioned |
| Previous Message | Jonathan Gold | 2004-01-21 06:40:20 | Re: a little disillusioned |