Zdefiniowałeś ograniczenie klucza obcego na NameID kolumna tj. w tabeli PHONE używając insert dla tabeli telefonów przekazałeś domyślne dla NameID , ale NameID wskazuje na NAME tabeli i oczekiwanie na wstawiony identyfikator rekordu z NAME tabela nie ma wartości domyślnej zgodnie z dokumentacją
Więc twoja druga wstawka może używać wstawionego if z NAME tabela jak
INSERT INTO NAME (NameID, NAME) VALUES (DEFAULT, 'John Doe');
INSERT INTO PHONE (NameID, PhoneNumber, NumType) VALUES (LAST_INSERT_ID(), '706-782-4719', 'Home');
Możesz pobrać wyniki z obu tabel, dołączając do nich
select * from NAME
JOIN PHONE
USING (NameID)
Jak uzyskać unikalny identyfikator dla Ostatnio wstawiony wiersz