Difference between revisions of "SQLOpen"
From SCAR Divi Manual
Line 60: | Line 60: | ||
[[Category:Functions]] | [[Category:Functions]] | ||
− | [[Category:Database Functions|Open]] | + | [[Category:Database Functions]] |
+ | [[Category:SQLite3 Functions|Open]] |
Revision as of 09:37, 10 February 2012
Definition
function SQLOpen(const Path: string; const CreateIfNotFound: Boolean): Integer;
Availability
SCAR Divi 3.31 > Current
Description
Opens an SQLite3 database at the path given by Path. If CreateIfNotFound is true, it will create a new database at the given path if none is found. The function returns the index for the database in the resource system or -1 if the function failed or in case CreateIfNotFound is false, when there was no file at the given path. You can free an open database connection with SQLFree.
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!