我有三个表/实体:
>
游戏
网站游戏
地点
我必须在教义2中写查询,这将使所有游戏(作为对象)可用于特定的网站(得到这个特定的网站作为对象)。唯一的关系(多对一)在表/实体SiteGame中,它包含列/对象:
通常,原始SQL看起来像(并且可以工作):
SELECT g FROM site_games s INNER JOIN games g ON g.id=s.game_id WHERE site_id='4';
这是我在教义中尝试过的,但失败了:
$qb = $this->getEntityManager()->createQueryBuilder();
$qb->select("s.game")
->from("MyBundle:SiteGame","s")
->where("s.site = :site")
->setParameter("site",$site);
错误:路径表达式无效。必须是StateFieldPathExpression。
$qb = $this->getEntityManager()->createQueryBuilder();
$qb->select("g")
->from("MyBundle:SiteGame","s")
->join("s.game","g")
->where("s.site = :site")
->setParameter("site",$site);
错误:如果不选择至少一个根实体别名,则无法通过标识变量选择实体。
还有许多有类似错误的不同组合。
我在整个互联网上找不到任何有用的东西。
我假设Games
实体没有一个返回到SiteGames
的OneTo多
关系。您有几个选项:
>
游戏
和站点
,您可以完全删除该实体,并使用适当的ManyToMore
映射在原则2.4中,您可以使用任意连接语法,并编写如下内容:
$this->getEntityManager()->createQueryBuilder()
->select('Game')
->from('MyBundle:Game', 'Game')
->join('MyBundle:SiteGame', 'SiteGame', 'WITH', 'SiteGame.game = Game AND SiteGame.site = :site')
->setParameter('site', $site)
->getQuery()
->getResult();
我会选择第一个选项。
我有一个Symfony2应用程序与理论作为ORM。在我的应用程序中,我有两个具有一对多关系的实体。一个实体是用户,多个实体是项目。他们的关系配置如下: 用户: 项目: 问题是当我试图获取及其的列表时,Doctrine为每个用户创建单独的查询来获取它的项目。 查询本身非常简单: 是否可以使用Doctrine在一个查询中自动获取用户的所有相关项? 我使用的是SF 2.7.6和条令库,版本如下:
问题内容: hibernate映射中的默认访存类型是什么? 探索之后我知道的是: 渴望 一对一。 对于一对多来说,这是 懒惰的 。 但是在Eclipse中对其进行测试后,它对所有人都非常渴望。 是否取决于我使用的是JPA还是Hibernate? 问题答案: 这取决于您使用的是JPA还是Hibernate。 根据JPA 2.0规范,默认值为: hibernate的时候,一切都是懒惰的 更新: 最新版
问题内容: 我正在使用Symfony 2开发一个项目,我已经建立了一个捆绑包来处理我的所有数据库服务,这些服务来回传递JSON数据。 我的问题/问题: 是否可以发布简单的JSON对象?目前,我通过给对象起一个名字来欺骗我的ajax调用的普通表单帖子,如果我不给它起一个名字,我似乎无法从Symfony请求对象中获取数据。 我希望能够使用一个服务包来处理来自AJAX调用或常规Symfony形式的数据。
我试图为父对象创建一个NamedQuery,它从数据库中检索所有可用的父对象,并有条件地在同一个查询中获取一些子对象。例如,查询应该检索所有父对象,并获取每个父对象的年=2012的子对象。不应该获取其余的子对象。我试图用左连接FETCH来玩,但结果是一些父对象也被排除在外。但话说回来,我是FETCH语句的新手。 有没有办法完成上述任务?非常感谢您的帮助。我的父对象的相关代码如下所示:
我正在使用hibernate在car和person表之间进行一对一映射。但一个人可能有车,也可能没有车。现在,在使用hibernate标准从person表中获取记录时,我只想获取那些拥有汽车的人,即person表中存在相应汽车表条目的条目。如何使用hibernate标准/别名实现这一点? 下面是一段代码。请提供获取结果所需的条件或别名:
根据这篇文章,我正在尝试反序列化与JooQ的一对多关联(没有代码生成)。 这是我的目标课程。 我的JooQ查询如下: 方法无法按预期工作。生成的SQL语句如下所示: 翻译后的postgres查询没有正确替换的key属性,这会导致SQL异常。 PS:我正在使用JooQ 3.14.0和postgres 11.5