2010-03-16 6 views
2

J'ai deux tables dans ma base de données: user et call. L'utilisateur existe de 3 champs: id, nom, numéro et appel: id, 'source', 'destination', 'référé', date.Plusieurs clés étrangères dans une table à une autre table dans mysql

J'ai besoin de surveiller les appels dans mon application. Les champs 3 '' ci-dessus sont en fait des numéros d'utilisateur.

Maintenant, je me demande, puis-je faire ces 3 éléments de clé étrangère de champ de l'id-champ dans l'utilisateur de la table?

Répondre

3

Oui - vous pouvez ;-)

suffit de définir les trois clés étrangères pour faire référence à la colonne id dans User.

+0

Aucune infraction de lignes directrices/règles? – Terry

+2

Non - c'est parfaitement valable. –

3

Quelque chose Alike devrait faire le travail:

ALTER TABLE call 
ADD CONSTRAINT fk_call_source_user FOREIGN KEY (source) 
REFERENCES user (id) 

ALTER TABLE call 
ADD CONSTRAINT fk_call_destination_user FOREIGN KEY (destination) 
REFERENCES user (id) 

ALTER TABLE call 
ADD CONSTRAINT fk_call_referred_user FOREIGN KEY (referred) 
REFERENCES user (id) 
0

Alter Table appellent

Ajouter des références FOREIGN KEY (sourceid) Source (Id),

FOREIGN KEY (DESID) références Destination (Id)

Questions connexes