Как спроектировать таблицы отношений «один ко многим» с учетом операции обновления?

#mysql

#mysql

Вопрос:

Я могу назначить несколько конкретных получателей при получении нового уведомления. Итак, я создаю таблицы «один ко многим» с именами notice и receiver :

 mysql> select * from notice;
 ---- -------                          
| id | title |                                
 ---- -------                                                                                                         
|  1 | demo  |                                                                                                        
 ---- -------  

mysql> select * from receiver;
 ---- ----------- -------- 
| id | notice_id | name   |
 ---- ----------- -------- 
|  1 |         1 | calvin |
|  2 |         1 | john   |
 ---- ----------- --------     
 

Когда я обновляю уведомление, получатели также могут быть обновлены (при условии, что получатели должны быть обновлены до calvin и Jack). Мое текущее решение — удалить все получатели, связанные с уведомлением, и вставить новые. Есть ли какое-либо лучшее и высокопроизводительное решение? Я могу перепроектировать таблицы, если это необходимо.

Комментарии:

1. похоже, вам нужна очередь сообщений, а не база данных sql.

2. @danblack, уведомление и связанные с ним данные могут быть сохранены как черновик, поэтому мне нужно постоянное хранилище.