> -----Original Message-----
> From: Hannu Krosing [mailto:[EMAIL PROTECTED] 
> 
> Hiroshi Inoue kirjutas E, 31.03.2003 kell 03:40:
> 
> > 2) dynamic
> >    It can detect any changes made to the membership, order,
> >    and values of the result set after the cursor is opened.
> 
> What would it mean in practice, i.e. if you are on the first 
> row in the
> cursor and then update tha ORDER BY field so that your row becomes the
> last one, will the next FETCH move the cursor past end ?

No. The row next to the old first row would be FETCHed.
 
> what happens, if the row you are on is removed from the keyset, either
> by current or any other backend ?

The dynamic cursor doesn't see the row any longer.
 
> What about the case when you have moved past the last row, 
> and suddenly
> a new row appears which is positioned after the last row ?

The dynamic cursor would see the new row when it is fetched backwards.
 
> What about when you are moving over several rows that have the same
> ordering position and then one more appears - should it go before or
> after the current position ?

It is implementation dependent.
 
> > 3) keyset-driven
> >    It always detects changes to the values of rows.
> 
> What about _new_ rows, 

It never detects new rows. 

> or rows that no more belong to the "keyset" ?

They are the same as deleted ones.
 
> > 4) mixed
> >    A combination of a keyset-driven cursor and a dynamic
> >    cursor.   
> 
> Combined in what way ?

It uses a limited keyset size. If a fetch operation doesn't fit in
the range of the keyset, it dynamically fetches the result set.
 
> > It's not clear to me now how we should realize the above
> > type of cursors at server side.
> 
> >From your short description it is not even clear for me how *exactly*
> should they behave.

I only intended to illustrate various type of visibilities roughly
because
there were no such reference in this thread.

regards,
Hiroshi Inoue


---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://archives.postgresql.org

Reply via email to