我不确定为什么这个查询不起作用!此查询将删除用户的帐户:
$query = mysqli_query($connection, "DELETE * FROM users WHERE cookie='$cookie'");
但是,当我用DELETE
替换SELECT
时,它可以正常工作!我的DELETE
语法错了吗?
答案 0 :(得分:10)
使用DELETE
时不需要*。只是做
"DELETE FROM users WHERE cookie='$cookie'"
答案 1 :(得分:3)
在DELETE语句中不能有*
。
如果要删除所有行,请执行以下操作:
$query = mysqli_query($connection, "DELETE FROM users WHERE cookie='$cookie'");
当您使用SELECT * FROM
时,*
会选择所有内容。但是对于DELETE,不需要它,因为您只能删除整行。
答案 2 :(得分:2)
当您使用SELECT *
时,它可以正常工作,因为您正在从表中选择所有列。在您的情况下,您的查询应该如下所示
DELETE FROM users WHERE cookie='$cookie'
因为这里不需要指定列。