我是SQL的新手,最近我在使用包含列名'S#'的表时遇到了问题。 所以我现在拥有的是
SELECT S#, SNAME FROM S WHERE CITY = 'London';
但S#部分给我一个操作员错误。我已经尝试将它作为varchar并进行[S#],但没有任何效果。任何帮助,将不胜感激。
由于
答案 0 :(得分:0)
使用反引号或双引号来转义名称:
SELECT `S#`, SNAME
FROM S
WHERE CITY = 'London';
设计自己的数据库时,请勿在名称中使用此类字符。坚持使用字母,数字和下划线。
答案 1 :(得分:0)
在任何 MySQL 数据库中使用反引号、双引号和单引号可以概括为两点:
在查询中使用反引号,
SELECT `S#`, SNAME
FROM S
WHERE CITY = 'London';
这些反引号称为带引号的标识符,它们告诉解析器将它们之间的文本作为文字字符串处理。当您的列或表包含关键字、空格或某些特殊字符时,它们非常有用。
答案 2 :(得分:-1)
就我而言,列名周围的反引号有效,但双引号无效。