2011-01-31 63 views
5

這似乎是一個非常簡單的查詢,但不知何故,我不斷收到錯誤...MySQL的更新多列問題

基本上,我剛剛得到了來自用戶的大量信息,現在我要去更新其在users表記錄在一個查詢:

UPDATE users SET timezone = '美國/紐約',SET updates = '否',SET verified = 'YES' WHERE id = '1'

然而,運行後,我得到以下錯誤: 「您的SQL語法有錯誤;檢查對應於你的MySQL服務器版本使用附近的「SET updates =‘NO’,SET verified =‘YES’WHERE id ='1" 行1」。

任何幫助是正確的語法手冊大加讚賞。

+0

和Yoda一樣,刪除額外的「SET」位。語法爲'UPDATE ... SET field = value,field = value,field = value' –

回答

9
UPDATE users SET timezone = 'America/New_York', updates = 'NO', verified = 'YES' WHERE id = '1' 
4

你更新的語法是錯誤的,你必須寫語法僅有一次。

UPDATE users SET col1= value1, col2= value2, col3= value3 WHERE condition; 

更多更新信息 UPDATE MANUAL

+0

+1,用於包含指向手冊的鏈接。 –

0

設置必須使用一次,不管你有多少列更新。您的查詢將是: -

更新用戶設置的時區=「美國/紐約」,更新=「NO」,驗證=「YES 'WHERE id ='1'