Um den spezifischen Fehler zu finden, führen Sie Folgendes aus:
SHOW ENGINE INNODB STATUS;
Und schauen Sie im LATEST FOREIGN KEY ERROR nach Abschnitt.
Der Datentyp für die untergeordnete Spalte muss genau mit der übergeordneten Spalte übereinstimmen. Zum Beispiel seit medicalhistory.MedicalHistoryID ist ein INT , Patient.MedicalHistory muss auch ein INT sein , kein SMALLINT .
Außerdem sollten Sie die Abfrage set foreign_key_checks=0 ausführen vor dem Ausführen der DDL, sodass Sie die Tabellen in einer beliebigen Reihenfolge erstellen können, anstatt alle übergeordneten Tabellen vor den relevanten untergeordneten Tabellen erstellen zu müssen.