Mysqli从多个表中删除行

时间:2012-08-06 22:54:07

标签: mysqli

我是使用mysqli查询的新手。我试图使用以下代码从多个表中删除一行:

$del_final = "DELETE confirm, coupon, cpn_image, c_token, deal_24 
              FROM confirm, coupon, cpn_image, c_token, deal_24
              WHERE confirm.customer_id=?
              AND coupon.customer_id=?
              AND cpn_image.customer_id=?
              AND c_token.customer_id=?
              AND deal_24.customer_id=?";

if($stmt->prepare($del_final))
{
    $stmt->bind_param('iiiii', $customer_id, $customer_id, $customer_id, $customer_id, $customer_id);
    $OK3 = $stmt->execute();
    $stmt->free_result();
}

当每个表中有一行匹配的customer_id时,它似乎只会删除。我错过了解如何做到这一点吗?

1 个答案:

答案 0 :(得分:0)

我认为这个查询很糟糕,非常糟糕。我建议您使用ID作为输入参数创建存储过程,然后对每个表使用单个删除,这是执行此操作的方法。