• TRUNCATE
    • 语法图
    • 示例
    • MySQL 兼容性
    • 另请参阅

    TRUNCATE

    TRUNCATE 语句以非事务方式从表中删除所有数据。可认为 TRUNCATE 语句同 DROP TABLE + CREATE TABLE 组合在语义上相同,定义与 DROP TABLE 语句相同。

    TRUNCATE TABLE tableNameTRUNCATE tableName 均为有效语法。

    语法图

    TruncateTableStmt:

    TruncateTableStmt

    OptTable:

    OptTable

    TableName:

    TableName

    示例

    1. mysql> CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY);
    2. Query OK, 0 rows affected (0.11 sec)
    3. mysql> INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
    4. Query OK, 5 rows affected (0.01 sec)
    5. Records: 5 Duplicates: 0 Warnings: 0
    6. mysql> SELECT * FROM t1;
    7. +---+
    8. | a |
    9. +---+
    10. | 1 |
    11. | 2 |
    12. | 3 |
    13. | 4 |
    14. | 5 |
    15. +---+
    16. 5 rows in set (0.00 sec)
    17. mysql> TRUNCATE t1;
    18. Query OK, 0 rows affected (0.11 sec)
    19. mysql> SELECT * FROM t1;
    20. Empty set (0.00 sec)
    21. mysql> INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
    22. Query OK, 5 rows affected (0.01 sec)
    23. Records: 5 Duplicates: 0 Warnings: 0
    24. mysql> TRUNCATE TABLE t1;
    25. Query OK, 0 rows affected (0.11 sec)

    MySQL 兼容性

    TRUNCATE 语句与 MySQL 完全兼容。如有任何兼容性差异,请在 GitHub 上提交 issue。

    另请参阅

    • DROP TABLE
    • DELETE
    • CREATE TABLE
    • SHOW CREATE TABLE