如果我在使用 PDO 时有两个连接变量,
对于单独的数据库 DB1 和 DB2,例如 $conUser1 和 $conUser2。
如果我想执行连接两个数据库中的表的查询,我应该使用哪个连接变量来开始和提交事务?
例如:-
$query = $conUser1->prepare("/* query joining two databases */");
$conUser1->beginTransaction();
$query->execute();
$conUser1->commit();
但问题是,我如何决定使用哪个变量?
我无法只为一个数据库开始并提交事务,可以吗?
最佳答案
$db1_connect = new PDO();
$db2_connect = new PDO();
$db1_connect->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
$db2_connect->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);
$query = "SELECT ....";
$statement1 = $db1_connect->query($query);
$statement2 = $db2_connect->query($query);
$results = array_merge($statement1->fetchAll(PDO::FETCH_ASSOC), $statement2->fetchAll(PDO::FETCH_ASSOC));
$combined = array();
foreach ($results as $key => $row){
$combined[$key] = $row['combined'];
}
关于mysql - 连接单独的数据库时使用的连接变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26419529/