Symbian3/SDK/Source/GUID-BDC03973-45B0-54BD-99D1-298F4F59DB95.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 21 Jan 2010 18:18:20 +0000
changeset 0 89d6a7a84779
permissions -rw-r--r--
Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385

<?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-BDC03973-45B0-54BD-99D1-298F4F59DB95"><title>How to execute SQL incrementally</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>DDL and DML statements can be executed incrementally.</p> <section><title>Incremental execution of a DDL statement</title> <p>The following code fragment illustrates the incremental execution of a DDL statement. In practice, this is no better than direct execution but shows the 'end conditions' for running <codeph>RDbIncremental</codeph>.</p> <codeblock id="GUID-BC862C15-ACC4-5D29-A814-358C88116B6F" xml:space="preserve">_LIT(KTxt,"DROP TABLE Suppliers");
...
RDbIncremental op;
TInt step;
TInt r=op.Execute(database,KTxt,step);
while (step&gt;0 &amp;&amp; r==KErrNone)
    {
    r=op.Next(step);
    }
op.Close();
...
// r has the error code from the operation</codeblock> </section> <section><title>Incremental execution of a DML statement</title> <p>The following code fragment is an example of driving the incremental execution of a DML statement to completion.</p> <codeblock id="GUID-F25A1017-B103-530C-B426-54098A696014" xml:space="preserve">_LIT(KTxt,"DELETE FROM Suppliers");
...
RDbUpdate update;
TInt r=update.Execute(database,KTxt);
while (r&gt;0)
    {
    r=op.Next();
    }
op.Close();
...
// r has the error code from the operation
// update.RowCount() returns the number of rows deleted, if successful</codeblock> </section> </conbody></concept>