PHP MySQL 删除记录2025年5月14日 | 阅读 5 分钟 要在 PHP 中删除 MySQL 数据库中的记录,SQL 提供了 DELETE SQL 语句。自 PHP 5.5 及其后续版本以来,旧的 mysql_query() 函数已被弃用。现代 PHP 代码应采用以下替代方案之一:
SQL DELETE 语句的语法注意:如果省略 WHERE 子句,将删除表中的所有记录。PHP MySQLi 删除记录示例示例删除前
输出 Connected successfully Record deleted successfully 删除后
说明 此过程式示例连接到 MySQL 数据库,使用固定 ID 构建 DELETE 查询,使用 mysqli_query() 运行它,然后关闭连接。 PHP MySQLi DELETE(面向对象)示例删除前
输出 Record was deleted successfully. 删除后
说明 此示例展示了面向对象的 MySQLi 用法。它从数据表中删除 ID 为 201 的记录。如果查询成功,将显示成功消息。 PHP PDO DELETE 语句示例删除前
输出 Record was deleted successfully. 删除后
说明 此 PDO 示例连接到数据库,运行 DELETE 查询,并优雅地处理异常。由于此 DELETE 操作不返回结果,因此使用 exec() 方法。 使用 MySQLi 预处理语句进行 PHP DELETE示例删除前
输出 Record deleted successfully using prepared statement 删除后
说明 此示例使用预处理语句安全地删除记录。将“?”占位符转换为变量,使查询免受 SQL 注入攻击。 使用 PDO 预处理语句进行 PHP DELETE示例删除前
输出 Record deleted successfully using PDO prepared statement 删除后
说明 此 PDO 类型使用命名参数:id 来安全地删除记录。bindParam() 方法在执行前绑定实际值,并提供强大的保护和更好的代码可读性。 现实世界中的例子示例 1:从 MyGuests 表中删除假设有一个名为“MyGuests”的表,如下所示:
要删除 id = 3 的记录,您可以点击这里 删除后,表格变为
说明 这是一个简单的删除示例,根据唯一 ID 删除给定记录。通过使用 WHERE 子句,只会删除预期的记录。 示例 2:根据条件删除多个记录考虑一个名为“persons”的表,其中包含以下数据:
要删除所有名字为“John”的记录,请使用以下 SQL 命令: 删除后,表格将如下所示:
说明 此示例演示如何通过 WHERE 子句中的条件删除多个记录。所有 first_name = 'John' 的条目都将被删除。此方法对于批量清理(包含共享属性的手机号码,从而易于删除测试帐户或过时的用户记录)非常方便。 结论使用 DELETE SQL 命令在 PHP 中从 MySQL 数据库中删除记录很容易,但必须谨慎管理。现代 PHP 鼓励使用 MySQLi 或 PDO,它们支持预处理语句,这是一种防止 SQL 注入攻击的防御机制。切勿忘记包含 WHERE 子句,以避免意外删除整个表。 如果您的项目采用过程式或面向对象架构,您可以使用过程式或面向对象风格;如果您想要数据库可移植性,您可以使用 PDO。强烈建议在用户输入驱动的操作中使用预处理语句,以确保数据完整性和应用程序的完全安全性。 下一主题PHP MySQL SELECT |
我们请求您订阅我们的新闻通讯以获取最新更新。