类似于评论嵌套回复的数据库怎么设计?
第一种情形
评论嵌套回复,类似于下图这种情况,数据库是怎么设计的?
我有两种思路,一种是存一下回复的评论id,这样不好出就是每个嵌套评论都要迭代出所有的父类,性能不好。第二种思路是存一下所有父类的id,用一种符号(逗号或者破折号)分开,存在一个字段中。
第二种情形
微博转发,数据库是怎么设计的?
同样我也有两种思路,一种是存转发的人内容id,一种是存曾经转发这条微博的所有人的id,另一种存转发的所有内容。用哪一种更为合适?
还有没有更合适的思路呢。?请大家不吝指出。
回复内容:
第一种情形
评论嵌套回复,类似于下图这种情况,数据库是怎么设计的?
我有两种思路,一种是存一下回复的评论id,这样不好出就是每个嵌套评论都要迭代出所有的父类,性能不好。第二种思路是存一下所有父类的id,用一种符号(逗号或者破折号)分开,存在一个字段中。
第二种情形
微博转发,数据库是怎么设计的?
同样我也有两种思路,一种是存转发的人内容id,一种是存曾经转发这条微博的所有人的id,另一种存转发的所有内容。用哪一种更为合适?
还有没有更合适的思路呢。?请大家不吝指出。
针对评论盖楼
首先,现在这种形式不多见了,功能上简化了,不适用与移动产品的潮流。
就实现上,以前我们是 每条数据记录了他回复的评论编号。看了你的问题,个人感觉,你的第二种实现采用冗余存储,记录所有的上级的评论编号,是个不错的注意,性能更好一些。在存储多值时,以前喜欢用逗号隔开,现在喜欢用json_encode存储。使用和存储更灵活一些。
针对微博转发
个人想法是,有个关系表,每次转发为一条关系数据,因为转发不存在盖楼的问题。
参考论坛的数据结构设计吧

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Bekerja dengan pangkalan data dalam CakePHP adalah sangat mudah. Kami akan memahami operasi CRUD (Buat, Baca, Kemas Kini, Padam) dalam bab ini.

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

Log masuk CakePHP adalah tugas yang sangat mudah. Anda hanya perlu menggunakan satu fungsi. Anda boleh log ralat, pengecualian, aktiviti pengguna, tindakan yang diambil oleh pengguna, untuk sebarang proses latar belakang seperti cronjob. Mengelog data dalam CakePHP adalah mudah. Fungsi log() disediakan

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c
