如何使用 Drizzle ORM 创建数据迁移?

问题描述 投票:0回答:1

我可以使用 Drizzle 工具包创建数据库并运行架构更改,但我不知道如何使用它进行数据迁移。我从 Django 获得了经验,您可以手动创建也支持自定义 Python 代码的迁移文件。在那里你可以运行任何代码/SQL 等来将数据插入到数据库中。它还确保(数据)迁移仅运行一次。

如何使用 Drizzle 实现这一目标?

drizzle-kit generate:pg
仅检查架构更改,因此我无法仅使用它添加数据。

typescript orm database-migration drizzle
1个回答
0
投票

您可能已经解决了这个问题,但您需要运行此脚本

node -r esbuild-register src/db/index.ts

在index.ts文件中,有这样的东西:

import { drizzle, PostgresJsDatabase } from 'drizzle-orm/postgres-js';
import { migrate } from 'drizzle-orm/postgres-js/migrator';
import postgres from 'postgres';

console.log(process.env.DATABASE_URL);
const connectionString = process.env.DATABASE_URL || '';
const migrationsClient = postgres(connectionString, {
    max: 1,
});
const db = drizzle(migrationsClient);
migrate(db, { migrationsFolder: 'drizzle' });

© www.soinside.com 2019 - 2024. All rights reserved.