JillionDB

Doku

Risikostufen

Jede Änderung bekommt eine von drei Stufen und einen Grund. Die Stufe sagt, was mit Daten passieren kann, die schon in deiner Datenbank sind.

Sicher

Nichts Bestehendes wird berührt. Eine Tabelle oder leere Spalte hinzuzufügen ist sicher.

Vorsicht

Funktioniert, kann aber an bestehenden Daten scheitern, eine viel genutzte Tabelle eine Weile sperren oder Code mit alten Namen brechen.

Zerstörend

Kann vorhandene Daten löschen oder abschneiden. Lies das zweimal.

Alles, was JillionDB prüft

Das sind genau die Gründe, die du in einer Prüfung siehst.

Sicher
Eine Tabelle hinzufügen
Neue Tabelle; Bestehendes bleibt unberührt.
Sicher
Eine optionale Spalte hinzufügen
Fügt eine leere Spalte hinzu; bestehende Zeilen bleiben unverändert.
Sicher
Einen Typ verlängern oder Optionen ergänzen
Erlaubt längere Werte oder mehr Optionen; bestehende Daten bleiben unverändert.
Sicher
Eine Spalte optional machen
Erlaubt leere Werte; Bestehendes ändert sich nicht.
Sicher
Einen Standardwert ändern
Betrifft nur neue Zeilen.
Sicher
Einen Kommentar ändern
Nur Dokumentation.
Sicher
Eine Beziehung, die mit ihrer Tabelle entfernt wird
Wird mit seiner Tabelle entfernt.
Sicher
Erzeugte Index- und Schlüsselnamen umbenennen
Hält erzeugte Namen mit den neuen Namen im Einklang.
Vorsicht
Eine Tabelle oder Spalte umbenennen
Code, der den alten Namen verwendet, funktioniert erst nach einer Anpassung wieder.
Vorsicht
Eine Pflichtspalte ohne Standardwert hinzufügen
Schlägt fehl, wenn die Tabelle schon Zeilen hat, weil sie keinen Wert dafür haben.
Vorsicht
Eine Spalte hinzufügen, die jede Zeile füllt
Füllt jede bestehende Zeile, schreibt die Tabelle dabei neu und sperrt sie währenddessen.
Vorsicht
Zu einem größeren Typ wechseln
Schreibt die Tabelle auf den größeren Typ um und sperrt sie währenddessen.
Vorsicht
Zwischen Zeiten mit und ohne Zeitzone wechseln
Bestehende Zeiten werden mit der Zeitzone des Servers umgerechnet.
Vorsicht
Einen datenbankspezifischen Typ ändern
Ändert den datenbankspezifischen Typ; prüfe, ob sich bestehende Werte umwandeln lassen.
Vorsicht
Eine Spalte zur Pflicht machen
Schlägt fehl, wenn eine bestehende Zeile leer ist.
Vorsicht
Ändern, wie neue IDs entstehen
Ändert, wie neue IDs entstehen; sie können mit bestehenden kollidieren.
Vorsicht
Eine Keine-Duplikate-Regel hinzufügen
Schlägt fehl, wenn bestehende Zeilen schon doppelt sind.
Vorsicht
Eine Keine-Duplikate-Regel entfernen
Doppelte Werte werden möglich.
Vorsicht
Den Primärschlüssel ändern
Schlägt bei Duplikaten fehl, und Verknüpfungen zu dieser Tabelle müssen eventuell angepasst werden.
Vorsicht
Einen Index hinzufügen
Sperrt bei großen Tabellen Schreibzugriffe, während der Index aufgebaut wird.
Vorsicht
Einen Index entfernen
Abfragen, die ihn genutzt haben, können langsamer werden.
Vorsicht
Eine Beziehung hinzufügen
Prüft jede bestehende Zeile und schlägt fehl, wenn eine nicht passt.
Vorsicht
Eine Beziehung entfernen
Die Datenbank prüft diese Werte nicht mehr.
Vorsicht
Eine Prüfregel hinzufügen
Schlägt fehl, wenn eine bestehende Zeile die Regel verletzt.
Vorsicht
Eine Prüfregel entfernen
Die Datenbank erzwingt diese Regel nicht mehr.
Vorsicht
Tabellenoptionen ändern
Kann die Tabelle neu aufbauen.
Vorsicht
Änderungen, die SQLite nur durch Neuaufbau der Tabelle schafft
SQLite kopiert die Tabelle in eine neue, um diese Änderungen vorzunehmen.
Zerstörend
Eine Tabelle löschen
Löscht die Tabelle und alle ihre Zeilen.
Zerstörend
Eine Spalte löschen
Löscht die Spalte und ihre Daten.
Zerstörend
Einen Typ kürzen oder verkleinern
Werte, die nicht passen, werden abgeschnitten oder lassen die Änderung fehlschlagen.
Zerstörend
Optionen aus einer Liste entfernen
Zeilen mit … lassen die Änderung fehlschlagen.
Zerstörend
Zu einer anderen Art von Typ wechseln
Das Umwandeln bestehender Werte kann fehlschlagen oder Daten verlieren.

Hinweise zur ganzen Migration

Vorsicht
MySQL-Migrationen mit mehreren Schritten
MySQL kann Schemaänderungen nicht auf halbem Weg zurücknehmen: Schlägt ein Schritt fehl, bleiben die früheren angewendet.
Vorsicht
Eine zerstörende Änderung zurückrollen
Beim Zurückrollen werden gelöschte Tabellen und Spalten neu angelegt, ihre Daten aber nicht.