SQL错误#1064帮助请

时间:2016-06-05 00:59:49

标签: php mysql

我试图按照this website上的教程,但当我尝试插入以下语句时,我收到以下错误:

#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 
'`INSERT INTO  login_admin (user_name, user_pass)
VALUES
(
‘admin’, SHA(‘a`' at line 7 
INSERT INTO login_admin (user_name, user_pass)
VALUES
(
‘swashata’, SHA(‘swashata’)
)

INSERT INTO login_admin (user_name, user_pass)
VALUES
(
‘admin’, SHA(‘admin’)
)

1 个答案:

答案 0 :(得分:1)

您尝试同时运行两个查询,而不是一个。每个INSERT语句都是一个单独的查询。您必须使用分隔符(;)分隔查询。

事实上,除非您的服务器上有一些错误的设置(allowing multiple queries at once),否则您甚至无法将其作为两个单独的查询运行,或者使用多个VALUES列表将它们组合在一起。

另请注意,您不能使用刻度线()来表示字符串值。您需要使用单引号(')。

最好的方法是将查询重写为:

INSERT INTO login_admin (`user_name`, `user_pass`) VALUES
( 'swashata', SHA('swashata') ),
( 'admin', SHA('admin') )

最后,我确实希望您没有使用SHA来生成密码。这不安全。使用PHP's built-in password functionality