Subject Re: [IBO] Re: Fw: Keylinks questions
Author Helen Borrie
At 11:19 AM 19/06/2003 +0000, you wrote:


>Defining keylinks by hand is no option. So I guess we have to accept
>the extra memory use.

Why? If all you are doing is walking through the set and converting data
to HTML, then the transition from tib_query to tib_cursor will take you
mere minutes to change a bunch of them. It was never "too late" - it is
such a tiny change for such a big gain. IB_Cursor doesn't buffer the set,
only the row it is currently looking at - then - poof! it's gone. You get
the next row into the row buffer by calling Next.

Changes:
In the DFM file
Keep the same object names, just change their class to tib_cursor. You can
do this "out-of-line" with a text editor if you are using Delphi 5 or
higher, and then you can use Search-and-Replace.

In the PAS file change all the declarations, again search and replace.
In the dataset objects:
Change Open to First
Use Next to step through the rows
FetchWholeRows is irrelevant, as there is only one row's keys in the
KeyFields buffer.
All the column methods are identical.
You can't use Locate but if you have a non-gui interface, you won't be
doing that anyway.

Helen