Använd inte samma kolumn för båda främmande nycklarna. Detta kallas ibland polymorfa associationer , och det bryter mot reglerna för bra databasdesign.
Det borde vara en ledtråd att det är en dålig design, att en FOREIGN KEY-begränsning endast stöder en refererad tabell. Det finns inget stöd för polymorfa associationer i standard SQL.
Skapa istället två kolumner, en för en referens till Användare, den andra för en referens till SystemProcesses. En kolumn per refererad tabell.
Logs
uid (INT) UsersID (INT) SystemProcessesID (INT) Action
1 2 NULL Jane Doe did this
2 1 NULL John Doe did that
3 1 1 Hitman just killed John Doe
Om det inte finns någon relevant referens för varken kolumnen Användare eller Systemprocesser, använd NULL för att indikera att det inte finns något tillämpligt värde.
Du kanske vill recensera andra frågor jag har svarat på om polymorfa associationer .