2012-08-06 2 views
0

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 각 테이블의 행이있는 경우에만 삭제합니다. 나는 이것을 어떻게하는지 이해하지 못합니까?

+0

SQL 구문이 좋지 않습니다. DELETE FROM 테이블 WHERE column = value를 사용하고 테이블 당 하나의 삭제 쿼리를 사용하거나 외래 키를 사용하십시오. –

+0

나는 내가 mysqli를 사용하여 작동 할 것이라고 생각 했으므로 삭제해야하는 많은 테이블을 가지고 있습니다. – rstewart

답변

0

이 쿼리는 정말 나쁘다고 생각합니다. 필자는 ID를 입력 매개 변수로 사용하여 저장 프로 시저를 만든 다음 모든 테이블에 대해 단일 삭제를 사용하는 방법을 제안합니다.