Symbian3/SDK/Source/GUID-13C95985-D16F-5A9E-A7F8-CAB637C4C6ED.dita
changeset 0 89d6a7a84779
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Symbian3/SDK/Source/GUID-13C95985-D16F-5A9E-A7F8-CAB637C4C6ED.dita	Thu Jan 21 18:18:20 2010 +0000
@@ -0,0 +1,18 @@
+<?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 xml:lang="en" id="GUID-13C95985-D16F-5A9E-A7F8-CAB637C4C6ED"><title>DBMS Overview</title><shortdesc>Provides an interface to relational databases. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody><section><title>Purpose</title> <p id="GUID-844F756E-1670-5D24-8D63-2092ABE3354C"> The DBMS component provides an interface to relational databases. It enables you to create and access databases either from a single client or from multiple clients sharing access over a server. </p> </section> <section><title>Required background</title> <p>To use DBMS you need a knowledge of relational databases and the SQL query language. </p> </section> <section><title>Key concepts and terms</title> <dl><dlentry><dt>Store database </dt> <dd><p>A client-side single client database stored in permanent file stores, implemented by <xref href="GUID-F4A68645-2265-307F-B951-8295827E000B.dita"><apiname>RDbStoreDatabase</apiname></xref>  </p> </dd> </dlentry> <dlentry><dt>Named database </dt> <dd><p>A database allowing simultaneous read/write access by multiple clients, implemented by <xref href="GUID-6433D7F9-B4C7-39DA-BEF4-5EA22B8478A2.dita"><apiname>RDbNamedDatabase</apiname></xref>  </p> </dd> </dlentry> </dl> </section> <section><title>Architecture</title> <p>DBMS defines a general relational database access API, and allows different database implementations to be provided of which there are two: a small and relatively lightweight client-side implementation; and, for when multiple clients must have write access to a database, a client-server implementation. </p> <p>When multiple clients can access the same database, transactions ensure that only one client can change data at a time. </p> <p>The <xref href="GUID-21CF1D5F-44C5-5407-B3C9-8BC103C97079.dita">File Stores</xref> API defines a sophisticated file storage, called permanent file stores, that allows individual entries in a file to be modified. The database implementations use these stores for the underlying data storage. </p> <fig id="GUID-6907C48E-3E72-5FED-B5E5-67C6F6922ED9"><title>
+             DBMS Class Diagrams
+          </title> <image href="GUID-6A482ACB-D39E-578B-B58B-44E4142A5897_d0e331643_href.png" placement="inline"/></fig> </section> <section><title>DBMS Summary</title> <p>DBMS provides the following: </p> <ul><li id="GUID-CA46F9A6-15C2-5584-A907-9D1DD79C8711"><p> <b>Database Management System Library</b>  </p> <p> <filepath>edbms.dll</filepath>  </p> </li> <li id="GUID-8D01F878-BCA7-5F88-AC31-BEA68B0739CD"><p> <b>Database Management System Server</b>  </p> <p> <filepath>edbsrv.exe</filepath>  </p> </li> </ul> </section> <section><title>APIs</title> <table id="GUID-E682487D-23AC-5A0A-89F5-568D73452AF1"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>API</entry> <entry>Description</entry> </row> </thead> <tbody><row><entry><p> <xref href="GUID-E11B1981-CA78-3660-AE09-AD3B4D453733.dita"><apiname>RDbDatabase</apiname></xref>  </p> </entry> <entry><p>Abstract database class. </p> </entry> </row> <row><entry><p> <xref href="GUID-F4A68645-2265-307F-B951-8295827E000B.dita"><apiname>RDbStoreDatabase</apiname></xref>  </p> </entry> <entry><p>Implements <codeph>RDbDatabase</codeph> as a store database. </p> </entry> </row> <row><entry><p> <xref href="GUID-6433D7F9-B4C7-39DA-BEF4-5EA22B8478A2.dita"><apiname>RDbNamedDatabase</apiname></xref>  </p> </entry> <entry><p>Implements a named database. </p> </entry> </row> <row><entry><p> <xref href="GUID-F861EB8F-F621-3E77-8F9A-5E4EFC4E9C2F.dita"><apiname>RDbRowSet</apiname></xref>  </p> </entry> <entry><p>The base class for all rowset types. </p> </entry> </row> <row><entry><p> <xref href="GUID-90ABFA73-6374-367C-BAA9-88CD810035CC.dita"><apiname>RDbTable</apiname></xref>  </p> </entry> <entry><p>Provides access to table data as a rowset. </p> </entry> </row> <row><entry><p> <xref href="GUID-AE1BEF00-5AA7-3F03-95B0-9E40395EDA6C.dita"><apiname>RDbView</apiname></xref>  </p> </entry> <entry><p>Generates rowsets from an SQL query. </p> </entry> </row> <row><entry><p> <xref href="GUID-A7C9FEFA-A9A9-357F-AF66-FA3A288AF925.dita"><apiname>TDbQuery</apiname></xref>  </p> </entry> <entry><p>A wrapper for an SQL string combined with a text comparison mode. </p> </entry> </row> <row><entry><p> <xref href="GUID-E53A90DF-3589-34BD-B7C3-02371567AF41.dita"><apiname>TDbWindow</apiname></xref>  </p> </entry> <entry><p>Describes the desired shape of a view's pre-evaluation window. </p> </entry> </row> <row><entry><p> <xref href="GUID-53AB4535-A859-3A8C-8344-53865B2FE0B4.dita"><apiname>RDbNotifier</apiname></xref>  </p> </entry> <entry><p>Provides notification of database changes to clients. </p> </entry> </row> </tbody> </tgroup> </table> </section> <section><title>Typical uses</title> <p>DBMS is very well suited to applications with small to medium-sized datasets, where the total record count is less than 10,000 and the database size is less than 512KB. It scales reasonably well to larger datasets with total record counts less than 100,000 and database sizes less than 10MB. </p> <p>DBMS is a suitable database engine for applications such as: </p> <ul><li id="GUID-3638AC16-C761-5FEE-BFE1-C516C5674C88"><p>address books </p> </li> <li id="GUID-7C3E01B0-898A-5FC0-9C48-EB7D998C878D"><p>call logs </p> </li> <li id="GUID-B8F92167-446A-5CB0-A5A6-998B2E1ED9A4"><p>message stores. </p> </li> </ul> </section> </conbody><related-links><link href="GUID-F4875493-6501-56FC-90E5-5EEAA89A72C3.dita"><linktext>Persistent Storage Overview</linktext> </link> <link href="GUID-EACA05F0-7291-535C-82BC-16DF3AAA417E.dita"><linktext>Interface to DBMS databases
+                overview</linktext> </link> <link href="GUID-12CB6E0E-69CD-51A6-8966-3621CB26E1CD.dita"><linktext>DBMS rowsets overview</linktext> </link> <link href="GUID-7BE83158-B818-57E4-9A8C-43E5D2C84687.dita"><linktext>DBMS columns, column sets, and
+                keys overview</linktext> </link> <link href="GUID-C61B979A-921A-5756-8D7E-691C3DDD3437.dita"><linktext>DBMS sharing databases
+                overview</linktext> </link> <link href="GUID-120163D6-2E49-5D91-A746-2C8C4C944461.dita"><linktext>DBMS incremental operations
+                overview</linktext> </link> <link href="GUID-21CF1D5F-44C5-5407-B3C9-8BC103C97079.dita"><linktext>File stores overview</linktext> </link> </related-links></concept>
\ No newline at end of file