我在这里搜索过,但使用我能想到的搜索词找不到任何东西。这里可能有另一个帖子可以回答我的问题,但我没有找到任何问题。
PHP手册指出:
使用此方法获取大型结果集将导致对系统和可能的网络资源的大量需求。
它还继续说您应该使用 WHERE 和 ORDER BY 来减轻负载,这非常有意义。但这仍然没有回答这个问题,多少才算太多?你将如何定义一个太大的结果集?
例如,我为我正在创建的一个类编写了这段代码:
public function getQuestions($quiz_id){
$quiz_id = parent::onlyNums($quiz_id);
$stmt = $this->db->prepare(
"SELECT quiz.title, quiz.description, questions.question,
questions.answer, questions.wrong_one, questions.wrong_two,
questions.wrong_three FROM quiz, questions WHERE
questions.quiz_id = :quiz_id AND quiz.id = questions.quiz_id");
$stmt->bindValue(':quiz_id',$quiz_id,PDO::PARAM_INT);
try
{
$stmt->execute();
if($stmt->rowCount() > 0 )
{
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}else{
echo "No Items match the query";
exit();
}
}
catch(PDOException $e)
{
return $e->getMessage();
}
}
现在,对于我正在构建的应用程序,我不希望此查询检索大量结果,因为由于应用程序的性质,不应该有那么多结果。但是在某些时候,如果有人发疯了,在一次测验中添加了数百万个问题,这个脚本会失败吗?
感谢您提供任何信息或建议。