如果在另一個表中有一個值與另一個表中的值匹配,但是該值本身不是鍵,那麼如何防止MySQL中的INSERT或UPDATE?答案必須是FOREIGN KEY約束,但我不確定它是如何處理多列和非關鍵字段的。MySQL防止用外鍵插入
我自己的情況是這樣的:
對於這個表USERDATA使用這些值:
ID | USER_ID | UUID
1 29 aaa
2 29 bbb
3 30 ccc
,並用INSERT後這些值,其中userdata_uuid裁判UUID和receiver_id裁判user_id說明
此表關係ID | USERDATA_UUID | RECEIVER_ID
1 aaa 29
2 aaa 30
3 bbb 29
4 bbb 30
5 ccc 29
6 ccc 30
我該如何防止描述用戶與他們自己的用戶數據有關係的插入?有了這些數據,在RELATIONS上插入後所需的結果是:
ID | USERDATA_UUID | RECEIVER_ID
1 aaa 30
2 bbb 30
3 ccc 29
希望這是有道理的,謝謝。
關係中的哪些列是不可空的? – peterm
我發佈的那些都是不可空的。 –