天天看点

第二章 SQL命令参考-TRUNCATE

TRUNCATE

Empties a table of all rows.

概要

TRUNCATE[TABLE] name [,...] [CASCADE | RESTRICT]

描述

TRUNCATE快速删除一个表或一组表中的所有行。 它与每个表格上的非限定条件具有相同的效果,但由于它实际上并不扫描表格,所以速度更快。 这在大型表格上最有用。

您必须在表上具有TRUNCATE特权才能截断表行。

parameter

name

要截断的表的名称(可以是模式修饰的)。

CASCADE

由于该关键字适用于外键引用(Greenplum数据库不支持),因此不起作用。

RESTRICT

由于该关键字适用于外键引用(Greenplum数据库不支持),因此不起作用。

Notes

TRUNCATE不会运行任何用户定义上可能存在的表的DELETE触发器。

TRUNCATE不会截断指定表中继承任何表。只有指定的表将被截断,而不是它的子表。

TRUNCATE不会截断分区表的任何子表。如果指定了分区表的一个子表,TRUNCATE不会从子表及其子表中删除行。

示例

Empty the table films:

TRUNCATE films;

兼容性

There is no truncate command in the SQL standard.

相关参考

DELETE, DROP TABLE