可以使用数字来命名MySQL表列吗​​?

Dan*_*ter 19 mysql ddl

我有一个表,其列名如25,50,100等.

当我试图更新表时,无论我怎么做,我都会收到错误

UPDATE table SET '25'='100' WHERE id = '1'
Run Code Online (Sandbox Code Playgroud)

我试过引用和反击每一个方向,但没有成功.

错误始终如下:

您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第1行''25'= 100 WHERE id = 1'附近使用正确的语法

如果我将列名更改为twentyfive- 我没有问题,但这不是我想要的.是否可以使用数字作为列名?

Mat*_*hew 44

来自文档:

标识符可以以数字开头,但除非引用可能不仅仅由数字组成.

这意味着你必须用"25"这样的后面的标记引用它:

UPDATE table SET `25`='100' WHERE id='1'
Run Code Online (Sandbox Code Playgroud)


小智 6

正如其他人所说,您可以反勾号表、列等的名称。只要确保您没有反勾号您的值,否则它会将它们解释为列名。因此,在您的示例中,仅需要重新勾选 25:

UPDATE table SET `25`=100 WHERE id=1
Run Code Online (Sandbox Code Playgroud)