我正在尝试通过PHP从mySQL数据库中删除一行,但它无法正常工作。我尝试过以下方法:
mysql_query("DELETE FROM table WHERE id='$id'");
mysql_query("DELETE FROM 'table' WHERE id='$id'");
mysql_query("DELETE FROM `table` WHERE id=`$id`");
$ id是唯一标识符,我已经回应它以确保它正在发生。使用“或死”会导致死亡。这一行根本不会消失。
我应该尝试其他任何语法吗?
答案 0 :(得分:2)
我知道你试图尝试所有可能的组合,但它有助于了解MySQL语法中具体标点实际意味着什么。
`structure`
Grave重音仅用于列名等结构
'value'
撇号用于值,如id='$id'
。
mysql_query("DELETE FROM table WHERE id='$id'");
这是有效的语法。您还可以在table
附近添加重音符号。
mysql_query("DELETE FROM 'table' WHERE id='$id'");
这是无效的语法。 'table'
无效,因为它不是值列。
mysql_query("DELETE FROM `table` WHERE id=`$id`");
这是无效的语法。当它应该是撇号时,你会在值周围加上重音符号。
希望这些解释可以帮助您找出问题所在。
答案 1 :(得分:2)
错误检查帮助我发现在第二个mysql_close();
之前我有一个mysql_query
。我的语法是正确的,我只是没有仔细检查代码的其余部分。
答案 2 :(得分:1)
你的id
整数?试试
mysql_query("DELETE FROM `table` WHERE id=$id");
答案 3 :(得分:0)
你试过了吗?
mysql_query("DELETE FROM table WHERE id=".$id);
我问,因为你可能引用了一个号码(你的身份证) - 你不需要(或想要)这样做。
让我知道这是否有效 - 我不是专家,但这是我第一次看到它。