prismaを入れます
Getting started with Prisma Migrate | Prisma Documentation を参考にしました
npm install --save-dev prisma初期化します
npx prisma init --datasource-provider sqlite.env と prisma/schema.prisma が作られます
.env は .gitignore に入れておいたほうがいいです
prisma/schema.prisma が
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "sqlite"
url = env("DATABASE_URL")
}になっています
model User {
id Int @id @default(autoincrement())
email String @unique
name String?
}を追記して、データベースに反映していきます
自分でかかずに、他のデータからインポートするときは Prismaでsqliteのデータベースからスキーマを作る にまとめてあります
スキーマの書き方は Models | Prisma Documentation あたりを見て書きます
migrationします
npx prisma migrate dev --name initこれで prisma/migrations/20240921070138_init/migration.sql ファイルが作らsqliteに反映されました
sqliteのデータベースファイルは ./prisma/dev.db に作られています
sqliteつないでみるには SQLiteの使い方 を参考にしてください
prisma/schema.prisma にmodelを増やしてみます
model User {
id Int @id @default(autoincrement())
name String
posts Post[]
}
model Post {
id Int @id @default(autoincrement())
title String
published Boolean @default(true)
authorId Int
author User @relation(fields: [authorId], references: [id])
}npx prisma migrate dev --name add_postこれで prisma/migrations/20240921070510_add_post/migration.sql ファイルが作られました
schema.prisma を変更、migrate dev でマイグレーションファイルを作っていくのが基本でよさそうです
migrationファイルを作らずに、直接データベースを変更するには
npx prisma db push一から環境を作るときにはすべてのマイグレーションファイルを適用するには
prisma migrate deployPrisma clientを生成するには
npx prisma generateデータベースをリセットしたかったら
npx prisma migrate reset最低限抑えられたかとおもいます
PR
このリンクは、アフィリエイトリンクです