数据库删除表数据:DELETE 和 TRUNCATE TABLE 的区别

1. DELETE  语句的作用是在指定表或指定视图的基表中删除记录行。用户可以删除位于用户自己模式中的表的记录行,也可以删除在该表上具有 DELETE 权限的表的记录行,并且在删除指定表的记录行时,必须满足该表上的完整性约束条件。其语句格式如下:

DELETE  ROM  [WHERE condition(s)];


2. TRUNCATE TABLE 语句用于删除表的所有数据(截断表)。其语句格式如下:

TRUNCATE TABLE  ;


3. DELETE 删除表的所有数据时,不会释放表所占用的空间,并且操作是可以撤销的。


4. TRUNCATE TABLE 删除表的所有数据时,执行速度更快,而且还会释放表、段所占用的空间,并且操作是不能撤销的。

5. 如果数据比较少,delete比较高效。如果数据比较多,truncate比较高效。

你可能感兴趣的:(数据库,数据库,mysql,sql)