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

我有一个表,其列名称如25、50、100等。


尝试更新表时,无论如何操作,都会出现错误


UPDATE table SET '25'='100' WHERE id = '1'

我尝试过用各种方式引用和反引号,但没有成功。


该错误始终遵循以下方面:


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


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


GCT1015
浏览 2776回答 3
3回答

胡说叔叔

从文档:标识符可以以数字开头,但除非加引号,否则不能仅由数字组成。这意味着您必须用诸如25的反引号将其引用:UPDATE table SET `25`='100' WHERE id='1'

一只萌萌小番薯

正如其他人所说,你可以背打勾的名称表,列等。只要确保你不回来打勾你的价值观,否则它就会将其解释为列名。因此,在您的示例中,仅需要对25进行打勾:UPDATE table SET `25`=100 WHERE id=1

皈依舞

在MySQL名称可以开始以一个数字,而不能是完全的数字-他们不能混淆使用整数。所以不行。而且,如果您以数字开头的标识符,则应该确定您坚持使用MySQL,因为许多(大多数?)其他数据库引擎在列名的开头都需要一个字母字符。(正如评论所说,完全整列名时,如果你坚持使用倒引号字符允许的-如果你试图反引号,仍然得到了一个语法错误,张贴您使用的精确反引号语法)。另外,当然,如果选择整数列,您将产生一些难以阅读的SQL!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

MySQL