Wie funktionieren Migrationen?
Diese Seite wurde von PageTurner AI übersetzt (Beta). Nicht offiziell vom Projekt unterstützt. Fehler gefunden? Problem melden →
Sobald Sie in der Produktion sind, müssen Sie Änderungen an Ihren Modellen mit der Datenbank synchronisieren.
Typischerweise ist es unsicher, synchronize: true für Schema-Synchronisation in der Produktion zu verwenden,
sobald sich Daten in Ihrer Datenbank befinden. Hier kommen Migrationen ins Spiel.
Eine Migration ist lediglich eine einzelne Datei mit SQL-Abfragen, um ein Datenbankschema zu aktualisieren und neue Änderungen auf eine bestehende Datenbank anzuwenden.
Nehmen wir an, Sie haben bereits eine Datenbank und eine Post-Entität:
import { Entity, Column, PrimaryGeneratedColumn } from "typeorm"
@Entity()
export class Post {
@PrimaryGeneratedColumn()
id: number
@Column()
title: string
@Column()
text: string
}
Ihre Entität läuft monatelang ohne Änderungen in der Produktion. Sie haben Tausende von Posts in Ihrer Datenbank.
Jetzt brauchen Sie ein neues Release und möchten title in name umbenennen.
Was würden Sie tun?
Sie müssen eine neue Migration mit folgender SQL-Abfrage erstellen (PostgreSQL-Dialekt):
ALTER TABLE "post" RENAME COLUMN "title" TO "name";
Sobald Sie diese SQL-Abfrage ausführen, ist Ihr Datenbankschema bereit für die neue Codebasis. TypeORM bietet einen Ort, an dem Sie solche SQL-Abfragen schreiben und bei Bedarf ausführen können. Dieser Ort heißt "Migrationen".