格式
TRUNCATE [TABLE] tblname;
该语句用于完全清空指定表,但是保留表结构,包括表中定义的Partition信息。从逻辑上说,该语句与用于删除所有行的DELETE FROM语句相同。执行TRUNCATE语句,必须具有表的删除和创建权限。它属于DDL语句。
TRUNCATE TABLE语句与DELETE FROM语句有以下不同:
Oceanbase>create table tp(a int, b int) partition by hash(a) partitions 7;
Query OK, 0 rows affected (0.37 sec)
Oceanbase>show create table tp;
+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| tp | CREATE TABLE `tp` (
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL
) DEFAULT CHARSET = utf8mb4 REPLICA_NUM = 3 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE partition by hash(a) partitions 7 |
+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
Oceanbase>insert into tp values(1,2);
Query OK, 1 row affected (0.02 sec)
Oceanbase>insert into tp values(2,2);
Query OK, 1 row affected (0.04 sec)
Oceanbase>insert into tp values(3,2);
Query OK, 1 row affected (0.02 sec)
Oceanbase>insert into tp values(5,2);
Query OK, 1 row affected (0.01 sec)
Oceanbase>insert into tp values(6,2);
Query OK, 1 row affected (0.01 sec)
Oceanbase>select * from tp;
+------+------+
| a | b |
+------+------+
| 1 | 2 |
| 2 | 2 |
| 3 | 2 |
| 5 | 2 |
| 6 | 2 |
+------+------+
5 rows in set (0.02 sec)
Oceanbase>truncate tp;
Query OK, 0 rows affected (0.46 sec)
Oceanbase>select * from tp;
Empty set (0.04 sec)
Oceanbase>show create table tp;
+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| tp | CREATE TABLE `tp` (
`a` int(11) DEFAULT NULL,
`b` int(11) DEFAULT NULL
) DEFAULT CHARSET = utf8mb4 REPLICA_NUM = 3 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE partition by hash(a) partitions 7 |
+-------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.01 sec)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。