'%'.....'%'喜欢Drupal 10中的MySQL查询,使用Escapelike

问题描述 投票:0回答:1
我想在查询drupal 10中使用,使用此

$result = $connection->query("SELECT node_field_data.nid , node_field_data.title FROM `node_field_data` WHERE node_field_data.title LIKE :pattern", [ ':pattern' => '%' . $connection->escapeLike($q) . '%', ])->fetchAll();
GOT错误

致命错误:未被发现的PdoException:SQLSTATE [HY000]:一般错误: 2006 MySQL Server已经消失了....

drupal drupal-10
1个回答
0
投票
query()

有时会引起问题,尤其是在大型数据集或长期运行的查询中。

对Drupal的查询构建器进行编织可能会有所帮助,因为:

它自动处理数据库逃脱,降低了安全风险。 IT可以更好地管理数据库连接,这可能有助于MySQL问题。

在Drupal环境中更容易阅读和维护。

这里是一种替代方法,可能会更好:
  • select()
  • 这种方法可以使查询结构化,并确保Drupal正在有效处理连接。
  • 说,在不了解有关数据集大小或服务器配置的更多详细信息,很难确定这是否会完全解决问题。如果错误持续存在,也可能值得检查MySQL设置。
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.