我不知道如何爲此制定合適的標題。問題如下 - 團隊經理可以將事件添加到我的網站中的組中,當添加事件時,已選擇該組的成員需要作爲與會者自動添加到事件中。問題在於,有些用戶可能已經選擇他們參加該活動,然後纔將其添加到該組中,以便他們的記錄與參與者一起存在表中,並且我的觸發器上會出現Duplicate entry
錯誤。MySQL多行插入跳過現有記錄
我想問一下如何在2列上仍然有一個主鍵 - 即不允許同一用戶插入events_attendees
與event_id
相同,但在多插入的情況下仍插入其他行?
表組
group_id | group_name ...
表用戶
user_id | user_name ...
表事件
event_id | event_name ...
表groups_members
group_id | user_id | autoJoinEvents
表groups_events
group_id | event_id
表events_attendees`
event_id | user_id
所討論的觸發器是groups_events
上AFTER INSERT
INSERT INTO events_attendees (event_id, user_id)
SELECT NEW.event_id, user_id
FROM groups_members
WHERE group_id = NEW.group_id AND autoJoinEvents = 1
,但我得到'blah blah檢查代碼對應於'IGNORE''旁邊的blah blah – 2014-11-22 16:32:20
語法是'INSERT IGNORE ...'我冒昧地編輯你的答案。謝謝! – 2014-11-22 16:55:26
謝謝,我有種混合兩種可能的方式來做到這一點。 INSERT IGNORE有一個小小的警告,但對於你的用例,它應該可以正常工作。 – amenadiel 2014-11-22 17:27:03