php - 使用带有 pg_update() PHP 的事务

标签 php postgresql pdo

我使用 pg_update() 来动态更新我的数据。

我有多个表要更新。如果任何查询失败,我想回滚。

我们可以使用带有静态查询的事务,但是有什么方法可以使用带有 pg_update() 的事务,因为我必须使用 pg_update() 来使用动态查询。

谢谢

最佳答案

我找到了解决问题的方法

  pg_query("BEGIN") or die("Could not start transaction\n");
        $dataToUpdate = array('name' => $name);;
        $condition = array('id' => $id);
        $res1 = pg_update($this->dbConnection, 'table_name1', $dataToUpdate, $condition);
        $res2 = pg_update($this->dbConnection, 'table_name2', $dataToUpdate, $condition);
       if ($res1 && $res2) {
        pg_query("COMMIT") or die("Transaction commit failed\n");
    } else {
        pg_query("ROLLBACK") or die("Transaction rollback failed\n");;
    }

关于php - 使用带有 pg_update() PHP 的事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50057669/

相关文章:

php - 在模型或 Controller 中处理错误?

javascript - 在 getElementById 函数中传递两个变量

postgresql - 如何根据where子句将单个列分成两列

php - Laravel - [PDOException] : Could not Find Driver in PostgreSQL - MAC OS

PHP:包含不同根目录的内部包含

postgresql - 将 int 转换为 IP 地址

php - 将访问者提交的数据附加到页面

PHP pdo 类 getadresses 警告和调用非对象上的成员函数prepare()

php - 如何获取php对象的第一个元素值

javascript - 使用 dropDownList 发出请求后的 renderPartial