我试图按照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’)
)
答案 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。