[comp.databases] Oracle next/prev row selection

jim@bilpin.UUCP (Jim G) (03/31/89)

    #{ v_databases.5 }
    Further to my original posting on this a few weeks ago, subsequent to 
    which progress has been made ...
    We're writing a group of functions to interface between an Oracle
    back-end and a suite of C programs originally written for a non-Oracle
    file structure. We're using 'dynamic SQL', as the functions are to be
    generally applicable to all applications within the suite. To handle
    'previous row' we are having to cache the old rows read (max 3 previous)
    as there is no equivalent SQL function.

    Now, the question is, how to move the row data to the cache, and shuffle
    it up and down efficiently? The SQLDA structure allocated by sqlald() is
    just a load of pointers which, for any specific cursor, will always have
    the same values - the data items pointed to could be all over the place.
    Does anyone know how sqlald() allocates its space for the descriptor
    area, and whether it would be feasible to memcpy() a block containing
    all the column data for the current row to the cache, and then copy it
    back to the real descriptor area if that row became current again?
-- 
	   <Path: mcvax!ukc!icdoc!bilpin!jim> <UUCP: jim@bilpin.uucp>
			 Always look on the dark side -
	 you'll never be disappointed, and often pleasantly surprised.