【问题标题】:EntityManager's Connection always returns fals when committingEntityManager Connection 在提交时总是返回 false
【发布时间】:2017-06-05 17:10:21
【问题描述】:

我正在尝试在 symfony 应用程序中以最低级别执行事务:

$conn = $this->em->getConnection();
$conn->beginTransaction();
$success = $conn->commit();

$success 始终是false。这是为什么呢?

【问题讨论】:

    标签: doctrine-orm symfony-2.8


    【解决方案1】:

    commit 不返回布尔值,如果有问题会抛出异常。 为确保事务成功,请使用这样的 try catch:

    try{
        $conn->commit();
    } catch (\Exception $e) {
        $conn->rollBack();
        throw $e;
    }
    

    【讨论】:

    • 你说得对,我在看Doctrine\DBAL\Driver::commit,它返回一个布尔值
    • 很高兴为您提供帮助! :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-01
    • 2011-06-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多