fuse-sqlite
v0.12.0
Published
SQLite package for Fuse Open.
Downloads
2
Readme
Fuse SQLite bindings
Library to use SQLite in Fuse.
Currently supports ios
, android
and dotnet
(Fuse Preview).
Issues, feature requests and pull requests are welcome.
Install
Using npm
$ npm install fuse-sqlite
(Legacy) Using fusepm
$ fusepm install https://github.com/fuse-open/fuse-sqlite
Usage:
Check out the example app for a complete example project using TypeScript.
UX
<SQLite ux:Global="SQLite" />`
JS or TypeScript
import sqlite from "SQLite";
const db = sqlite.open("file.sqlite");
db.execute("create table if not exists ids (id integer primary key)");
db.execute("insert into ids values (?)",2);
const r = db.query("select * from ids");
console.log(JSON.stringify(r));
It returns an array:
[
{"field1":"value1","field2":"value2"},
{"field1":"value1","field2":"value2"}
]
API
import
import sqlite from "SQLite";
require (legacy)
const sqlite = require('SQLite');
sqlite.open
Opens a file that contains a SQLite database
const db = sqlite.open(filename);
sqlite.openFromBundle
Opens a file that contains a SQLite database, possibly from the bundle
const db = sqlite.openFromBundle(filename);
And in the unoproj
:
"Packages": [
"Fuse",
"FuseJS",
"SQLite"
],
"Includes": [
"*.ts",
"*.ux",
"bundle.sqlite:Bundle"
]
db.execute
Executes a query. Does not return anything.
db.execute(sql_statement);
db.execute(sql_statement, var1, var2, var3);
db.query
Executes a query. Returns an array of hashes with the result.
const result = db.query(sql_statement);
const result = db.query(sql_statement, var1, var2, var3);
db.prepare
Prepares a query. Returns a prepared statement.
const statement = db.prepare(sql_statement);
statement.execute(var1,var2,var3);
db.close
Closes the database.
db.close();
Possible future functionality
- Cursor support
- Async support
- Bundled pre-made databases
Known Issues
- Error messages is a bit different between the targets
- Support for JavaScript and CMake Fuse targets is not planned.
Windows
- The sqlite3.dll is downloaded from http://www.sqlite.org/download.html
- Mono.Data.Sqlite.dll is included from Mono.
Errors:
Failed to load assembly . . . have caused the assembly to be sandboxed . . .
You need to Unblock dll's that you downloaded.
- https://navbis.wordpress.com/2014/03/17/what-to-do-if-the-dll-assemblies-are-blocked-by-windows/
- http://superuser.com/questions/38476/this-file-came-from-another-computer-how-can-i-unblock-all-the-files-in-a