0

このSQLクエリの何が問題になっていますか..エラーが発生し続けます..エラーは以下にも記載されています

クエリは次のとおりです。

UPDATE Politicians SET Big Fan = Big Fan +3 WHERE ID = '2' 

 MySQL said: Documentation
#1064 - 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 'Fan = Big Fan + 3 WHERE ID ='2'' at line 1 
4

6 に答える 6

3

列名にスペースがある場合は、バッククォートを使用する必要があります。

UPDATE Politicians SET `Big Fan` = `Big Fan` +3 WHERE ID = '2' 
于 2013-03-24T19:48:17.753 に答える
0

列名のスペースが原因です。

UPDATE Politicians SET `Big Fan` = `Big Fan` +3 WHERE ID = '2' 
于 2013-03-24T19:48:29.987 に答える
0

角かっこがありません。これを試して

UPDATE Politicians SET [Big Fan] = [Big Fan] +3 WHERE ID = '2' 
于 2013-03-24T19:48:38.130 に答える
0

これは、MySQLテーブル名にスペースがあるためです。私はあなたがこのようなことを試すことができると信じています:

UPDATE `Politicians` SET `Big Fan` = `Big Fan` + 3 WHERE `ID` = '2' 
于 2013-03-24T19:49:00.123 に答える
0

これで、テーブル名と列名のスペースがPIAである理由がわかりました。

推測しますが

UPDATE Politicians SET `Big Fan` = `Big Fan` +3 WHERE ID = '2' 

政治家がBigFanという列を持っているとすると、mysqlはbigという単語とfanという単語を見ていますが、どちらも理解できません。

バックティックでラップすると、それが1つの「単語」として表示され、政治家テーブルの列を参照していることがわかります。

于 2013-03-24T19:49:54.740 に答える
0

理想的には、列名にスペースを入れないでください。むしろ「-」またはアンダースコアを付けてください。スペースがある場合は、この場合は「列名」を使用できます。

于 2013-03-24T19:50:29.723 に答える