Rumah > Soal Jawab > teks badan
项目中设计好友关系,存储在一张表里面
现有用户id为2和3加为好友
好友关系表:
id | user_id | friend_id |
---|---|---|
1 | 2 | 3 |
2 | 3 | 2 |
这两条数据是否是一样的?还是应该存为一条数据?
后续可能还会有权限相关设计
如:
id | user_id | friend_id | 是否允许查看自己的动态 | 是否查看对方的动态消息 |
---|---|---|---|---|
1 | 2 | 3 | ||
2 | 3 | 2 |
这种情况是存在一张表里面,还是将权限和好友关系分开,单独存一张权限表
迷茫2017-04-18 10:35:38
Anda boleh menyimpan 2 entri dalam jadual perhubungan rakan Lagipun, nampaknya tidak sesuai untuk menyimpan satu entri Anda boleh menyimpan 2 entri untuk menanyakan rakan yang pengguna_idnya ialah 2 select friend_id from table where user_id = 2
. Lebih menyusahkan untuk menyimpan 1 item, select friend_id from table where user_id = 2 union select user_id from table where friend_id=2
. Mari kita pisahkan jadual kebenaran Jadual perhubungan mengekalkan perhubungan dan jadual kebenaran mengekalkan kebenaran. Jangan lakukannya bersama-sama, kerana anda mungkin perlu menambah kebenaran lain pada masa hadapan, dan anda pasti akan menghadapi masalah jika anda meletakkannya dalam satu jadual. Sekurang-kurangnya tidaklah menyusahkan jika kita berpisah. Pengubahsuaian tidak akan menjejaskan jadual perhubungan
PHPz2017-04-18 10:35:38
Bergantung pada keperluan perniagaan, saya secara peribadi berpendapat lebih baik untuk lebih terperinci
ringa_lee2017-04-18 10:35:38
Saya rasa kedua-dua data ini berbeza dari segi keperluan berikutnya yang anda nyatakan Pengguna dengan ID 1 mesti mempunyai lebih daripada seorang rakan dengan ID 2
Tambahan pula, keperluan lain akan direalisasikan kemudian bagus untuk anda menulis bersama
天蓬老师2017-04-18 10:35:38
Dua item.
1. Orang lain ialah kawan anda, tetapi anda mungkin bukan milik orang lain.
2. Tetapan pihak lain untuk anda mungkin tidak sama dengan tetapan anda untuk pihak lain.
Jika anda mempunyai dua keperluan ini. Dua, sebaliknya diperlukan, satu.
伊谢尔伦2017-04-18 10:35:38
Pengalaman saya ialah 2 lebih baik. Pertama: Awak kawan saya, tetapi saya mungkin bukan kawan awak. Kedua: Sangat mudah untuk menyemak rakan dengan cara ini, tetapi menyusahkan untuk menyemak hanya satu pautan.
Selain itu, mari kita pertimbangkan pengembangan Jika kita menukar rakan kepada senarai hitam, kemudian menggunakan 2 item, ia boleh dikembangkan dengan mudah. Lagipun, jika saya menghalang anda, anda mungkin tidak menghalang saya.
伊谢尔伦2017-04-18 10:35:38
Dua, sama seperti mengikuti Jika anda mengikutinya, dia mungkin tidak mengikuti anda