奇怪的MYSQL反引号(Grave accent)

时间:2012-12-03 16:33:11

标签: mysql

我的数据库中有两个表,信息和注释,其结构如下:

info (id(int(10)), name(varchar(80)), ...19 other columns.., phone(int(16)));
comment (id(int(10)), name(varchar(80)), comment(varchar(80)), phone(int(16)));

当我执行这些SQL查询时:

INSERT INTO info (name, ...19 other columns.., phone) VALUES ('asa', ....., 123456) 

完美无缺。

但是当涉及到INSERT INTO comment (name, address, phone) VALUES ('asa', 'asa', 123456)时,它会报告SQL语法错误,除非我像这样用`phone`

包围手机的反引号



老实说,我可以通过添加反引号来完成所有事情,但我想为什么它有效。提前谢谢!

2 个答案:

答案 0 :(得分:0)

我想在你要插入的地址中有一个逗号或其他内容,因此它会尝试将除逗号之外的所有内容插入到手机字段中。

答案 1 :(得分:0)

表格结构name, comment , phone

您的sql命令name, address , phone(地址和评论不同)

检查所有列和“插入”名称之间是否匹配。

错误消息很重要。请尽可能发布。显示整个表列名称和整个“insert into”语句也很重要。