我有一个结构如下的 MySQL 表:
$sql = "CREATE TABLE test(
id INT NOT NULL,
title VARCHAR(512) NOT NULL COLLATE utf8_general_ci,
body TEXT NOT NULL COLLATE utf8_general_ci,
dateStored VARCHAR(32) NOT NULL COLLATE utf8_general_ci,
fileName VARCHAR(128) NOT NULL COLLATE utf8_general_ci,
FOREIGN KEY(id) REFERENCES `database`.`parent`(id)
);";
Run Code Online (Sandbox Code Playgroud)
我的存储引擎是 MYISAM。
现在,当我想body用MATCH-在字段中搜索时AGAINST,没有结果......
这是我的尝试:
$sql2 = "SELECT * FROM database.test
WHERE MATCH(body) AGAINST('?')";
$prepare = $pdo->prepare($sql2);
$prepare->execute( array( $pattern ) );
$fetch = $prepare->fetchAll();
Run Code Online (Sandbox Code Playgroud)
这看起来很基本,但我的代码仍然不起作用。你能告诉我我的代码有什么问题吗?
这是因为我有一个引用另一个表的字段吗?