5.0.2 • Published 5 months ago
fastify-sqlite-typed v5.0.2
Fastify SQLite Typed Plugin
SQLite integration plugin for Fastify
Effortlessly incorporate SQLite databases into your Fastify applications using fastify-sqlite-typed
. This plugin leverages node-sqlite3
and node-sqlite
for effective database operations.
For Fastify V 4.X.X click here
Additional Resources
node-sqlite3
Documentation: https://github.com/TryGhost/node-sqlite3node-sqlite
Documentation: https://github.com/kriasoft/node-sqlite- To work effectively with the database, it's recommended to read node-sqlite3 Wiki.
Features
- Seamless integration with Fastify applications
- Configurable SQLite driver
- Multiple database modes supported
- Debugging capabilities with query tracing
- Support for both in-memory and disk-based databases
Installation
npm install fastify-sqlite-typed
# or
yarn add fastify-sqlite-typed
Usage
Import and register the plugin with your Fastify instance, and execute a sample query:
import fastify from "fastify";
// With fastify-plugin
import { fpSqlitePlugin } from "fastify-sqlite-typed";
// Without fastify-plugin
// import { sqlitePlugin } from "fastify-sqlite-typed";
const app = fastify();
app.register(fpSqlitePlugin, {
dbFilename: "./myDB.db",
// additional options
});
// Example query
app.get("/users", async (request, reply) => {
const users = await app.db.all("SELECT * FROM users");
reply.send(users);
});
fastify.listen({ port: 3000 }, (err, address) => {
if (err) throw err
})
Options
Option | Description | Type | Default |
---|---|---|---|
dbFilename | Path to the database file (:memory: for in-memory, "" for disk-based). | String | None |
mode | Database mode, combining Dbmode values. | Dbmode | READWRITE \| CREATE \| FULLMUTEX |
driverSettings | Settings for the SQLite driver (see DriverSettings below). | Object | Default settings |
DriverSettings
Option | Description | Type | Default |
---|---|---|---|
verbose | Enables verbose mode for detailed stack traces. | Boolean | false |
cached | Enables database object caching. | Boolean | false |
trace | Function to run on each query execution. | Function | None |
License
Licensed under MIT.