PHP를 사용하여 데이터베이스의 중복 레코드를 업데이트해야합니다. 예를 들어PHP를 사용하여 중복 된 MySQL 레코드 업데이트
:
나는 데이터베이스에있는 3 개 개의 동일한 기록 micheal
있습니다. 2 개의 micheal
레코드를 micheal 1
및 micheal 2
으로 업데이트해야하지만 현재는 micheal
으로 남겨 둡니다.
아무도 도와 드릴 수 있습니까?
PHP를 사용하여 데이터베이스의 중복 레코드를 업데이트해야합니다. 예를 들어PHP를 사용하여 중복 된 MySQL 레코드 업데이트
:
나는 데이터베이스에있는 3 개 개의 동일한 기록 micheal
있습니다. 2 개의 micheal
레코드를 micheal 1
및 micheal 2
으로 업데이트해야하지만 현재는 micheal
으로 남겨 둡니다.
아무도 도와 드릴 수 있습니까?
$query = "SELECT * FROM table ORDER BY name";
$result = mysql_query($query, $db) or die('MySQL Error: ' . mysql_error()); // if mysql_query fails, prints the error reported by the mysql server and stops execution
$lastName = "";
$i = 1;
while($row = mysql_fetch_assoc($result)) {
if ($lastName==$row['name']){
$q = "UPDATE table set name ='".$row['name']." ".$i."' WHERE id = ".$row['id'];
mysql_query($q, $dbh) or die ("problema con query");
$i++;
}
else
$i = 1;
$lastName = $row['name'];
}
동시 수정에 문제가있는 경우 ID와 이름을 배열로 저장하고 업데이트를 실행하십시오.
당신은 환영합니다,하지만 내 대답을 받아 들일 수 있다고 표시 할 수 있다면) – ganzux
봅니다 ....
UPDATE yourdata
SET name='michael 1'
WHERE name='michael'
LIMIT 0,1;
UPDATE yourdata
SET name='michael 2'
WHERE name='michael'
LIMIT 0,1;
그런 다음 다시 발생을 방지하기 위해 고유 인덱스를 추가합니다.
그리고 거기에 10000'마이클 '이라면 어떻게 될까요? :)'for ($ i = 0; $ i <9999; $ i ++) ... '? – J0HN
긴급으로 표시하는 것은 도움이되지 않습니다. 대신에 당신의 질문에주의하고 생각하십시오. 자, 지금까지 무엇을 시도 했습니까? –