A library for interacting with SQLite databases
lib | ||
src | ||
.gitignore | ||
package-lock.json | ||
package.json | ||
README.md | ||
webpack.config.js |
PawSQLite
PawSQLite is a library for interacting with SQLite databases. Through the use of multiple adapters for various environments, it provides a simple API that abstracts out implementation specific quirks.
Installation
You can install using npm:
npm install -s git+https://git.n0m.org/n0m/PawSQLite.git
In order to actually use PawSQLite, you must also install an adapter for your specific environment. Currently, adapters are available for the following environments:
WebSQL:
PawSQLite-WebSQL-Adapter: https://git.n0m.org/n0m/PawSQLite-WebSQL-Adapter
Apache Cordova:
PawSQLite-Cordova-Adapter: https://git.n0m.org/n0m/PawSQLite-Cordova-Adapter
Node.js via Sqlite3 package:
PawSQLite-Node-Adapter: https://git.n0m.org/n0m/PawSQLite-Node-Adapter
Usage
const PawSQLite = require("pawsqlite");
const PawSQLiteWebSQLAdapter = require("pawsqlite-websql-adapter");
PawSQLite.registerAdapter(PawSQLiteWebSQLAdapter)
const db = await PawSQLite.open("test", {
adapter: 'PawSQLiteWebSQLAdapter'
});
await db.sql(`
CREATE TABLE contacts (
contact_id INTEGER PRIMARY KEY,
first_name TEXT NOT NULL,
last_name TEXT NOT NULL
);
`);
const transaction = db.transaction();
console.log(await db.sql("SELECT * FROM contacts"));
await transaction.sql(
"INSERT INTO contacts (first_name, last_name) VALUES (?, ?)",
"John",
"Lennon"
);
await transaction.commit();
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.