diff --git a/readme.md b/readme.md index 236425f..cea7032 100644 --- a/readme.md +++ b/readme.md @@ -77,156 +77,3 @@ Running with CLI options ```shell npm run generate ``` - -### Configuration - -Instead of passing arguments to the CLI commands, you can also create a `drizzle.config.json` configuration file: - -```json -{ - "out": "./migrations-folder", - "schema": "./src/db", - "breakpoints": false -} -``` - -* `out` - path to the output directory where migrations will be saved, -* `schema` - path to TypeScript schema file or folder with multiple schema files, -* `breakpoints` - whether to execute each statement in the migrations individually. Set to `true` if you are using SQLite or MySQL (as they don't support multiple DDL statements in a transaction). - ---- - -## Upgrading to 0.17.0 - -Before running any new migrations `drizzle-kit` will ask you to upgrade first - -Migration file structure < 0.17.0 - -```plaintext -📦 - └ 📂 migrations - └ 📂 20221207174503 - ├ 📜 migration.sql - ├ 📜 snapshot.json - └ 📂 20230101104503 - ├ 📜 migration.sql - ├ 📜 snapshot.json -``` - -Migration file structure >= 0.17.0 - -```plaintext -📦 - └ 📂 migrations - └ 📂 meta - ├ 📜 _journal.json - ├ 📜 0000_snapshot.json - ├ 📜 0001_snapshot.json - └ 📜 0000_icy_stranger.sql - └ 📜 0001_strange_avengers.sql -``` - -To easily migrate from previous folder structure to new you need to run `up` command in drizzle-kit. It's a great helper to upgrade your migrations to new format on each drizzle kit major update - -![](media/up_mysql.gif) ---- - -## List of commands - -### Generate SQL migrations based on current .ts schema - ---- - -**`$ drizzle-kit generate:pg`** \ -**`$ drizzle-kit generate:mysql`** \ -**`$ drizzle-kit generate:sqlite`** - -`--config` [optional default=drizzle.config.json] config file path\ -`--schema` path to typescript schema file or folder with multiple schema files\ -`--out` [optional default=drizzle/] migrations folder\ -`--breakpoints` [optional default=false] whether to execute each statement in the migrations individually\ - -```shell -$ drizzle-kit generate:pg -## runs generate command with drizzle.config.json - -$ drizzle-kit generate:pg --config=./custom.config.json -## runs generate command with custom.config.json - -$ drizzle-kit generate:pg --schema=./src/schema.ts -## runs generate command and outputs results to ./drizzle - -$ drizzle-kit generate:pg --schema=./src/schema.ts --out=./migrations/ -## runs generate command and outputs results to ./migration -``` - -**Generate an empty SQL migration with `--custom`** - -```shell -$ drizzle-kit generate:pg --custom -## runs generate command and outputs an empty migration for custom SQL -``` - -### Introspect existing database and generate typescript schema - ---- - -**`$ drizzle-kit introspect:pg`** \ -**`$ drizzle-kit introspect:mysql`** - -```shell -drizzle-kit introspect:pg --out=migrations/ --connectionString=postgresql://user:pass@host:port/db_name - -drizzle-kit introspect:pg --out=migrations/ --host=0.0.0.0 --port=5432 --user=postgres --password=pass --database=db_name --ssl -``` - -![](media/introspect_mysql.gif) - -### Update stale snapshots - ---- - -**`$ drizzle-kit up:pg`** \ -**`$ drizzle-kit up:mysql`** \ -**`$ drizzle-kit up:sqlite`** - -`--out` [optional] migrations folder\ -`--config` [optional default=drizzle.config.json] config file path - -```shell -## migrations folder is taken from drizzle.config.json -drizzle-kit up:mysql - -drizzle-kit up:mysql --out=migrations/ -``` - -![](media/up_mysql.gif) - -### Drop migration - ---- - -**`$ drizzle-kit drop`** - -`--out` [optional] migrations folder\ -`--config` [optional default=drizzle.config.json] config file path - -![](media/drop.gif) - -### Migrations collisions check - ---- - -**`$ drizzle-kit check:pg`** \ -**`$ drizzle-kit check:mysql`** \ -**`$ drizzle-kit check:sqlite`** - -`--out` [optional] migration folder\ -`--config` [optional default=drizzle.config.json] config file path - -```shell -## migrations folder is taken from drizzle.config.json -drizzle-kit check:pg - -drizzle-kit check:pg --out=migrations/ -```