kysely-migrate-sql
v0.2.0
Published
A lightweight Model wrapper for Kysely that provides convenient CRUD operations with full type safety.
Maintainers
Readme
kysely-migrate-sql
Simple SQL-based migration provider for Kysely that lets you define migrations as plain SQL strings while keeping the familiar Migrator API.
Installation
pnpm add kysely-migrate-sql
# or
npm install kysely-migrate-sql
# or
yarn add kysely-migrate-sqlYou also need kysely (peer dependency, >=0.28).
Usage
Quick start
import { Migrator } from 'kysely'
import { SqlMigrator } from 'kysely-migrate-sql'
// Map of migration name -> SQL string
const migrations = {
'001_init.sql': `
create table users (
id integer primary key autoincrement,
name text not null
);
`,
}
const migrator = new SqlMigrator({
db, // your Kysely instance
migrations,
// any other MigratorProps (except "provider") can be passed here
})
const { error } = await migrator.migrateToLatest()
if (error) {
console.error('Migration failed', error)
process.exit(1)
}Using SqlMigrationProvider directly
If you prefer to construct the Migrator yourself:
import { Migrator } from 'kysely'
import { SqlMigrationProvider } from 'kysely-migrate-sql'
const provider = new SqlMigrationProvider({ migrations })
const migrator = new Migrator({
db,
provider,
})SqlMigrationProvider turns each SQL string into a migration whose up function runs that SQL via sql\``.
