如何复制 1000 条记录并更改其 ID?
how to duplicate 1000 records and change their id?
我有一个问题,如何在 prisma 中复制数据库中的基础数据:
[
{"id":"6a9122b2-363b-4a4f-ad26-d6c55b51baed","title":"TailwindCSS"},
{"id":"2ea8cfb0-44a3-4c07-bdc2-31ffa135ea78","title":"Apollo GraphQL"}
]
我想复制此行 x 1000,并将每条记录的 ID 更改为独立 ID。
我该怎么办?
您可以使用像 uuid 这样的 npm 包来生成 ID 并在插入数据时使用它们。
您可以像这样生成 UUID:
import { v4 as uuidv4 } from 'uuid';
uuidv4(); // ⇨ '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'
考虑此架构:
model Courses {
id String @id
title String
}
您可以这样插入记录:
for (let i = 0; i < 1000; i++) {
const id = uuidv4();
await prisma.courses.create({
data: {
id: id,
title: 'TailwindCss',
},
});
}
另一种方法是在架构文件中定义 default
,这样您就可以自动为您生成 UUID。
这就是您定义默认 ID 的方式
model Courses {
id String @id @default(cuid())
title String
}
我有一个问题,如何在 prisma 中复制数据库中的基础数据:
[
{"id":"6a9122b2-363b-4a4f-ad26-d6c55b51baed","title":"TailwindCSS"},
{"id":"2ea8cfb0-44a3-4c07-bdc2-31ffa135ea78","title":"Apollo GraphQL"}
]
我想复制此行 x 1000,并将每条记录的 ID 更改为独立 ID。 我该怎么办?
您可以使用像 uuid 这样的 npm 包来生成 ID 并在插入数据时使用它们。
您可以像这样生成 UUID:
import { v4 as uuidv4 } from 'uuid';
uuidv4(); // ⇨ '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'
考虑此架构:
model Courses {
id String @id
title String
}
您可以这样插入记录:
for (let i = 0; i < 1000; i++) {
const id = uuidv4();
await prisma.courses.create({
data: {
id: id,
title: 'TailwindCss',
},
});
}
另一种方法是在架构文件中定义 default
,这样您就可以自动为您生成 UUID。
这就是您定义默认 ID 的方式
model Courses {
id String @id @default(cuid())
title String
}