匿名版是不用注册的论坛,UID由IP生成,故只使用一个表记录发言。表结构见最下,求优化意见。
表中回复和主题地位平等,但回复不能有子节点。回复的父节点是主题,主题的父节点是主题0。
主题0的replyCount挪用作论坛主题计数,content记录最近发帖/回复人(逗号分隔,防spam用)。
recentReply00-19记录主题最近的20条回复,有新回复时00-18顺次覆盖01-19,并更新00。
CREATE TABLE IF NOT EXISTS `sougou` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`parent` int(11) NOT NULL,
`updatedAt` int(11) NOT NULL,
`createdAt` int(11) NOT NULL,
`replyCount` int(11) NOT NULL,
`uid` char(8) NOT NULL,
`name` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`title` varchar(255) NOT NULL,
`image` varchar(255) NOT NULL,
`content` varchar(2048) NOT NULL,
`hide` tinyint(1) NOT NULL,
`sage` tinyint(1) NOT NULL,
`lock` tinyint(1) NOT NULL,
`delete` tinyint(1) NOT NULL,
`pwd` varchar(8) NOT NULL,
`like` int(11) NOT NULL,
`liker` varchar(512) NOT NULL,
`dislike` int(11) NOT NULL,
`disliker` varchar(512) NOT NULL,
`recentReply00` int(11) NOT NULL,
`recentReply01` int(11) NOT NULL,
`recentReply02` int(11) NOT NULL,
`recentReply03` int(11) NOT NULL,
`recentReply04` int(11) NOT NULL,
`recentReply05` int(11) NOT NULL,
`recentReply06` int(11) NOT NULL,
`recentReply07` int(11) NOT NULL,
`recentReply08` int(11) NOT NULL,
`recentReply09` int(11) NOT NULL,
`recentReply10` int(11) NOT NULL,
`recentReply11` int(11) NOT NULL,
`recentReply12` int(11) NOT NULL,
`recentReply13` int(11) NOT NULL,
`recentReply14` int(11) NOT NULL,
`recentReply15` int(11) NOT NULL,
`recentReply16` int(11) NOT NULL,
`recentReply17` int(11) NOT NULL,
`recentReply18` int(11) NOT NULL,
`recentReply19` int(11) NOT NULL,
PRIMARY KEY (`id`),
KEY `updatedAt` (`updatedAt`),
KEY `createdAt` (`createdAt`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.