Tietokannan skeeman migraatiot
Hallinnoi tietokannan skeeman muutoksia Prisma Migraten avulla sujuvaa kehitystä ja julkaisua varten
Tietokannan skeeman migraatiot on ilmainen Next.js 15 -fullstack-kehitys (App Router + Server Actions)-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Next.js 15 -fullstack-kehitys (App Router + Server Actions)-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Next.js 15 -fullstack-kehitys (App Router + Server Actions)-kurssilla on yhteensä 4 oppituntia.
Mitä tietokantamigraatiot ovat?
Sovelluksen kehittyessä myös sen tietokantarakenne eli skeema muuttuu.
Tietokantamigraatiot ovat tietokannan skeeman versionhallintaa. Niiden avulla tietokantarakenteen muutoksia voidaan hallita hallitusti ja seurata.
- Ne varmistavat, että tietokanta vastaa sovelluksen tarpeita.
- Ne estävät tietojen katoamisen skeeman muutosten aikana.
- Ne tarjoavat selkeän historian kaikista skeeman muutoksista.
Miksi käyttää Prisma Migratea?
Tietokannan skeeman muutosten hallinta manuaalisesti voi olla monimutkaista ja altista virheille. Prisma Migrate yksinkertaistaa tätä prosessia huomattavasti.
- Automaattinen luonti: Se luo SQL-migraatiotiedostot Prisma-skeemaan tehtyjen muutosten perusteella.
- Historian seuranta: Se säilyttää luettelon sovelletuista migraatioista, mikä helpottaa palautuksia ja tiimityötä.
- Yhtenäiset ympäristöt: Se varmistaa, että kehitys-, staging- ja tuotantotietokannoissa on oikea skeema.
Prisma-skeematiedosto
Prisma Migrate käyttää tiedostoa schema.prisma tietokannan skeeman totuuden lähteenä. Kaikki tietokantarakenteeseen tehtävät muutokset aloitetaan tästä tiedostosta.
Palautetaan mieleen schema.prisma-tiedoston perusmääritys:
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
model User {
id Int @id @default(autoincrement())
name String
posts Post[]
}
model Post {
id Int @id @default(autoincrement())
title String
content String?
published Boolean @default(false)
author User @relation(fields: [authorId], references: [id])
authorId Int
}Ensimmäisen migraation alustaminen
Kun olette määrittäneet Prisma-skeeman ensimmäisen kerran, haluatte luoda alustavan migraation, jolla skeema otetaan käyttöön tietokannassa. Tähän käytetään komentoa prisma migrate dev.
Tämä komento tekee kaksi pääasiaa:
- Luo uuden migraatiotiedoston (SQL) kansioon
prisma/migrations. - Soveltaa migraation tietokantaan.
npx prisma migrate dev --name initial_setupMigraatiotiedostojen ymmärtäminen
Kun olette suorittaneet komennon npx prisma migrate dev, Prisma luo uuden kansion hakemistoon prisma/migrations. Kansion nimessä ovat aikaleima ja antamanne nimi (esimerkiksi 20231026123456_initial_setup).
Kansion sisältä löydätte:
migration.sql: Tämä tiedosto sisältää Prisman luomat SQL-komennot tietokantataulujen luomista tai muuttamista varten.migration.jstaimigration.ts: (TypeScriptiä tai JavaScriptiä käytettäessä) Migraation metatiedot.
Nämä tiedostot on tärkeää tallentaa versionhallintajärjestelmään!
Skeeman muuttaminen
Oletetaan, että haluatte lisätä email-kentän User-malliin. Päivitätte vain tiedoston schema.prisma.
Prisma tunnistaa tämän muutoksen ja auttaa luomaan uuden migraation.
model User {
id Int @id @default(autoincrement())
name String
email String @unique // Added new field
posts Post[]
}Uuden migraation luominen
Kun olet muokannut tiedostoa schema.prisma, suorita npx prisma migrate dev uudelleen. Prisma vertaa päivitettyä skeemaa tietokannan nykyiseen tilaan ja luo uuden migraatiotiedoston.
Sen jälkeen se ottaa uuden migraation käyttöön ja lisää email-sarakkeen User-tauluun.
npx prisma migrate dev --name add_user_emailMigraatioiden käyttöönotto tuotannossa
Tuotantoympäristöissä käytetään yleensä komentoa npx prisma migrate deploy. Tämä komento ottaa käyttöön kaikki tietokannasta vielä puuttuvat migraatiot.
Toisin kuin migrate dev, deploy ei luo uusia migraatiotiedostoja, vaan ottaa käyttöön ainoastaan olemassa olevat migraatiot. Siksi se sopii turvallisesti ja ennakoitavasti tuotantoon julkaisemiseen.
npx prisma migrate deployMigraatioiden tilan tarkistaminen
Voit tarkistaa komennolla npx prisma migrate status, mitkä migraatiot on otettu käyttöön tietokannassa ja mitkä ovat vielä odottamassa.
Tämä on hyödyllistä vianmäärityksessä ja sen varmistamisessa, että tietokanta vastaa sovelluksesi odotettua skeemaa.
npx prisma migrate statusPrisma Migrate -komentojen tietovisa
Mitkä seuraavista väitteistä kuvaavat oikein Prisma Migrate -komentojen käyttötarkoitusta?
Kertaus: skeeman migraatiot
Hienoa työtä! Olette oppinut hallitsemaan tietokannan skeemaa tehokkaasti Prisma Migrate -työkalun avulla.
- Prisma Migrate auttaa hallitsemaan tietokannan skeeman versioita.
- Määrittelette skeeman muutokset tiedostossa
schema.prisma. npx prisma migrate devluo ja ottaa migraatiot käyttöön kehitysympäristössä.npx prisma migrate deployottaa olemassa olevat migraatiot käyttöön tuotantoympäristössä.npx prisma migrate statustarkistaa migraatioiden nykyisen tilan.
Tämä tehokas työkalu varmistaa, että tietokannan rakenne pysyy sovelluksesi tarpeiden mukaisena ja yhdenmukaisena sovelluksen kasvaessa.
Opi TypeScript tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 22
- Oppitunnit
- 88
Usein kysytyt kysymykset
Onko oppitunti ”Tietokannan skeeman migraatiot” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Next.js 15 -fullstack-kehitys (App Router + Server Actions)-oppimispolun 3 oppituntia, myös oppitunnin “Tietokannan skeeman migraatiot”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Next.js 15 -fullstack-kehitys (App Router + Server Actions)-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Tietokannan skeeman migraatiot”?
Hallinnoi tietokannan skeeman muutoksia Prisma Migraten avulla sujuvaa kehitystä ja julkaisua varten Harjoittelet Next.js 15 -fullstack-kehitys (App Router + Server Actions)-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Next.js 15 -fullstack-kehitys (App Router + Server Actions)-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Next.js 15 -fullstack-kehitys (App Router + Server Actions)-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”Tietokannan skeeman migraatiot”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Next.js 15 -fullstack-kehitys (App Router + Server Actions)-oppitunnilla?
Kyllä. Jokainen Next.js 15 -fullstack-kehitys (App Router + Server Actions)-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Prisma ORM:n määrittäminen
- CRUD Server Actions -toiminnoilla
- Tietokannan skeeman migraatiot
- Tietokannan alustaminen ja yhteyksien poolaus