Back to Drizzle Orm

Migrations with Drizzle Kit

src/content/docs/kit-custom-migrations.mdx

latest1.9 KB
Original Source

import CodeTab from '@mdx/CodeTab.astro'; import CodeTabs from '@mdx/CodeTabs.astro'; import Section from '@mdx/Section.astro'; import Tab from '@mdx/Tab.astro'; import Tabs from '@mdx/Tabs.astro'; import Callout from '@mdx/Callout.astro'; import Npm from '@mdx/Npm.astro'; import Npx from '@mdx/Npx.astro'; import Steps from '@mdx/Steps.astro'; import Prerequisites from "@mdx/Prerequisites.astro"

Migrations with Drizzle Kit

<Prerequisites> - Get started with Drizzle and `drizzle-kit` - [read here](/docs/get-started) - Drizzle schema fundamentals - [read here](/docs/sql-schema-declaration) - Database connection basics - [read here](/docs/connect-overview) - Drizzle migrations fundamentals - [read here](/docs/migrations) - Drizzle Kit [overview](/docs/kit-overview) and [config file](/docs/drizzle-config-file) - `drizzle-kit generate` command - [read here](/docs/drizzle-kit-generate) - `drizzle-kit migrate` command - [read here](/docs/drizzle-kit-migrate) </Prerequisites>

Drizzle lets you generate empty migration files to write your own custom SQL migrations for DDL alternations currently not supported by Drizzle Kit or data seeding, which you can then run with drizzle-kit migrate command.

shell
drizzle-kit generate --custom --name=seed-users
<Section> ```plaintext {5} šŸ“¦ <project root> ā”œ šŸ“‚ drizzle │ ā”œ šŸ“‚ 20242409125510_init_sql │ ā”” šŸ“‚ 20242409135510_delicate_seed-users ā”œ šŸ“‚ src ā”” … ``` ```sql -- ./drizzle/0001_seed-users.sql

INSERT INTO "users" ("name") VALUES('Dan'); INSERT INTO "users" ("name") VALUES('Andrew'); INSERT INTO "users" ("name") VALUES('Dandrew');

</Section>

### Running JavaScript and TypeScript migrations
We will add ability to run custom JavaScript and TypeScript migration/seeding scripts in the upcoming release, you can follow [github discussion](https://github.com/drizzle-team/drizzle-orm/discussions/2832).