-1
我用ASP.net构建论坛网站,DB是MYSQL。一张桌子还是两张桌子来存放论坛的帖子和帖子?
大家都知道用户可以启动一个线程,而其他人可以回复它。
所以这里是我实施的表格。
CREATE TABLE `a_post` (
`post_id_pk` int(10) unsigned NOT NULL AUTO_INCREMENT,
`is_thread` tinyint(1) NOT NULL,
`parent_thread_id` int(10) unsigned DEFAULT NULL,
`title` varchar(100) DEFAULT NULL,
`short_description` varchar(200) DEFAULT NULL,
`description` text NOT NULL,
`category_id_fk` tinyint(3) unsigned DEFAULT NULL,
`user_id_fk` int(10) unsigned NOT NULL,
......
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
所以我使用一个表来存储线程和帖子。这种方法工作正常。通常线程数比帖子数少。否则我可以实现两个表来做。一个是存储线程,另一个是存储注释与相应的线程ID。
什么是最好的?一张桌子还是管理两张桌子?
我想要一个性能明智的答案。做过论坛系统的人。你在这里最受欢迎。