2010-12-29 25 views
4

私は、次のMySQLのエラーを取得しています:なぜこのMySQLエラーが発生しますか?「あなたはSQL構文にエラーがありますか?」

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET type = 'movie', SET category = 'New', SET music = 'Pop', SET' at line 1

はHERESに私のクエリ:私が間違ってやっている

UPDATE music_content 
SET title = 'Classic', 
SET type = 'movie', 
SET category = 'New', 
SET music = 'Pop', 
SET audience = 'Everyone' 
WHERE id = '6' 

わかりませんか? - すべてのカラムとテーブルが存在し、すべてのデータがエスケープされます(mysql_real_escape_string()を使用)。さらに、有効な/接続されたMySQL接続があります。

MySQLバージョン:5.1.41。

+0

もし私が間違っていないならば、SETは、で区切られる必要はありません。 – Shoe

答えて

7

UPDATE syntaxは、複数の列が更新されている場合でも、1つだけSETを使用します。

ので、試してみてください。

UPDATE music_content 
SET title = 'Classic', 
type = 'movie', 
category = 'New', 
music = 'Pop', 
audience = 'Everyone' 
WHERE id = '6' 
1

あなたは一度だけ "SET" 持っている必要があります。

UPDATE music_content SET title = 'Classic', type = 'movie', category = 'New', music = 'Pop', audience = 'Everyone' WHERE id = '6' 
1

をそのようにあなたが唯一、1 SETを持っている必要があります。

PDATE music_content SET title = 'Classic', type = 'movie', category = 'New', music = 'Pop', audience = 'Everyone' WHERE id = '6' 
0

は私が考えます1つのSETだけが必要です。他のものを取り除き、それが機能するかどうか確認してください。

0

あなたのステートメントには、豊富なSETがあります。拳1以外はすべて落としてください。詳細については、UPDATE Syntax documentationを参照してください。

関連する問題