2

当我在我的 MySQL 5.6 MyISAM 表中使用全文搜索时,有时会出现错误,但大多数情况下它工作正常。

此查询工作正常

SELECT title, MATCH(title, keywords, description) AGAINST ('background+water+sea') AS 'relevance' FROM `content` WHERE 
MATCH(title, keywords, description) AGAINST ('background+water+sea');

但是这个不

SELECT title, MATCH(title, keywords, description) AGAINST ('background+water+sea+blue') AS 'relevance' FROM `content` WHERE 
MATCH(title, keywords, description) AGAINST ('background+water+sea+blue');

它们基本相同,只有第二个也要求“蓝色”。表中有超过 100,000 行。如果在网站上运行,它会在 phpMyAdmin 中为我提供“#2014 - 命令不同步;您现在无法运行此命令”和“来自存储引擎的错误 -1”。

有任何想法吗?

4

1 回答 1

0

MySQL 5.6 手册

如果您的命令不同步;您现在无法在客户端代码中运行此命令,您正在以错误的顺序调用客户端函数。

例如,如果您正在使用 mysql_use_result() 并在调用 mysql_free_result() 之前尝试执行新查询,则可能会发生这种情况。如果您尝试执行两个返回数据的查询而不在两者之间调用 mysql_use_result() 或 mysql_store_result() ,也会发生这种情况。

如果您一次执行两个或多个语句,有时会在 PHPMyAdmin 中发生此错误。检查具有类似问题的问题

不幸的是,在不知道调用所有这些的代码的情况下,我只能建议这些。如果它不能解决问题,您可以分享更多详细信息

于 2017-10-10T18:53:04.550 回答