清空表

可以使用 TRUNCATE TABLE SQL 语句或 truncate() PHP 客户端函数来清空表。

以下是 SQL 语句的语法:

TRUNCATE TABLE table_name [WITH RECONFIGURE]

执行此语句时,会完全清空 RT 或分布式表。它会处理内存中的数据,取消所有表数据文件的链接,并释放相关的二进制日志。

对于清空分布式表,使用不带 with reconfigure 选项的语法。只需对分布式表执行标准的 TRUNCATE 语句。

TRUNCATE TABLE distributed_table

注意:清空分布式表需要 Manticore Buddy。如果不起作用,请确保 Buddy 已安装。

也可以使用 DELETE FROM index WHERE id>0 来清空表,但不推荐,因为它比 TRUNCATE 慢。

‹›
  • SQL
  • JSON
  • PHP
  • Python
  • Python-asyncio
  • javascript
  • Java
  • C#
  • Rust
📋
TRUNCATE TABLE products;
‹›
Response
Query OK, 0 rows affected (0.02 sec)

此命令的一个可能用途是在附加表之前。

当使用 RECONFIGURE 选项时,配置中指定的新分词、形态学和其他文本处理设置将在表被清空后生效。如果配置中的模式声明与表模式不同,则清空表后将应用配置中的新模式。

注意:RECONFIGURE 选项仅在Plain 模式下有意义,它应用配置文件中的设置。请注意,TRUNCATE 仅支持 RT 表,且 RECONFIGURE 选项只能在 Manticore 以 Plain 模式运行时与 RT 表一起使用。

使用此选项,清空和重新配置表成为一个原子操作。

‹›
  • SQL
  • HTTP
  • PHP
  • Python
  • Python-asyncio
  • javascript
  • Java
  • C#
  • Rust
📋
TRUNCATE TABLE products with reconfigure;
‹›
Response
Query OK, 0 rows affected (0.02 sec)
Last modified: August 28, 2025