Warum ich MySQL nicht mag
Online seit 2017‑12‑03 in IT
-
InnoDB unterstützt Transaktionen, aber DDL-Befehle werden damit nicht behandelt.
-
Befehle zur Tabellenerzeugung der Art
CREATE TABLE Tabelle1 ( Spalte1 INT UNSIGNED REFERENCES Tabelle2 (Spalte1) )
werden zwar ohne Fehlermeldung geparsed und ausgeführt. Dabei wird der Fremdschlüssel aber nicht erstellt. Stattdessen muss man folgende Syntax verwenden:
CREATE TABLE Tabelle1 ( Spalte1 INT UNSIGNED, FOREIGN KEY Spalte1 REFERENCES Tabelle2 (Spalte1) )
-
Trigger werden nicht ausgeführt, wenn sie von Fremdschlüsselabhängigkeiten ausgelöst werden würden. Dieser Fehler ist schon seit 2005 bekannt.