我想以交易的形式执行两个不同的查询 我描述了下表:
会员表
| member_id | name |
members_groups表
| id | member_id | group_id |
分组表
| group_id | group_name |
members_groups包含来自其他两个表的两个外键
下面是代码
try{
$dbh->beginTransaction();
$stmt = $dbh->prepare("DELETE FROM `members_groups` WHERE member_id = ?");
$stmt2 = $dbh->prepare("DELETE FROM `members` WHERE member_id = ?");
$stmt->bindParam(1,$id , PDO::PARAM_INT);
$stmt2->bindParam(1,$id, PDO::PARAM_INT);
if($stmt->execute() && $stmt2->execute()) {
$dbh->commit();
echo "registered successfully";
}
}
catch (Exception $e){
$dbh->rollback();
echo "an error has occurred";
}
我想从members表中删除一行,但首先我必须从members_groups表中删除子键。 当我在phpmyadmin控制台中运行sql查询时,两个查询成功运行 但是当我用php pdo运行查询时没有任何反应。