如何将table1中的行与table2中的数据连接,其中table2中的所有数据都具有table1中的行id

时间:2014-01-18 13:57:25

标签: mysql row

//Table 1
$table = "CREATE TABLE IF NOT EXISTS questions (
id INT (11) NOT NULL AUTO_INCREMENT,
quesion TEXT NOT NULL,
user VARCHAR (255) NOT NULL,
date TIMESTAMP NOT NULL,
question TEXT NOT NULL,
answer TEXT NOT NULL,
PRIMARY KEY (id)
)";

//Table 2
$table = "CREATE TABLE IF NOT EXISTS answers (
id INT (11) NOT NULL AUTO_INCREMENT,
user VARCHAR (255) NOT NULL,
answer TEXT NOT NULL,
datum TIMESTAMP NOT NULL,
PRIMARY KEY (id)
)";

我有两种形式。一个用于插入问题,另一个用于插入答案。它正在发挥作用。但我有一个问题。对于一个问题,你几乎没有答案是正常的,但是现在当我提交答案,并尝试为第一个问题添加第二个答案时,它会覆盖我的第一个答案。 //这段代码那样做

$sql="UPDATE questions SET answer='$_POST[answer]' WHERE id='$_POST[id]'";

我现在 - 显然每个插入的答案都会对表格'问题'做出,但我需要在表格'答案'中插入答案,并且每个答案都要从表'问题'中为他的问题连接

所以,简历 - 用户来到网站,看到问题,回答它并离开,来到第二个用户后给同一个问题的答案,并留下.. 如何使它工作。我尝试使用一些外键,但没有任何东西......

1 个答案:

答案 0 :(得分:0)

添加一个额外的字段,比如说。 QuestionId到你的答辩者表。 在你的插入SQL中,你将QuestionId提供给你的应答者插入语句。

然后,您可以使用以下选项为一个问题选择所有答案:

SELECT * FROM answser WHERE QuestionId=$qId