Ben Ashton
3 years ago
1 changed files with 62 additions and 0 deletions
@ -0,0 +1,62 @@
|
||||
# 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: |
||||
|
||||
```bash |
||||
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](https://git.n0m.org/n0m/PawSQLite-WebSQL-Adapter) |
||||
|
||||
|
||||
### Apache Cordova: |
||||
PawSQLite-Cordova-Adapter: [https://git.n0m.org/n0m/PawSQLite-Cordova-Adapter](https://git.n0m.org/n0m/PawSQLite-Cordova-Adapter) |
||||
|
||||
|
||||
### Node.js via Sqlite3 package: |
||||
Coming Soon! |
||||
|
||||
## Usage |
||||
|
||||
```javascript |
||||
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. |
||||
|
||||
## License |
||||
[MIT](https://choosealicense.com/licenses/mit/) |
Loading…
Reference in new issue