knex-migration-utils v0.0.17
Knex Migration Utils
Tool | Description |
---|---|
kgm | Automatically generate migrations for your database based on the differences between its current state and its state during the last migration generation. |
kgt | Automatically generate database types for use with the typed-knex package. |
kgm — Knex Generate Migration
Automatically generate a knex migration file based on the changes made to the database since the last generation.
This tool currently only supports the PostgreSQL
dialect.
Usage
$ kgm [migration_name] [options ...]
Examples
Generate a migration called drop_table
:
$ kgm drop_table
Reset the migration state to the current state of the database:
$ kgm -r
Generate a migration called create_table
in typescript, using meta_schema
as the metadata schema and subfolder/my_config_file
as the config module:
$ kgm create_table -t -s meta_schema -c subfolder/my_config_file
Generate a migration called drop_index
, in the my_migrations
folder:
$ kgm drop_index -m my_migrations
Options
-f, --filename string
Specifies the name of the migration file to generate.
Note that a timestamp is automatically appended to the start of the given name.
If the given migration name is migration
,
then the file containing the migration might be called 20220514170206_migration.js
.
-c, --config string
Specifies the name of the configuration module to use to connect to the database.
-m, --migrations string
Specifies the output folder for the generated migrations.
-s, --schema string
Specifies the schema in which to store the database metadata in order to compute the changes when generating a migration.
-t, --typescript
Generate the resulting migration in a TypeScript file instead of JavaScript file.
-r, --reset
Reset the database metadata to the current database state. Attempting to generate a migration immediately after resetting the database metadata will result in no changes found.
--help
Display the help dialog in the console.
kgt — Knex Generate Types
Automatically generate a list of types corresponding to the tables in your database. This tool is meant to be used in conjunction with the typed-knex package.
This tool currently only supports the PostgreSQL
dialect.
Usage
$ kgt [file_name] [options ...]
Examples
Generate database types in the src/types/database.ts
file:
$ kgt src/types/database.ts
Generate database types in the types.ts
file, using subfolder/my_config_file
as the config module:
$ kgt types.ts -c subfolder/my_config_file
Options
-f, --filename string
Specifies the name of the types file to generate (including the extension).
-c, --config string
Specifies the name of the configuration module to use to connect to the database.
--help
Display the help dialog in the console.