数据库怎么清空一个表中所有数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库怎么清空一个表中所有数据相关的知识,希望对你有一定的参考价值。

有两种办法可以删除表中的所有数据: 

    TRUNCATE TABLE 删除表中的所有行,而不记录单个行删除操作。;语法 TRUNCATE TABLE name 参数 name 是要截断的表的名称或要删除其全部行的表的名称。

    Delete from tablename where 1=1

方法1:重建库和表:

一、只导出表结构:

导出整个数据库结构(不包含数据):mysqldump -h localhost -uroot -p123456  -d database > dump.sql

导出单个数据表结构(不包含数据):mysqldump -h localhost -uroot -p123456  -d database table > dump.sql

二、只导出表数据:

导出整个数据库数据:mysqldump -h localhost -uroot -p123456  -t database > dump.sql

三、导出结构+数据

导出整个数据库结构和数据:mysqldump -h localhost -uroot -p123456 database > dump.sql

导出单个数据表结构和数据:mysqldump -h localhost -uroot -p123456  database table > dump.sql

参考技术A

两种方法:

1、delete  from tableName
2、truncate table tableName

相较而言,完全删除一个表所有记录,truncate 比 delete速度快的多。


相关延伸:二者区别

1.DELETE
・DML语言
・可以回退
・可以有条件的删除

DELETE FROM 表名
WHERE 条件

2.TRUNCATE TABLE
・DDL语言
・无法回退
・默认所有的表内容都删除
・删除速度比delete快。

TRUNCATE TABLE 表名

mysql 数据被清空了怎么恢复

参考技术A 以下情况可以恢复数据:

1 innodb引擎表开启了事务,执行dml语句,比如delete、update、insert之类,并且没有提交即commit操作的话,可以执行rollback进行回滚恢复。如果是ddl操作,如drop、create、alter之类的操作时无效的

2 在进行删除操作之前有备份,比如mysqldump,物理备份数据文件之类的操作,那么可以恢复到删除前的数据

3 如果你的删除操作是直接对data下的文件进行删除,注意,不是粉碎文件操作,那么你可以尝试用磁盘恢复软件来找回被误删的数据文件;

除以上情况,其他真的是没法恢复了,不过貌似很多公司号称能够恢复,要收费,具体他们怎么恢复我就不晓得了。本回答被提问者采纳
参考技术B 找备份,没有就没办法了。

以上是关于数据库怎么清空一个表中所有数据的主要内容,如果未能解决你的问题,请参考以下文章

MySQL-清空表

C#中如何清空DataSet数据集对象表中的数据啊?

C#里怎样清空DataGridview中的数据

SQL SERVER 怎样清空表的数据

mysql 数据被清空了怎么恢复

如何清空所有数据库中所有表里的所有数据