我正在尝试执行查询并收到以下错误..
7Error: No index used in query/prepared statement SELECT `id`, `category_id`, `topic_id`, `post_creator`, `post_content`, `post_date` FROM forum_posts WHERE `category_id`=? AND `topic_id`=?
我原来有这行代码...
if($stmt2 = $con->prepare("SELECT * FROM forum_posts WHERE `category_id`=? AND `topic_id`=?")) {
所以我尝试将其更改为以下内容以给它一个索引。
if($stmt2 = $con->prepare("SELECT `id`, `category_id`, `topic_id`, `post_creator`, `post_content`, `post_date` FROM forum_posts WHERE `category_id`=? AND `topic_id`=?")) {
为什么会出现这个错误?我有 php 错误报告。
error_reporting(E_ALL);
ini_set('display_errors', 1);
但是,即使我将其注释掉,错误仍然存在并且它终止了我的代码。任何人都知道为什么会出现此错误以及我该如何解决它?
最佳答案
根据提供的答案here :
mysqli_report(MYSQLI_REPORT_ALL ^ MYSQLI_REPORT_INDEX);
Turns off "Report if no index or bad index was used in a query" yet keeps other reporting on.
通过使用“E_ALL”,您可以报告此错误/警告。
关于php - 当存在索引问题时,查询/准备语句中未使用索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31577139/