Hi this is a very basic question and I should know this, but I can't see the clear answer in any manual I have read.
Take a fairly simple static query in the 4GL. This was from the sports2000 db.
FOR EACH Customer
WHERE comments CONTAINS "hold" NO-LOCK:
/* Point A */
END.
Now lets say there are 1,000 records that match. The word index brackets nicely.
At Point A on the first iteration, what work has been done on the server in regard to records brought into the database buffer pool?
Specifically, have all the matching records been called into the database buffer pool by now?
Have all the index blocks been read, so all the results of the search identified by the database manager?
Are we just waiting now for each iteration of the loop to send the record to the client AVM?
Or at point A on each iteration, is that where the record is located in the db buffer pool/read from disk as needed?
I'm fine about the I/O and scanning of the buffer pool work, I'll take that for granted it happens.
And for now I'm not fussed about using a dynamic query. Although it would be nice to know how many results I have before pulling records over to the client.
Thanks in advance
Take a fairly simple static query in the 4GL. This was from the sports2000 db.
FOR EACH Customer
WHERE comments CONTAINS "hold" NO-LOCK:
/* Point A */
END.
Now lets say there are 1,000 records that match. The word index brackets nicely.
At Point A on the first iteration, what work has been done on the server in regard to records brought into the database buffer pool?
Specifically, have all the matching records been called into the database buffer pool by now?
Have all the index blocks been read, so all the results of the search identified by the database manager?
Are we just waiting now for each iteration of the loop to send the record to the client AVM?
Or at point A on each iteration, is that where the record is located in the db buffer pool/read from disk as needed?
I'm fine about the I/O and scanning of the buffer pool work, I'll take that for granted it happens.
And for now I'm not fussed about using a dynamic query. Although it would be nice to know how many results I have before pulling records over to the client.
Thanks in advance