2012-12-25 3 views
2

왜 내 MySQL의 테이블에# 1062 - 항목을 중복 '0'내가 쿼리를 수행 할 때

CREATE TABLE IF NOT EXISTS `phpbb_users_copy` (
    `username` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', 
    `username_clean` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', 
    `user_password` varchar(40) COLLATE utf8_bin NOT NULL DEFAULT '', 
    `user_email` varchar(100) COLLATE utf8_bin NOT NULL DEFAULT '' 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; 

UPDATE phpbb_users 
SET  username_clean ='username' AND 
     user_password ='$H$76MZf0m0LJ5T1Tkz/' AND 
     user_email ='[email protected]' AND 
     username ='Username' 
WHERE username_clean ='username' 

내가 오류 얻을 키 'username_clean'

#1062 - Duplicate entry '0' for key 'username_clean' 
+0

확실 하시겠습니까? 귀하의 UPDATE 문법은 정확합니까? –

+0

구문 상 정확한 의미는 무엇입니까 –

+1

@JW의 대답보기 ... –

답변

7

UPDATE 문을 사용하는 경우 COMMA이 아닌가 아닌 업데이트 할 열을 구분해야합니다.

  • UPDATE phpbb_users 
    SET  username_clean ='username' , 
         user_password ='$H$76MZf0m0LJ5T1Tkz/' , 
         user_email ='[email protected]' , 
         username ='Username' 
    WHERE username_clean ='username' 
    
    UPDATE Syntax

UPDATE

당신이 phpbb_users_copy에 테이블을 phpbb_users하지를에 업데이트되어 있다는 사실을 양지하시기 바랍니다.

관련 문제