- 介绍
-
两种方式的区别
-
有外键时
set foreign_key_checks = 0;
truncate act_ru_execution;
set foreign_key_checks = 1;
查看原文:http://surenpi.com/2016/10/10/clean_database_table_data/
本文介绍清空数据库表数据的几种方式,以及一些细节问题。
- 介绍
delete from table_name; truncate table_name;
两种方式的区别
有外键时
set foreign_key_checks = 0;
truncate act_ru_execution;
set foreign_key_checks = 1;
查看原文:http://surenpi.com/2016/10/10/clean_database_table_data/转载于:https://my.oschina.net/surenpi/blog/891743
SQL清空表数据表并使得自增ID从1重新开始计数
truncate table table_name
MySql截断表 清空表数据
truncate table users;
截断表可以用于删除表中的所有数据。截断表命令还会回收所有索引的分配页。截断表的执行速度与不带where子句的delete(删除)命令相同,甚至比它还要快。delete(删除)一次删除一行数据,并且将每一行被删除的数据都作为一个事务记录日志;而truncate (截断)表则回收整个数据页,只记录很少的日志项。delete(删除)和truncate(截断)都会回收被数据占用的空间,以及相关的索引。只有表的拥有者可以截断表。
另外,truncate表之后,如果有自动主键的话,会恢复成默认值。
Oracle清空表数据这里介绍两种Oracle删除表数据的方式:Sql代码delete [表名]truncate table [表名]delete 删除表数据,表文件不会被清空.只会设置unused标记.truncate table 删除表数据,表文件也会被清空.以上删除都会有引用异常,使用以下处理方式:Sql代码alter table [表名] disable primary key cascade;truncate table [表名];alter table [表名] enable primary key ;Oracle清空表数据这里介绍两种Oracle删除表数据的方式:Sql代码delete [表名]truncate table [表名]delete 删除表数据,表文件不会被清空.只会设置unused标记.truncate table 删除表数据,表文件也会被清空.以上删除都会有引用异常,使用以下处理方式:Sql代码alter table [表名] disable primary key cascade;truncate table [表名];alter table [表名] enable primary key ;