@remix-run/data-table-postgres
v0.3.1
Published
PostgreSQL adapter for remix/data-table
Maintainers
Readme
data-table-postgres
PostgreSQL adapter for remix/data-table.
Use this package when you want data-table APIs backed by pg.
Features
- Native
pgIntegration: Works withpgPoolandPoolClientinstances - 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 - Postgres Capabilities Enabled By Default:
returning: truesavepoints: trueupsert: truetransactionalDdl: truemigrationLock: true
Installation
npm i remix pgUsage
import { Pool } from 'pg'
import { createDatabase } from 'remix/data-table'
import { createPostgresDatabaseAdapter } from 'remix/data-table-postgres'
let pool = new Pool({
connectionString: process.env.DATABASE_URL,
})
let db = createDatabase(createPostgresDatabaseAdapter(pool))Use db.query(...), relation loading, and transactions from remix/data-table.
Import any driver-specific types you need directly from pg.
Adapter Capabilities
data-table-postgres reports this capability set by default:
returning: truesavepoints: trueupsert: truetransactionalDdl: truemigrationLock: true
Advanced Usage
Transaction Options
Transaction options are passed through to the adapter as hints.
await db.transaction(async (txDb) => txDb.exec('select 1'), {
isolationLevel: 'serializable',
readOnly: false,
})Related Packages
data-table- Core query/relations APIdata-schema- Schema parsing and validationdata-table-mysql- MySQL adapterdata-table-sqlite- SQLite adapter
License
See LICENSE
