fuse-sqlite

SQLite package for Fuse Open.


Keywords
fuse, sqlite, database, databases
License
MIT
Install
npm install fuse-sqlite@0.12.0

Documentation

Fuse SQLite bindings

NPM package License: MIT

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

Errors: