MySQL DELETE 语句用于从表中删除现有记录。 WHERE子句可以与DELETE语句一起使用来删除选定的行,否则所有记录将被删除。
在MySQL中使用DELETE语句的语法如下:
DELETE FROM table_name
WHERE conditions;
要在查询中指定条件,使用 MySQL 比较或逻辑运算符,如 <、>、=、LIKE、IN、NOT、NULL 等。
这样,要连接到 MySQL 服务器,可以使用 mysqli_connect() 函数。建立连接后,可以使用 mysqli_query() 函数对数据库执行查询。
从 MySQL 表中删除数据 - 面向对象风格
考虑一个数据库,其中包含名为 Employee 的表,包含以下记录:
EmpID | Name | City | Age | Salary |
---|---|---|---|---|
1 | John | London | 25 | 3000 |
2 | Marry | New York | 24 | 2750 |
3 | Jo | Paris | 27 | 2800 |
4 | Kim | Amsterdam | 30 | 3100 |
5 | Ramesh | New Delhi | 28 | 3000 |
6 | Huang | Beijing | 28 | 2800 |
下面的示例演示如何从该表中删除 EmpID 大于 4 的记录(使用面向对象样式)。
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDatabase";
//建立连接
$mysqli = new mysqli($servername, $username, $password, $dbname);
//检查连接
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: ". $mysqli->connect_error;
exit();
}
//从表中删除记录的查询
$sql = "DELETE FROM Employee
WHERE EmpID > 4";
//执行查询
if (!$mysqli->query($sql)) {
echo "Error deleting records: ". $mysqli->error;
} else {
echo "Records deleted successfully.";
}
//关闭连接
$mysqli->close();
?>
上述代码的输出将类似于:
Records deleted successfully.
从 MySQL 表中删除数据 - 过程样式
获得相同的结果使用面向过程风格的结果,可以使用以下脚本。
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDatabase";
//建立连接
$mysqli = mysqli_connect($servername, $username, $password, $dbname);
//检查连接
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: ". mysqli_connect_error();
exit();
}
//从表中删除记录的查询
$sql = "DELETE FROM Employee
WHERE EmpID > 4";
//执行查询
if (!mysqli_query($mysqli, $sql)) {
echo "Error deleting records: ". mysqli_error($mysqli);
} else {
echo "Records deleted successfully.";
}
//关闭连接
mysqli_close($mysqli);
?>
上述代码的输出将类似于:
Records deleted successfully.
完整 PHP MySQLi 参考
有关 PHP MySQLi 扩展的所有属性、方法和功能的完整参考,请参阅 PHP MySQLi 参考。