gpt4 book ai didi

doctrine-orm - 学说 : QueryBuilder vs createQuery?

转载 作者:行者123 更新时间:2023-12-03 05:30:38 25 4
gpt4 key购买 nike

在 Doctrine 中,您可以通过 2 种方式创建 DQL:

EntityManager::createQuery:

$query = $em->createQuery('SELECT u FROM MyProject\Model\User u WHERE u.id = ?1');

查询生成器:

$qb->add('select', 'u')
->add('from', 'User u')
->add('where', 'u.id = ?1')
->add('orderBy', 'u.name ASC');

我想知道有什么区别以及我应该使用哪个?

最佳答案

  1. DQL 更易于阅读,因为它与 SQL 非常相似。如果您不需要根据一组参数更改查询,这可能是最好的选择。

  2. 查询构建器是一个用于构建查询的 API,因此如果您需要动态构建查询(例如迭代一组参数或过滤器),会更容易。您不需要执行任何字符串操作来构建查询,例如联接、拆分或其他操作。

关于doctrine-orm - 学说 : QueryBuilder vs createQuery?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2678631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com