什么应该是php / MySql查询从以下数据库设计发送和接收数据

时间:2012-09-29 22:18:48

标签: php mysql database

这是我的问题页面的数据库设计。 用户可以询问尽可能多的问题,从单个问题中获得尽可能多的答案。 即。一个问题和很多答案。

我想知道的是 mysql查询,这对于获取特定数据库的答案是必需的。还有 php代码,它们将参与发送并从而检索结果。

db design:

create table user (
 name varchar(14) not null.
 id int(11) auto_increment;

CREATE TABLE questions (
 question_id int(11) NOT NULL AUTO_INCREMENT,
 user_id int(11) references user(id),
title varchar(255),
content text, 
PRIMARY KEY (question_id);

CREATE TABLE answers (
answer_id int(11) NOT NULL AUTO_INCREMENT,
question_id int(11) REFERENCES questions(question_id),
content text,
PRIMARY KEY (answer_id);

1 个答案:

答案 0 :(得分:0)

如果您已经知道特定问题的ID,那么您需要做的就是使用该question_id选择answers中的所有记录。如果您是根据问题的其他某个属性进行选择,那么您可以从questions LEFT JOIN answers on questions.question_id = answers.question_id选择该问题,以获得所有相关答案。

关于PHP代码,请阅读mysqli或PDO。这应该是运行查询然后获取结果的教科书案例。查看example 1 on this page有关如何创建数据库连接的信息,以及example 1 on this page查看非常简单的查询示例。但请注意,如果您正在搜索用户提供的字符串,那么这样的简单查询会产生巨大的安全漏洞!您应该使用prepare()函数。