Php 另一个使用INSERT INTO的MySQL语法错误

Php 另一个使用INSERT INTO的MySQL语法错误,php,mysql,syntax,insert,Php,Mysql,Syntax,Insert,MySQL为此查询返回语法错误(通过PHP): 错误: 您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解使用“desc,category”值附近的正确语法(“www.contoso.com”、“contoso”、“我的网站”、“Vani”位于第1行 我看不出它有什么问题。它给出了什么?DESC是一个MySQL保留字……如果您想将其用作列名,必须将其括在反勾中 单词“near”后的实际错误消息指示解析器认为错误在SQL语句中的确切位置……在本例中,位于单词“desc”。这通常是

MySQL为此查询返回语法错误(通过PHP):

错误: 您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解使用“desc,category”值附近的正确语法(“www.contoso.com”、“contoso”、“我的网站”、“Vani”位于第1行


我看不出它有什么问题。它给出了什么?

DESC是一个MySQL保留字……如果您想将其用作列名,必须将其括在反勾中


单词“near”后的实际错误消息指示解析器认为错误在SQL语句中的确切位置……在本例中,位于单词“desc”。这通常是诊断问题的良好指南。

desc是一个保留字,必须用反勾转义

INSERT INTO links 
    (link, name, `desc`, category) 
    VALUES 
    ('www.datavirtue.com', 'Data Virtue', 'My Website', 'Vanity')
desc
是一个名称,必须用反引号括起来,如下所示

INSERT INTO links (link, name, `desc`, category) VALUES ('www.datavirtue.com', 'Data Virtue', 'My Website', 'Vanity')

“desc”是一个保留字。使用“description”

作为一般规则,不要将保留字用于表名或列名。这节省了很多麻烦。在我不知道的情况下,我不知道它是一个保留字。谢谢!我曾尝试一次性勾选所有列名,但不起作用。我将它改为“description”相反,它起了作用。@user513905-确保你使用了反勾(`)而不是单引号(')哇,这就是区别。我没有注意那个小细节。
INSERT INTO links (link, name, `desc`, category) VALUES ('www.datavirtue.com', 'Data Virtue', 'My Website', 'Vanity')