MySQL删除查询


如果要从任何MySQL表中删除记录,则可以使用SQL命令DELETE FROM。你可以在mysql>提示符以及任何脚本(如PHP)中使用此命令。

语法

以下代码块具有DELETE命令的通用SQL语法,用于从MySQL表中删除数据。

DELETE FROM table_name [WHERE Clause]
  • 如果未指定WHERE子句,则将从给定的MySQL表中删除所有记录。

  • 你可以使用WHERE子句指定任何条件。

  • 你可以一次删除一个表中的记录。

当你要删除表中的选定行时,WHERE子句非常有用。

从命令提示符中删除数据


这将使用带有WHERE子句的SQL DELETE命令将选定的数据删除到MySQL表中–newbiego_tbl.

以下示例将从newbiego_tbl中删除其newbiego_id为3的记录。

root@host# mysql -u root -p password;
Enter password:*******

mysql> use TUTORIALS;
Database changed

mysql> DELETE FROM newbiego_tbl WHERE newbiego_id=3;
Query OK, 1 row affected (0.23 sec)

mysql>

使用PHP脚本删除数据


你可以在SQL函数中使用带有或不带有WHERE子句的SQL DELETE命令–mysql_query()。该函数将以与在mysql>提示符下执行SQL命令相同的方式执行SQL命令。

请尝试以下示例从newbiego_id为3的newbiego_tbl中删除一条记录。

<?php
    $dbhost = 'localhost:3036';
    $dbuser = 'root';
    $dbpass = 'rootpassword';
    $conn = mysql_connect($dbhost, $dbuser, $dbpass);
   
    if(! $conn ) {
        die('Could not connect: ' . mysql_error());
    }

    $sql = 'DELETE FROM newbiego_tbl WHERE newbiego_id = 3';

    mysql_select_db('TUTORIALS');
    $retval = mysql_query( $sql, $conn );

    if(! $retval ) {
        die('Could not delete data: ' . mysql_error());
    }
    echo "Deleted data successfully\n";
    mysql_close($conn);
?>