我目前正在MYSQL中进行查询,其中" WHERE"和#34;匹配"函数用于创建结果。但是,当我尝试时,我得到错误。这是查询:
foreach($db->query("SELECT * FROM Table WHERE Table.Column1 = '$Search1'
AND MATCH(Table.Column2) AGAINST ('$Search2' IN BOOLEAN MODE)") as $Question);
$ db联系数据库。
表是查询从中获取信息的表。
Column1和Column2是用于将信息与用户输入匹配的特定列。 Column1包含一个数字(ex 1234),Column2包含多个数字(ex 12-02-11)
Search1和Search2是连接到用户输入结果的变量(HTML中为<input type="text">
)。
我想要摆脱的只是$ Search1和$ Search2都与Table中存在的信息相匹配的结果。
Column1和$ Search1之间的完全匹配。以及column2和Column2之间的匹配(即使我键入表中已存在的相同数字,错误也会显示(例如:column2 =&#34; 12-12-12&#34; $ Search2 =&#34; 12-12-12&#34;仍然是错误))。
我该如何撰写查询?
以下是完整的错误消息(请记住,我使用的其他变量不是问题中的变量):
致命错误:未捕获的异常&#39; PDOException&#39;消息&#39; SQLSTATE [HY000]:一般错误:1191无法找到与列列表匹配的FULLTEXT索引&#39;在C:\ xampp \ htdocs \ BGS \ fragor \ Littraurval.php:87堆栈跟踪:#0 C:\ xampp \ htdocs \ BGS \ fragor \ Littraurval.php(87):PDO-&gt;查询(&#39; SELECT * FROM m ...&#39;)在第87行的C:\ xampp \ htdocs \ BGS \ fragor \ Littraurval.php中抛出#1 {main}
答案 0 :(得分:0)
无法找到与列列表匹配的FULLTEXT索引
检查表格架构,查找您搜索的列上缺少的FULLTEXT索引。