Re: Large queries; fetchsize, cursors and limit/offset

From: "David Wall" <d(dot)wall(at)computer(dot)org>
To: "Rod Taylor" <rbt(at)rbt(dot)ca>
Cc: <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: Large queries; fetchsize, cursors and limit/offset
Date: 2003-11-03 23:49:56
Message-ID: 078101c3a265$3e8c8920$3201a8c0@rasta
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Does anybody have some sample code that shows how to declare a simple cursor
and fetch it 100 rows at a time, for example? I'm curious how to formulate
this. It sounds like I need to keep the same Connection object, which is
good info to have. How do I issue the DECLARE CURSOR and FETCH (using
PreparedStatement.execute() with the FETCH being an executeQuery() so that I
get a result set back)?

From what I gather, the SQL itself looks something like:

DECLARE my_cursor CURSOR FOR SELECT x,y,z FROM abc_table WHERE x>4;

FETCH 100 FROM my_cursor;

CLOSE cursor;

What do I call when I'm doing the DECLARE CURSOR, versus the FETCH versus
the CLOSE commands?

Does anybody know if this sort of code would then work in Oracle 8i if I
used a modified set of Oracle commands, i.e. something like:

DECLARE CURSOR my_cursor FOR SELECT x,y,z FROM abc_table WHERE x>4;
END;

FOR 100 FETCH my_cursor; ??? No "host variables" with JDBC so I'm not sure
I can do this since the syntax implies an "INTO" clause for using host
variables.

Thanks,
David

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Dave Cramer 2003-11-04 00:01:23 Re: Large queries; fetchsize, cursors and limit/offset
Previous Message Rod Taylor 2003-11-03 23:15:05 Re: Large queries; fetchsize, cursors and limit/offset