「forum_topic」と「forum_comments」の 2 つのテーブルがあります。
たとえば、「select * from forum_topic where topic_id = 1」というクエリがある場合、「forum_comments.topic_id = forum_topic.topic_id」に基づいて forum_comments テーブルからすべてのコメントが必要ですが、フォーラムコメントはツリー ビュー形式にする必要があります。これは、"forum_comments" テーブルにも保存されているすべてのコメントに対して n レベルの返信があるためです。forum_comments テーブルには、"comment_id" を保持するフィールド "parent" があり、返信が作る。
1 - フォーラム_トピック
CREATE TABLE IF NOT EXISTS `forum_topic` (
`topic_id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`category` int(11) NOT NULL,
`content` text NOT NULL,
`created_by` int(11) NOT NULL,
`created_date` datetime NOT NULL,
`view_count` int(11) NOT NULL,
`last_activity` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`status` enum('publish','unpublish') NOT NULL,
PRIMARY KEY (`topic_id`)
)
2 - フォーラム_コメント
CREATE TABLE IF NOT EXISTS `forum_comments` (
`comment_id` int(11) NOT NULL AUTO_INCREMENT,
`comment_by` int(11) NOT NULL,
`topic_id` int(11) NOT NULL,
`parent` int(11) NOT NULL DEFAULT '0',
`comment` text NOT NULL,
`commented_date` datetime NOT NULL,
`commented_type` enum('user','admin') NOT NULL DEFAULT 'user',
`status` enum('publish','unpublish','block') NOT NULL,
PRIMARY KEY (`comment_id`)
)