Rowsets provide the following:
retrieving data from a database
navigating the rowset with a cursor
row finding and matching
updating or inserting rows
getting the schema of the rows within the rowset
extracting and setting columns in a row
A base class is defined for all rowset types by
RDbRowSet
. Concrete types of rowset derive from
this.
This provides all the rows and columns of a table as a rowset.
Indexes can be used to order the rowset, and to provide fast key-based row
retrieval from the table. It is encapsulated in RDbTable
.
This provides a rowset based on an SQL query. It is provided by
RDbView
. An SQL query is encapsulated in
TDbQuery
.
For large rowsets, it can be useful to define the balance between
memory usage (greatest if the view stores the complete rowset) and speed
(slowest if the rowset is evaluated for each cursor navigation). This is called
the pre-evaluation window, and is provided by
TDbWindow
.