TRUNCATE

TRUNCATE — empties a table

Syntax

TRUNCATE TABLE [schema.]tableName

Description

TRUNCATE operates on the table instead of individual rows. Therefore the command TRUNCATE TABLE removes all rows from a table without logging individual row deletions. It is more efficient than using DELETE without a WHERE clause.

The user must have the DELETE privilege on the table in order to invoke TRUNCATE on it. After execution of TRUNCATE TABLE, disk space is not reclaimed immediately. The NuoDB Check tool (see NuoDB Check) needs to run to reclaim this new unused disk space.

Note: Inside an explicit transaction, ROLLBACK has no effect when using TRUNCATE TABLE, unlike DELETE, which can be rolled back inside an explicit transaction.

Parameters

Example

CREATE TABLE tab_truncate (col1 STRING);
INSERT INTO tab_truncate VALUES ('row1'),('row2'),('row3');
SELECT * FROM tab_truncate;
 COL1  
 ----- 
 row1  
 row2  
 row3  

TRUNCATE TABLE tab_truncate; 
SELECT * FROM tab_truncate;

/* There are no records selected */