This tutorial describes how to insert a row into a table.
You can insert a single row or several rows in a table. To insert several rows the SQL statement needs to be called in a loop until the condition is satisfied.
The high level steps for inserting a row into a table are shown here:
An INSERT
query
adds data to the database. The example shown here inserts a new record into
the countries database.
Configure the SQL statement
Declare the necessary
literals as shown and instantiate an object of the RSqlStatement
class.
_LIT(kQueryString,"INSERT INTO countries (name, population) VALUES (:value1, :value2);"); _LIT(kValue1,":value1); _LIT(kValue2,":value2"); _LIT(kItaly,"Italy"); RSqlStatement myStatement;
Prepare the SQL statement for execution.
TInt err; err = myStatement.Prepare(countriesDatabase,kQueryString); // prepare
Get the index of each of the parameters with the given name and bind it with the text and integer value respectively.
TInt index1 = myStatement.ParameterIndex(kValue1); // index TInt index2 = myStatement.ParameterIndex(kValue2); err = myStatement.BindText(index1,kItaly); err = myStatement.BindInt(index2,59); // bind
Execute the statement
Execute the SQL statement to insert a record.
err = myStatement.Exec();// execute
Close the SQL statement.
err = myStatement.Close();// close
Note
To add several rows to a data table you need to call an INSERT statement within a loop. The following example inserts rows containing numbers 1 to 10 into the countries database. Steps 1 and 2 of the above list remain the same. The remaining steps are as shown below:
Get the index of the parameter.
TInt index1 = myStatement.ParameterIndex(kValue1); // index
Iterate the loop 10
times by binding the integer value of the variable i with the parameter. Then
execute the INSERT
statement to insert a new record into
the table. Finally, call the Reset()
function to reset the
SQL statement and make it ready for the next execution.
for(TInt i=1;i<=10;i++) { err = myStatement.BindInt(index1,i); err = myStatement.Exec(); // execute err = myStatement.Reset() }
Inserting a Row into a Table - This document