草庐IT

Doctrine_RawSql

全部标签

php - ZF2 Zend\Log + Doctrine2

我不知道如何使用Doctrine2配置Zend\Log。只允许您通过连接适配器直接写入数据库或写入文件。 最佳答案 也许现在回答这个问题为时已晚,但迟到总比不到好。我找到了一篇很好的文章,它解释了如何为ZF2和Doctrine创建一个基本的SQLLogger。方法很简单:1。创建Logger类:在Module/Application/Log文件夹中创建以下类:logger=$logger;}publicfunctionstopQuery(){parent::stopQuery();$q=$this->queries[$this->c

php - 嵌套实体中的 Doctrine EntityManager clear 方法

我想使用doctrinebatchinsertprocessing为了优化大量实体的插入。问题在于Clear方法。它表示此方法分离由EntityManager管理的所有实体。那么,如果我有一个父实体,它有很多子实体,并且每个子实体都有自己的子实体,那么我应该怎么做,就像这样:上升session跟踪积分所以我有1个rideSession,3个轨道,每个轨道有2000个点。我可以在负责保存点的最后一个循环中使用批处理。但是,如果我使用清除方法,那么如何为点和轨道设置parent?Clear方法会分离它们,对吗? 最佳答案 很快你就会达到

php - 明确匹配任何内容的 Doctrine Query Builder

我使用的是Doctrine2.4,我有一个包含如下方法的抽象基类:protectedfunctiongetBaseQueryBuilder($type){switch($type){caseself::TYPE_1;return$this->em->createQueryBuilder()->...lotsofclauses...;caseself::TYPE_2;return$this->em->createQueryBuilder()->...lotsofclauses...;/*manymoretypes...*/caseself::TYPE_N;return/*wanttore

php - 如何在没有 Doctrine 关系的情况下加入?

我有一个实体Log(表log),其成员为resourceType和resourceId(列为resource_log和resource_id)。resourceType可以例如Order(用于订单操作,例如状态更改)或Whatever(用于Whatever相关操作)。Log和“资源”实体/表之间没有关系(无论是在Doctrine中,还是在数据库中)。现在我只想选择与Order相关且myOrderProperty="someValue"的Log。这意味着:SELECT*FROM`log`JOIN`order`ON`order`.`id`=`log`.`resource_id`AND`lo

php - 当 Doctrine 查询加入时,setMaxResults 不能正常工作

我想编写一个DQL查询来选择发布并加入另一个实体。这是我的代码:$dql='SELECTp,h,t,mFROMApp:PostpLEFTJOINp.mentionsmLEFTJOINp.tagstLEFTJOINp.filehWHEREp.userIN(SELECTfFROMApp:UseruJOINu.followersfWHEREu.id=:uid)ORp.user=:uid';$query=$this->getEntityManager()->createQuery($dql)->setMaxResults(5)->setParameters(['uid'=>$user->get

php - 在 Doctrine_RawSql 查询中聚合值

是否可以在Doctrine_RawSql查询中使用聚合值?这是我正在尝试做的事情:$q=newDoctrine_RawSql();$q->select('{q.*},AVG(a.value)ASavg');$q->from('--complexfromclause');$q->addComponent('q','Question');但是,由Doctrine创建的SQL仅保留表question中的列并省略聚合值avg。 最佳答案 我以前从未使用过Doctrine_RawSql,但我使用以下两种方法之一通过Doctrine完成了原始S

php - Doctrine ORM,两个不同的查询产生相同的结果集

我正在使用Doctrine1.2和Symfony1.4。在我的操作中,我有两个不同的查询返回不同的结果集。不知何故,第二个查询似乎改变了第一个查询的结果(或引用?),我不知道为什么......这是一个例子:$this->categories=Doctrine_Query::create()->from('CategorieASc')->innerJoin('c.ActiviteASa')->where('a.archive=?',false)->execute();print_r($this->categories->toArray());//Return$this->categori

php - Doctrine 一对多无连接表

我正在使用Doctrine,我想知道我是否可以在不使用连接表的情况下建立一对多关系? 最佳答案 取决于您希望它是单向的还是双向的。单向一对多只能通过jointable实现,出于“意识形态”的原因,来自Java的hibernate:http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/association-mapping.html#one-to-many-unidirectional-with-join-table假设您有一个包含许多产品

php - 不同束中实体之间的 Doctrine 关联映射或来自两个不同束的相关实体?

地区:namespaceAcme\RegionBundle\Entity;classRegion{private$id;/***@ORM\OneToMany(targetEntity="User")*@ORM\JoinColumn(name="region_id",referencedColumnName="id")*/private$users;}用户:namespaceAcme\UserBundle\Entity;classUser{private$id;private$region_id;}如何在不提及完全指定的实体路径(即硬编码依赖性)的情况下关联来自不同包的实体。有没有更好的

php - 级联坚持不工作(Doctrine ORM + Symfony 2)

几个月前我开始使用symfony,有一件事一直困扰着我。当我在Doctrine中有一个一对多的关系时,我试图向数据库中插入一些东西。这是一个例子:经纪人.orm.ymlAcme\DemoBundle\Entity\Broker:type:entitytable:brokersrepositoryClass:BrokerRepositoryid:id:type:integergenerator:{strategy:AUTO}fields:name:type:stringlength:255slug:type:stringlength:64oneToMany:accountTypes:ta