Registry / database / data-migration

data-migration

JSON →
library2.17.0jsnpmunverified

data-migration v2.17.0 provides interfaces and utilities for creating database migration drivers and processors. It includes SQL file support for up/down scripts, TypeScript types, and integrates with Lerna for monorepo management. Released under ISC license, it is actively maintained on GitHub with a weekly download rate. Differentiators include a simple API for custom drivers and built-in SQL task abstraction.

npm install data-migration
INSTALL
IMPORT
SIG · DATA-MIGRATION
D
data-migration
databasejavascriptv2.17.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

MigrationScript
import { MigrationScript } from 'data-migration'
const { MigrationScript } = require('data-migration')
ESM import is preferred; TypeScript types included.
SqlFile
import { SqlFile } from 'data-migration/lib/tasks/sql'
import { SqlFile } from 'data-migration'
SqlFile is not exported from the main entry; must import from subpath.
default (migration script)
export default { ... } as MigrationScript;
module.exports = { ... };
For ESM modules, use default export with MigrationScript type assertion.

Defines a migration script using SqlFile task with up/down SQL files.

import { MigrationScript } from 'data-migration'; import { SqlFile } from 'data-migration/lib/tasks/sql'; import * as path from 'path'; const script: MigrationScript = { description: 'Create users table', ...SqlFile({ driverName: 'PgDriver', upFile: path.resolve(__dirname, './sql/up.sql'), downFile: path.resolve(__dirname, './sql/down.sql'), }), }; export default script;
Debug
Known issues
gotchaSqlFile is not exported from the main package entry. Import from 'data-migration/lib/tasks/sql'.
fix
Use correct import path: import { SqlFile } from 'data-migration/lib/tasks/sql'
affects: >=2.0.0
deprecatedThe 'downSql' and 'upSql' string properties on MigrationScript may be deprecated in favor of SqlFile task.
fix
Use SqlFile task with file paths or inline SQL strings.
affects: >=2.0.0
gotchaEnsure your driver names match exactly (e.g., 'PgDriver', 'MysqlDriver'). Case-sensitive.
fix
Check driver documentation for correct name.
affects: >=2.0.0
Errors
Common errors & fixes
Cannot find module 'data-migration/lib/tasks/sql'
Missing or incorrect import path.
fix
Use import { SqlFile } from 'data-migration/lib/tasks/sql'
TypeError: SqlFile is not a function
Importing SqlFile from wrong path or not using named import.
fix
Ensure correct import: import { SqlFile } from 'data-migration/lib/tasks/sql'
Property 'upSql' does not exist on type 'MigrationScript'.
Using deprecated string properties instead of SqlFile task.
fix
Use SqlFile task with upFile and downFile.
Upgrade
Version history
2.17.0latest on npm
Audit
Dependencies
typescriptoptionalTypeScript types are shipped, but the package itself may be used with JavaScript.
Agent activity
9 hits · last 30 days
node
8
Resources
data-migration — npm install data-migration · libregistry