我的语法中出现Mysql错误

时间:2016-02-05 09:40:13

标签: php mysql sql error-handling

嘿,我的mysql语法有错误,我不知道为什么我会得到它。我无法在代码中看到错误,并且已经在网上查看了帮助......

    INSERT INTO downloads_log 
    (file,by,time) VALUES
    (1,1, NOW())

错误:

'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'by, time) VALUES (1,1,NOW())

3 个答案:

答案 0 :(得分:2)

byfiletime是MYSQL中使用的保留关键字。使用后退勾号(`)来转义查询中的关键字。将您的查询更改为:

INSERT INTO downloads_log 
    (`file`,`by`,`time`) VALUES
    (1,1, NOW())

答案 1 :(得分:2)

by是保留关键字。尝试:

INSERT INTO downloads_log 
(`file`, `by`, `time`) VALUES
(1, 1, NOW())

答案 2 :(得分:1)

您使用保留关键字作为列名。尽量避免使用保留关键字作为列名,但如果你没有选择,你必须将它们传递给反序`“在下面:

INSERT INTO downloads_log (`file`,`by`,`time`) VALUES (1,1, NOW())