Re: [S] Re: Problems with non scrollable cursors
От | Daniele Bufarini |
---|---|
Тема | Re: [S] Re: Problems with non scrollable cursors |
Дата | |
Msg-id | 41F4B798.60408@ie-online.it обсуждение исходный текст |
Ответ на | Re: Problems with non scrollable cursors (Kris Jurka <books@ejurka.com>) |
Ответы |
Re: [S] Re: Problems with non scrollable cursors
|
Список | pgsql-jdbc |
Kris Jurka wrote: >On Fri, 21 Jan 2005, Daniele Bufarini wrote: > > > >>I'm developing a web application. I haveto know exactly how many pages I >>have and I have to allow the user to jump to a specific page( this is >>where I used limit and offset): I know that this solution is VERY slow >>and I tried to use cursors.... BUT (from PostgreSQL docs): >>" The Statement must be created with a ResultSet type of >>ResultSet.TYPE_FORWARD_ONLY. This is the default, so no code will need >>to be rewritten to take advantage of this, but it also means that you >>cannot scroll backwards or otherwise jump around in the ResultSet." !!! >>So I cannot, for example, use the ResultSet.absolute() to jump back in >>the result set! >> >> > >You are kind of out of luck. The only way a scrollable cursor will be >faster than a limit/offset is if you use it multiple times. To use it >multiple times you need to keep this cursor open across numerous page >requests. This is a complicated piece of backend state because it may >take up significant server resources and then there is the business of >"finding" this cursor again when the user comes back. Are you really >going to try and keep an open database connection for every user? Not in >any web app that I know. > >Kris Jurka > > Actually using the cursor multiple time is what I was thinking... In fact, I can keep an open database connection only for large result set and use a one time connection for all the others. My problem is that I cannot scroll back using a cursor... I'm wondering If I have to modify the jdbc driver or the back end or if there are other solutions, less time consuming... Daniele Bufarini -- .-----------------------------------------------------------------. | Daniele Bufarini Informazioni Editoriali I.E. S.p.A. | | software architect Via Bergonzoli 1/5 - 20127 Milano (IT)| | Tel: +3902283151 Fax: +390228315900 | | http://www.ie-online.it daniele.bufarini@ie-online.it | | There are only two truly infinite things, the universe and human| | stupidity; I am unsure of the former. - Albert Einstein | '-----------------------------------------------------------------'
В списке pgsql-jdbc по дате отправления: