<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License
"Eclipse Public License v1.0" which accompanies this distribution,
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
Nokia Corporation - initial contribution.
Contributors:
-->
<!DOCTYPE concept
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-12CB6E0E-69CD-51A6-8966-3621CB26E1CD" xml:lang="en"><title>DBMS
rowsets overview</title><shortdesc>DBMS rowsets allow data contained in a database to be retrieved,
searched, and modified.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<section id="GUID-33E7933A-C5A2-4159-8858-422C60E57BDA"><title>Description</title> <p>The API has three key concepts: rowset
base, table rowset, and SQL view. </p> <p><b>Rowset
base</b> </p> <p>Rowsets provide the following:</p> <ul>
<li id="GUID-5EC6A9C9-2C0F-5141-A600-815C61FA5DC8"><p>retrieving data from
a database</p> </li>
<li id="GUID-145F724B-4AFF-5987-9DC1-C94D5FE9C54C"><p>navigating the rowset
with a cursor</p> </li>
<li id="GUID-BD487F4B-D14F-5575-95BB-2A1A5ECBC020"><p>row finding and matching </p> </li>
<li id="GUID-56F7E17F-3009-5E2C-A015-CF09D03C98F1"><p>updating or inserting
rows</p> </li>
<li id="GUID-FE9D6B32-74CE-54C7-8DBB-C7578673282F"><p>getting the schema of
the rows within the rowset</p> </li>
<li id="GUID-FA52E8CD-8943-560F-8613-BF7D0E6A05A8"><p>extracting and setting
columns in a row</p> </li>
</ul> <p>A base class is defined for all rowset types by <xref href="GUID-F861EB8F-F621-3E77-8F9A-5E4EFC4E9C2F.dita"><apiname>RDbRowSet</apiname></xref>.
Concrete types of rowset derive from this.</p> <p><b>Table rowset</b> </p> <p>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 <xref href="GUID-90ABFA73-6374-367C-BAA9-88CD810035CC.dita"><apiname>RDbTable</apiname></xref>. </p> <p><b>SQL view</b> </p> <p>This provides a rowset based on an SQL query. It
is provided by <xref href="GUID-AE1BEF00-5AA7-3F03-95B0-9E40395EDA6C.dita"><apiname>RDbView</apiname></xref>. An SQL query is encapsulated in <xref href="GUID-A7C9FEFA-A9A9-357F-AF66-FA3A288AF925.dita"><apiname>TDbQuery</apiname></xref>.</p> <p>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 <xref href="GUID-E53A90DF-3589-34BD-B7C3-02371567AF41.dita"><apiname>TDbWindow</apiname></xref>.</p> </section>
</conbody></concept>