Vous avez défini une contrainte de clé étrangère sur NameID
colonne c'est-à-dire dans la table PHONE
en utilisant insert pour la table de téléphone, vous avez passé par défaut contre NameID, mais NameID pointe vers NAME
table et s'attendant à avoir l'ID d'enregistrement inséré de NAME
table, il n'a pas de valeur par défaut selon les docs
Ainsi, votre deuxième insert peut utiliser l'insertion si de NAME
tableau comme
INSERT INTO NAME (NameID, NAME) VALUES (DEFAULT, 'John Doe');
INSERT INTO PHONE (NameID, PhoneNumber, NumType) VALUES (LAST_INSERT_ID(), '706-782-4719', 'Home');
Et vous pouvez récupérer les résultats des deux tables en les joignant
select * from NAME
JOIN PHONE
USING (NameID)
Comment obtenir l'identifiant unique pour le Dernière ligne insérée