blob: 64bf317318b5e475a5122de21f6a50d6ecee6070 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
// /scripts/seedProjects.ts (예시 경로)
import db from "@/db/db"
import { projects } from "@/db/schema/projects"
import { faker } from "@faker-js/faker"
import { eq } from "drizzle-orm"
async function main() {
console.log("Seeding projects...")
// (선택) 기존 데이터 삭제
await db.delete(projects)
// N개의 프로젝트 생성
const NUM_PROJECTS = 10
for (let i = 0; i < NUM_PROJECTS; i++) {
// 무작위 프로젝트 코드 (ex: "P-1234")
const projectCode = `P-${faker.number.int({ min: 1000, max: 9999 })}`
// 무작위 프로젝트 이름 (ex: "Project" + adjective/noun)
const projectName = `Project ${faker.word.adjective()} ${faker.word.noun()}`
// Insert
const [inserted] = await db
.insert(projects)
.values({
code: projectCode,
name: projectName,
})
.returning({ id: projects.id })
console.log(`Inserted Project #${inserted.id}: ${projectCode} - ${projectName}`)
}
console.log("Seeding projects completed.")
process.exit(0)
}
// 실행
main().catch((err) => {
console.error(err)
process.exit(1)
})
|