1model User {2 id Int @id @default(autoincrement())3 email String @unique4 name String?5}
-- CreateTableCREATE TABLE "User" ("id" SERIAL NOT NULL,"email" TEXT NOT NULL,"name" TEXT,PRIMARY KEY ("id"));-- CreateIndexCREATE UNIQUE INDEX "User.email_unique" IN "User"("email");
迁移是自动生成的,您无需手动编写SQL。
Migrate 生成 SQL 迁移,确保迁移在不同环境中始终产生相同的数据库模式。
生成的 SQL 迁移可以完全定制,让您完全控制具体更改。
迭代
在原型设计阶段,您可以使用 prisma db push
命令快速创建数据库模式,而无需创建迁移。
通过使用 JavaScript、TypeScript 或 Shell 定义数据填充脚本,快速为数据库填充数据。
Migrate 检测数据库模式漂移并协助您解决它们。
部署
Migrate 支持专用工作流,以实现在生产环境中安全地执行迁移。
Migrate 可以集成到 CI/CD 管道中,例如 GitHub Actions,以在部署前自动应用迁移。
Migrate 跟踪已应用的迁移,并提供工具来检测和解决迁移与数据库模式之间的冲突和漂移。
当 Prisma Migrate 与 Prisma Client 结合使用时,模式更改会在您的应用程序代码中进行类型检查。这消除了因数据库模式更改需要修改应用程序代码而产生的错误。
Prisma Migrate 根据 Prisma 模式的变化生成迁移——Prisma 模式是您数据库模式的可读声明性定义。这使您能够专注于期望的数据库模式,而不是实现它的步骤。
通过 Prisma Migrate,生成的迁移会在您的 Git 仓库中进行跟踪,使您能够将数据库模式更改与应用程序代码同步进行。
Prisma Migrate 通过工作流实现流畅协作,使团队在投入生产之前能够轻松地审查和测试数据库模式更改。
Prisma Migrate 可应用于任何使用 PostgreSQL、MySQL、MariaDB、SQL Server、CockroachDB 或 SQLite 的现有项目。