如果我在使用PDO时有两个连接变量,
对于单独的数据库 DB1 和 DB2 ,请说 $ conUser1 和 $ conUser2 。
如果我想执行一个连接两个数据库中的表的查询,我应该使用哪个连接变量来开始和提交事务?
前: -
$query = $conUser1->prepare("/* query joining two databases */");
$conUser1->beginTransaction();
$query->execute();
$conUser1->commit();
但问题是,如何决定使用哪个变量?
我不能只为一个数据库开始和提交事务,可以吗?
答案 0 :(得分:0)
$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'];
}