drizzle-kit check

本指南假定您已熟悉:

drizzle-kit check 命令可让你检查已生成的 SQL migrations 历史是否一致。

当你有多个开发者同时在项目上工作,并且在不同分支上修改数据库 schema 时,这非常有用 - 了解更多关于 团队 migrations




drizzle-kit check 命令要求你指定 dialect,你可以通过 drizzle.config.ts 配置文件或通过 CLI 选项来提供它

使用配置文件
作为 CLI 选项
// drizzle.config.ts
import { defineConfig } from "drizzle-kit";

export default defineConfig({
  dialect: "mssql",
});
npx drizzle-kit check

一个项目中有多个配置文件

当项目中有多个数据库阶段或在同一项目中有多个数据库时,你可以在项目里使用多个配置文件,这非常有用:

npm
yarn
pnpm
bun
npx drizzle-kit check --config=drizzle-dev.config.ts
npx drizzle-kit check --config=drizzle-prod.config.ts
📦 <项目根目录>
 ├ 📂 drizzle
 ├ 📂 src
 ├ 📜 .env
 ├ 📜 drizzle-dev.config.ts
 ├ 📜 drizzle-prod.config.ts
 ├ 📜 package.json
 └ 📜 tsconfig.json

忽略冲突

如果你需要 check 命令跳过可交换性检查并绕过它,可以使用 --ignore-conflicts。如果你会用到它,那么很有可能是 drizzle-kit 没有正确检查 migrations,这是一个 bug。请把你的情况反馈给我们,以便我们修复它

drizzle-kit check --ignore-conflicts

配置项扩展列表

我们建议通过 drizzle.config.ts 文件来配置 drizzle-kit,但如果需要,例如在 CI/CD 流水线等场景中,你也可以通过 CLI 提供全部配置选项。

dialectrequired你正在使用的数据库方言。可以是 postgresql mysql sqlite turso singlestore mssql cockroach 中的一种
outmigrations 文件夹,默认=./drizzle
config配置文件路径,默认=drizzle.config.ts

npm
yarn
pnpm
bun
npx drizzle-kit check --dialect=mssql
npx drizzle-kit check --dialect=mssql --out=./migrations-folder