You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.3 KiB
59 lines
1.3 KiB
# Nano Sqlite
|
|
|
|
Functions and Classes for handle Sqlite in [Bun](https://bun.sh/).
|
|
|
|
## API
|
|
|
|
### getOrCreateSqlite(options = {})
|
|
|
|
As options the default Parameters from [Bun](https://bun.sh/docs/api/sqlite) are available. The uri of the Sqlite can be set in the .env-file,
|
|
|
|
```
|
|
NANO_SQLITE_PATH="./../storage/db.sqlite"
|
|
```
|
|
|
|
or by Parameter in options,
|
|
|
|
```
|
|
const db = getOrCreateSqlite({ uri: './../storage/db.sqlite' })
|
|
const db = getOrCreateSqlite({ uri: ':memory:' })
|
|
```
|
|
|
|
Per Default WAL mode is enabled. To disable add Parameter "wal" and set to false,
|
|
|
|
```
|
|
const db = getOrCreateSqlite({ uri: './../storage/db.sqlite', wal: false })
|
|
```
|
|
|
|
### runMigrationSqlite(filePath: string, db: object)
|
|
|
|
This functions Reads SQL-Files from a Directory and execute them in the Sqlite.
|
|
|
|
### Store
|
|
|
|
Store is a Abstract Class to extend a Class for an Single Table. Set the name of the table in super(). There is no handling of columns or validating if the exists.
|
|
|
|
```
|
|
class <store-name>Store extends Store {
|
|
constructor(db) {
|
|
super(db, '<table-name>')
|
|
}
|
|
}
|
|
```
|
|
|
|
#### findOneById(id: integer)
|
|
|
|
Getting single row by id.
|
|
|
|
#### create(data: object)
|
|
|
|
Create a new row in a Table.
|
|
|
|
#### update(id: integer, data: object)
|
|
|
|
Update single row by id.
|
|
|
|
#### remove(id: integer)
|
|
|
|
Remove single row by id.
|