symfony学说

symfony学说,symfony,doctrine-orm,entitymanager,flush,Symfony,Doctrine Orm,Entitymanager,Flush,“问题” 在分析器中: 选择查询 另一个select查询 第三个问题 现在我在控制器中调用INSERT,执行这个查询 $re=new Requests(); $re->setViewed(false); $em->persist($add); $em->flush(); 它会导致另一个“3”查询: 可以吗?还是我做错了什么 对的每个调用都包装在一个事务中 这意味着,如果当前RDBM支持,ORM将自动启动事务,然后执行所有必要的查询,如果一

“问题”

在分析器中:

  • 选择查询
  • 另一个select查询
  • 第三个问题
现在我在控制器中调用INSERT,执行这个查询

    $re=new Requests();
    $re->setViewed(false);
    $em->persist($add);
    $em->flush();
它会导致另一个“3”查询:

可以吗?还是我做错了什么

对的每个调用都包装在一个事务中

这意味着,如果当前RDBM支持,ORM将自动
启动事务
,然后执行所有必要的查询,如果一切正常,则执行
提交
,如果发生错误,则执行
回滚


您可以在中阅读更多关于Doctrine 2 ORM如何处理事务和并发的信息。

好的,那么这很正常吗?@Trki请将问题保留在公共频道上。另外,不要劫持现有的threadshow我们可以检查RDBM是否支持事务吗?正在使用的DBAL平台可以告诉您: