Difference between revisions of "SQLQuery"
From SCAR Divi Manual
(Created page with "==Definition== <source lang="scar" lines="false"> function SQLOpen(const Path: string; const CreateIfNotFound: Boolean): Integer; </source> ==Availability== SCAR Divi 3.31 > Cur...") |
|||
| Line 1: | Line 1: | ||
==Definition== | ==Definition== | ||
<source lang="scar" lines="false"> | <source lang="scar" lines="false"> | ||
| − | + | procedure SQLQuery(const DBIndex: Integer; const Query: string); | |
</source> | </source> | ||
Revision as of 23:46, 9 February 2012
Definition
procedure SQLQuery(const DBIndex: Integer; const Query: string);
Availability
SCAR Divi 3.31 > Current
Description
Allows you to execute a "simple" SQLite3 query statement Query on an open database connection specified by DBIndex. If you would like to retrieve data from the database, use parameter binding and/or have more control over your database interactions, you should use SQLQueryEx.
Example
var
DB, Query, InsertID: Integer;
begin
DB := SQLOpen(WorkspacePath + 'test.db3', True);
try
// Create a table
SQLQuery(DB, 'CREATE TABLE IF NOT EXISTS test(id INTEGER PRIMARY KEY, string TEXT)');
// Insert 2 rows into the table
Query := SQLQueryEx(DB, 'INSERT INTO test VALUES(NULL, ?)');
try
SQLBindStr(Query, 1, 'Hello Mars!');
SQLQueryStep(Query);
SQLQueryReset(Query);
SQLBindStr(Query, 1, 'Hello World!');
SQLQueryStep(Query);
InsertID := SQLLastID(DB);
finally
SQLQueryFree(Query);
end;
// Get the data stored in the last row
Query := SQLQueryEx(DB, 'SELECT * FROM test WHERE id = ?');
try
SQLBindInt(Query, 1, InsertID);
if SQLQueryStep(Query) = SQL_ROW then
WriteLn(SQLColumnStr(Query, 1));
finally
SQLQueryFree(Query);
end;
finally
SQLFree(DB);
end;
end.Output:
Hello World!