Package Exports
- @remix-run/data-table-sqlite
- @remix-run/data-table-sqlite/package.json
Readme
data-table-sqlite
SQLite adapter for remix/data-table.
Use this package when you want data-table APIs backed by better-sqlite3.
Features
- Native
better-sqlite3Integration: Works well for local and embedded deployments - Full
data-tableAPI Support: Queries, relations, writes, and transactions - Adapter-Owned Compiler: SQL compilation lives in this adapter, with optional shared pure helpers from
data-table - Migration DDL Support: Compiles and executes
DataMigrationOperationoperations forremix/data-table/migrations - SQLite Capabilities Enabled By Default:
returning: truesavepoints: trueupsert: truetransactionalDdl: truemigrationLock: false
Installation
npm i remix better-sqlite3Usage
import Database from 'better-sqlite3'
import { createDatabase } from 'remix/data-table'
import { createSqliteDatabaseAdapter } from 'remix/data-table-sqlite'
let sqlite = new Database('app.db')
let db = createDatabase(createSqliteDatabaseAdapter(sqlite))This is a good fit for local development, embedded deployments, and single-node services.
Import any driver-specific types you need directly from better-sqlite3.
Adapter Capabilities
data-table-sqlite reports this capability set by default:
returning: truesavepoints: trueupsert: truetransactionalDdl: truemigrationLock: false
Advanced Usage
In-Memory Database For Tests
import Database from 'better-sqlite3'
import { createDatabase } from 'remix/data-table'
import { createSqliteDatabaseAdapter } from 'remix/data-table-sqlite'
let sqlite = new Database(':memory:')
let db = createDatabase(createSqliteDatabaseAdapter(sqlite))Related Packages
data-table- Core query/relations APIdata-schema- Schema parsing and validationdata-table-postgres- PostgreSQL adapterdata-table-mysql- MySQL adapter
License
See LICENSE