重点是进行一个查询,该查询将获取用户在输入框中输入的值,并检索通过该关键字比较找到的数据库记录。
在 innodb 引擎上,所以没有 MATCH AGAINST 可用对吗? 我将在索引列表上使用 LIKE,希望没问题。
传统上我们会做:
SELECT our_column FROM our_db_table WHERE our_column LIKE '%$queryString%';
因此,如果我们的查询字符串是 AB,我们将精确检索“lab”和“abnormal”?
1) 我们如何通过使用 PDO 来实现这一点?
思考:
有点像,
$stmt = $this->_dbh->prepare("SELECT d.our_column FROM our_db_table d WHERE d.our_column LIKE ?");
但下一步是什么?
通常我会这样做:
$stmt->bindParam(1, $ourTableVo->getOurColumn(), PDO::PARAM_STR, 255);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_OBJ);
2) VO 在这种情况下有用吗?
提前致谢!
最佳答案
$stmt->bindValue(1, '%' . $ourTableVo->getOurColumn() . '%', PDO::PARAM_STRING);
这行不通吗?
关于php - 如何使用 PDO 准备语句执行 SELECT LIKE - 值对象在这里有用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3576397/