有人可以帮我弄清楚我在 SELECT 语句中做错了什么吗?
SELECT *
FROM group
WHERE login = 'admin'
我的错误是:
在第 1 行的 'group WHERE login = 'admin'' 附近使用正确的语法
它应该会失败,但是因为管理员不在数据库中,但是当我插入数据库中的数据时,它仍然会失败。
GROUP
是保留关键字。您需要使用 back 对其进行转义以避免语法错误。
SELECT * FROM `group` WHERE login = '$username'
如果您有权更改表名,请将其更改为不是保留关键字,以避免将来再次出现语法错误。:D
作为旁注,SQL Injection
如果变量的值(s)来自外部,则查询很容易受到攻击。请看下面的文章,了解如何预防。通过使用PreparedStatements
,您可以摆脱在值周围使用单引号。