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: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' 

假设 Politicians 有一个专栏叫 Big Fan,mysql 看到的是 big 和 fan 这两个词,它都不理解。

用反引号括起来,使其将其视为一个“单词”,然后它知道您指的是政治家表中的一列

于 2013-03-24T19:49:54.740 回答
0

理想情况下,列名中不应包含空格。而是使用“-”或下划线。现在,如果您有空间,那么您可以在这种情况下使用“列名”。

于 2013-03-24T19:50:29.723 回答
0

这是由于列名中的空格。

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