我正在尝试在下面的查询表中插入一些值:
Insert into
auditlog (
event,
desc,
userid,
useripaddress,
audittype
)
VALUES (
'User Authenticated',
'Useradminsuccessfully logged in to the system',
'1',
'127.0.0.1','1'
)
它给了我以下错误: #1064 - 你的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 'desc,userid,useripaddress,audittype)VALUES ('User Authenticated', 'User admin su' at line 1
附近使用的正确语法但是,当我使用 PHPMYAdmin 运行插入时,它确实插入了一个值,并且生成的查询是
INSERT INTO
`auditlog`(
`event`,
`desc`,
`userid`,
`useripaddress`,
`audittype`)
VALUES (
'User Authenticated',
'Useradminsuccessfully logged in to the system',
'1',
'127.0.0.1','1'
)
我看到的唯一区别是我认为不需要的引号。我不明白我哪里出了问题,现在我很头疼:):)
最佳答案
desc
周围需要反引号,因为它是 reserved word .
INSERT INTO auditlog (event, `desc`, userid, useripaddress, audittype)
VALUES (
'User Authenticated',
'Useradminsuccessfully logged in to the system',
'1',
'127.0.0.1',
'1'
)
如果您不确定其他列名称是否是保留字,则在它们周围添加反引号也没有什么坏处。
关于php -> MYSQL 查询无法找出问题所在,出现错误 #1064,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8001066/