Du tilføjer ikke en begrænsning i denne erklæring, du tilføjer begrænsnings :hver af de to FOREIGN KEY-sætninger betyder en separat begrænsning. Stadig ifølge manualen
, bør du være i stand til at tilføje så mange fremmednøglebegrænsninger i en enkelt ALTER TABLE-sætning som nødvendigt. Du skal blot inkludere ADD
før enhver begrænsning.
Bemærk, at begrænsningsnavne gælder individuelt for de begrænsninger, du tilføjer, og derfor vil du måske angive CONSTRAINT name
for den anden fremmednøgle, hvis du ønsker, at den skal have et bestemt navn. Det samme med ON UPDATE/ON DELETE
:de gælder for den fremmednøgle, der er direkte foran dem.
Så det korrigerede udsagn kan se sådan ud:
ALTER TABLE users_role_map
ADD CONSTRAINT FK_users_role_map1
FOREIGN KEY (email) REFERENCES usert(email)
ON UPDATE CASCADE
ON DELETE CASCADE,
ADD CONSTRAINT FK_users_role_map2
FOREIGN KEY (id) REFERENCES rolet(id)
ON UPDATE CASCADE
ON DELETE CASCADE;