如何存储MySQL表的答案

时间:2016-05-21 12:11:52

标签: php mysql

我想以Stack Overflow为例。现在,发布了一个问题,让我们说它们将以下内容存储到数据库中。

question_ID question_title question_body question_asker question_date

但还有两件事,评论和答案。所以我的问题是“如何将它们存储到数据库中?”我的意思是,我不认为5个或大概10个类似文章的答案只存储在一个单元格中。

2 个答案:

答案 0 :(得分:1)

答案和通知将存储在不同的表中,如下所示:

<强>数据库

问题

question_ID question_title question_body question_asker question_date

答案

answer_ID answer_title answer_body answer_asker answer_date question_ID

评论

comment_ID comment_title comment_body comment_asker comment_date answer_ID

以下是使用INNER JOIN获取数据的PHP代码示例:

<强> PHP

$dbh = new PDO('mysql:host=localhost;dbname=stackoverflow', $user, $pass);
$query = 'SELECT * from questions INNER JOIN answers ON answers.question_ID = question_ID INNER JOIN comments on comments.comment_ID = answer_ID';
foreach($dbh->query($query) as $row) {
    print_r($row);
}

stackoverflow数据库的完整模式:Database schema

答案 1 :(得分:0)

您应该阅读关系和数据库设计。

对于您的示例,数据库应存储其他表以供评论和回答。

每个表都应该有其他列,例如question_id,它存储相应问题的关键字。