PHP를 사용하여 모든 처리를 수행하는 것이 좋습니다.
당신이 당신의 고객 레코드를 반복하고, 첫 번째 검사는 기록이있는 경우 :
$query = "SELECT customer_account_number FROM table WHERE customer_account_number = 1234";
$result= $mysql -> query($query);
$num = $result -> num_rows;
if($num == 1){
// The record already exists so you update.
$update_query = "UPDATE table SET some_field = 'Some Value' WHERE customer_account_number = 1234";
$update_result= $mysqli -> query($update_query);
}else{
// The record doesn't exist so create a record.
$insert_query = "INSERT INTO table (customer_account_number) VALUES (1234)";
$insert_result= $mysqli -> query($insert_query);
}
을 다른 방법으로, 고객의 계좌 번호를 얻을 수 및 배열에서 그들을 팝업 하나 개 선택 쿼리를 할 수 있습니다. 당신이 고객의 계좌 번호가 있는지 중복을 추가 할 수 있도록 여분의 보호를 추가합니다 다음 UNIQUE 컬럼 있는지 확인하는 경우, Tadman에 의해 제안 또한
$query = "SELECT customer_account_number FROM table";
$result= $mysql -> query($query);
$num = $result -> num_rows;
while($row = $result -> fetch_array(MYSQLI_ASSOC)){
$cust_records[] = $row['customer_account_number'];
}
// Then for each customer record your looping through.
if(in_array($customer_record_id, $cust_records)){
// It exists - so just update
$update_query = "UPDATE table SET some_field = 'Some Value' WHERE customer_account_number = 1234";
$update_result= $mysqli -> query($update_query);
}else{
// Doesn't exist - insert
$insert_query = "INSERT INTO table (customer_account_number) VALUES (1234)";
$insert_result= $mysqli -> query($insert_query);
}
.
셀 수에 대해'SELECT *'를 호출하는 것은 정말로 좋지 않습니다. 이러지 마. 대신 직접 계산을 선택하십시오. – tadman
예 - 정말 빠른 예였습니다. 나는 갱신 할 것이다. – ajtrichards
Count는 항상 한 행을 반환합니다. – tadman