Sie haben eine Fremdschlüsseleinschränkung für NameID
definiert Spalte d.h. in der Tabelle PHONE
Mit Einfügen für die Telefontabelle haben Sie den Standardwert für NameID übergeben, aber NameID zeigt auf NAME
Tabelle und erwartet die eingefügte Datensatz-ID von NAME
Tabelle hat keinen Standardwert gemäß der Dokumentation
Ihre zweite Einfügung kann also das eingefügte if von NAME
verwenden Tabelle wie
INSERT INTO NAME (NameID, NAME) VALUES (DEFAULT, 'John Doe');
INSERT INTO PHONE (NameID, PhoneNumber, NumType) VALUES (LAST_INSERT_ID(), '706-782-4719', 'Home');
Und Sie können Ergebnisse aus beiden Tabellen abrufen, indem Sie sich ihnen anschließen
select * from NAME
JOIN PHONE
USING (NameID)
So erhalten Sie die eindeutige ID für die Letzte eingefügte Zeile