我有一个带有 2 个外键的表,它们引用另一个表中的相同字段。如果两个外键中的至少一个被删除,我知道如何定义外键约束来删除我的表条目。但是,如果至少有一个外键仍然存在,我想保留表条目?
CREATE TABLE PrivateMessages
...
INDEX(FromEmail, ToEmail),
FOREIGN KEY(FromEmail, ToEmail)
REFERENCES Users(Email, Email)
ON UPDATE CASCADE
ON DELETE CASCADE,
...
该表存储两个用户之间的消息。如果两个用户不再存在,我只想删除消息。也许,有没有更好的方法来实现这一点?