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

数据库怎么清空一个表中所有数据,第1张

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

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

方法一:Delete Form 表名

方法二:TRUNCATE TABLE

在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。

DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。

TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。新行标识所用的计数值重置为该列的种子。如果想保留标识计数值,请改用 DELETE。如果要删除表定义及其数据,请使用 DROP TABLE 语句。

对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带 WHERE 子句的 DELETE 语句。由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。

TRUNCATE TABLE 不能用于参与了索引视图的表。

贴过来的,但是很全面

一般就是DLEETE from 表


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6423796.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-21
下一篇 2023-03-21

发表评论

登录后才能评论

评论列表(0条)

保存