按行号

时间:2016-09-10 16:52:41

标签: php mysql database sql-delete

我是使用MySQL查询的新手,所以请耐心等待。我在数据库连接(iPhone应用程序)的客户端获得了一组对象,我试图实现一个删除按钮,让用户可以选择删除数组中的某个对象。

我希望得到一个返回的整数,它表示被删除的对象的索引,现在我创建一个PHP脚本来获取该索引并使用它删除我的匹配行MySQL表。

如何指定要删除的特定行号?例如,如果我的数组中的第四个对象被删除,我得到一个3的索引返回给我。有没有办法使用这个索引来指定我想删除MySQL数据库中的第四行?

我得到了DELETE FROM" MySQLTable"的全部语法。在哪里...但在WHERE之后它有点令人困惑,因为在我看来你总是要指定一个条件,而不是只传递你想要删除的一些行。我错了吗? MySQL表中的行甚至有索引吗?我认为他们这样做。关于如何通过传入值(最好是索引)来删除数据库中特定行的一些提示将不胜感激。

1 个答案:

答案 0 :(得分:1)

要小心,因为数组是零索引的(数组第一项将是0)并且通常数据库表不是(表第一项将是1),这意味着数组的第四项是3,而数据库表的第四项将是4.

但是,如果您要删除要删除的行ID,则必须通过添加该数字来扩展查询,例如:

DELETE FROM "MySQLTable" WHERE rowIndex = 'numberToDelete'

您需要根据自己的代码更改rowIndexnumberToDelete

通常,数据库表中的行将具有索引,但索引必须在表中手动定义,因为它不会自动添加。

---附加信息---

您的数据库表中需要一个列(示例中为rowIndex),其中包含您在数组中的索引,假设所有值都可能是您的主键是独一无二的。

然后,您可以在sql查询中使用整数值来删除该行,例如:

$sql = "DELETE FROM MySQLTable WHERE rowIndex = '" . $numberToDelete . "'";