2013-02-21 6 views
1

MySQL의 테이블 예를 대체하는 방법 :

여러 행을

<table> 
    <tr> 
    <td>id</td> 
    <td>value</td> 
    </tr> 
    <tr> 
    <td>aa</td><td>1111</td> 
    </tr> 
    <tr> 
    <td>bb</td><td>1111</td> 
    </tr> 
    <tr> 
    <td>cc</td><td>2222</td> 
    </tr> 
    <tr> 
    <td>dd</td><td>3333</td> 
    </tr> 
    <tr> 
    <td>ee</td><td>1111</td> 
    </tr> 
</table> 
<br /> 

내가 여기있는 나를 PHP와 4444s에 1111s의 값을 대체하는 데 도움이 궁금 새로운 오전. 내가 추적을 시도하고 작동하지 않았다

:

$의 SQL = "UPDATE tablename에가 ('4444', '1111'id)를 교체 = id 설정";

+1

에 오신 것을 환영합니다 교체해야합니다. [코드 샘플'{}'] (http://i.stack.imgur.com/VYd26.png) 툴바 버튼을 사용하여 소스 코드를 포맷 할 수 있습니다. 이번엔 내가 너 한테 해 줬어. 또한 "작동하지 않음"을 독점적 인 설명으로 피하십시오. 이는 아무 말도하지 않는 것과 같습니다. –

답변

2

당신은 value하지 스택 오버플하는 ID

$sql="UPDATE tablename SET `value` = REPLACE(`value`,'1111','4444')"; 

하거나

$sql="UPDATE tablename SET `value` = '4444' WHERE value = '1111'"; 
+1

나는 두 번째 것에 투표 할 것입니다. 첫 번째 매개 변수를 사용하고 '32111123'과 같은 값이 있으면 '32444423'이됩니다. 문자열 바꾸기는 다음과 같은 경우에는 피해야합니다. – Flater

+0

바꾸기를 원하는 실제 값이 아니라 더미 값임을 알고 있지만, 요점을 알 수 있습니다 ;-). – Flater

+0

@Flater 나는 동의한다. 그러나 op가 speified에 포함 된 값을 대체하기를 원한다는 다른 레코드가 있다는 것을 궁금해했다.': D' –

0
UPDATE tablename SET value = "4444" WHERE value = "1111" 
0
UPDATE tablename 
SET value='4444' 
WHERE value='1111' 
관련 문제