MySQL DELETE

MySQL DELETE 语句

你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录。

你可以在mysql>命令提示符或PHP脚本中执行该命令。

语法

以下是SQL DELETE 语句从MySQL数据表中删除数据的通用语法:

DELETE FROM table_name [WHERE Clause]
  • 如果没有指定 WHERE 子句,MySQL表中的所有记录将被删除。
  • 你可以在 WHERE 子句中指定任何条件
  • 您可以在单个表中一次性删除记录。

当你想删除数据表中指定的记录时 WHERE 子句是非常有用的。


从命令行中删除数据

这里我们将在 SQL DELETE 命令中使用 WHERE 子句来删除MySQL数据表tutorials_tbl所选的数据。

实例

以下实例将删除 tutorial_tbl 表中 tutorial_id 为3 的记录:

[email protected]# mysql -u root -p password;
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> DELETE FROM tutorials_tbl WHERE tutorial_id=3;
Query OK, 1 row affected (0.23 sec)

mysql>

使用 PHP 脚本删除数据

PHP使用 mysql_query() 函数来执行SQL语句, 你可以在SQL DELETE命令中使用或不使用 WHERE 子句。

该函数与 mysql>命令符执行SQL命令的效果是一样的。

实例

以下PHP实例将删除tutorial_tbl表中tutorial_id为3的记录:

<?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 tutorials_tbl
        WHERE tutorial_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);
?>
时间: 2024-10-10 15:01:41

MySQL DELETE的相关文章

MySQL DELETE语句和TRUNCATE TABLE语句的区别

MySQL DELETE语句和TRUNCATE TABLE语句的区别 2010-10-08 16:05 佚名 互联网 字号:T | T 在MySQL数据库中,DELETE语句和TRUNCATE TABLE语句都可以用来删除数据,但是这两种语句还是有着其区别的,下文就为您介绍这二者的差别所在. AD:干货来了,不要等!WOT2015 北京站演讲PPT开放下载! MySQL DELETE语句和TRUNCATE TABLE语句功能相似,但是二者究竟有何区别呢?下文就将为您分析MySQL DELETE语

mysql delete from table 失败

SET @[email protected]@SQL_MODE, SQL_MODE='NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'; TRUNCATE TABLE nametruncate语句,是清空表中的内容,包括自增主键的信息.truncate表后,表的主键就会重新从1开始. check the manual that corresponds to your Mysql server version for the right syntax to y

mysql delete 别名问题 (转)

mysql delete 别名问题 - 流星焰的日志 - 网易博客 http://wzl3585493.blog.163.com/blog/static/7615611020126188377970/ delete from student s where s.id in (1,2,3);(执行失败) select s.* from student s where s.id in (1,2,3);(执行成功) 结果处理:       1.不用别名 如: delete from student w

雷林鹏分享:MySQL DELETE 语句

你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录. 你可以在 mysql> 命令提示符或 PHP 脚本中执行该命令. 语法 以下是 SQL DELETE 语句从 MySQL 数据表中删除数据的通用语法: DELETE FROM table_name [WHERE Clause] 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除. 你可以在 WHERE 子句中指定任何条件 您可以在单个表中一次性删除记录. 当你想删除数据表中指定的记录时 WH

Python MySQL Delete

章节 Python MySQL 入门 Python MySQL 创建数据库 Python MySQL 创建表 Python MySQL 插入表 Python MySQL Select Python MySQL Where Python MySQL Order By Python MySQL Delete Python MySQL 删除表 Python MySQL Update Python MySQL Limit Python MySQL Join 删除记录 可以使用"DELETE FROM&q

mysql delete删除记录数据库空间不减少问题解决方法

记得在中学时学计算机时老师就告诉我delete删除记录只是给数据库中的记录加一个删除标识了,这样数据库空间并不是减少了,当时没想这么多,昨天发现一个数据库利用delete 删除之后容量没变,后来百度了一下发现了下面一站长分享的文件,写得非常的不错,整理一下给各位参考. 今天空间商告诉我数据库空间满了,检查了一下,发现网站用户行为记录数据表竟然占了20多MB.积累了半年了,该删除释放一下空间了.果断delete之后发现数据库空间竟然没少,虽然数据记录数是零. 原来这是因为删除操作后在数据文件中留下

mysql delete无法释放空间用分区代替

随着数据库数据量的变大,如果要清除某个月的数据,用delete命令删除,mysql不会释放空间,必须整理碎片或者用修改引擎来重建表,才会释放空间,但是由于数据量很大,每次重建都得10-12小时的时间,太长了,想到了用mysql分区来解决这种弊病,通过删除分区,可以直接删除数据文件,那当然也可以释放空间. 分区的相关知识我就先不讲了,就说两点 分区字段不要有空值,因为空值会默认到无用分区中,这样查询会多扫描分区. 查询条件最好要带着分区字段,不然性能会很低,需要在所有分区里扫一遍. 添加分区脚本

mysql delete数据 空间占用不减少的解决办法

今天空间商告诉我数据库空间满了,检查了一下,发现网站用户行为记录数据表竟然占了20多MB.积累了半年了,该删除释放一下空间了.果断delete之后发现数据库空间竟然没少,虽然数据记录数是零. 原来这是因为删除操作后在数据文件中留下碎片所致.DELETE只是将数据标识位删除,并没有整理数据文件,当插入新数据后,会再次使用这些被置为删除标识的记录空间.另外实际操作过程中还发现这个问题还存在两种情况. (1)当DELETE后面跟条件的时候,则就会出现这个问题.如: delete from table_

mysql delete 注意

mysql中You can't specify target table <tbl> for update in FROM clause错误的意思是说,不能先select出同一表中的某些值,再update这个表(在同一语句中). 例如下面这个sql: 报错 DELETE from monthxl where dateTime in ( SELECT a.dateTime from monthxl a where a.dateTime !=( select max(b.dateTime) fro