Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 17 » SQL Anywhere Server - SQL Reference » SQL statements » Alphabetical list of SQL statements


Deletes the data in a MANUAL or an AUTO REFRESH text index.

TRUNCATE TEXT INDEX text-index-name 
ON [ owner.]table-name
  • ON clause

    The name of the table on which the text index is built.


Use the TRUNCATE TEXT INDEX statement when you want to delete data from a manual text index without dropping the text index definition. For example, to alter the text configuration object for the text index to change the stoplist, truncate the text index, change the text configuration object it refers to, and then refresh the text index to populate it with new data.

You cannot perform a TRUNCATE TEXT INDEX statement on a text index defined as IMMEDIATE REFRESH (the default). For IMMEDIATE REFRESH text indexes, you must drop the index instead.

The TRUNCATE TEXT INDEX requires exclusive access to the table. Any open cursors that reference the table being truncated must be closed, and a COMMIT or ROLLBACK statement must be executed to release the reference to the table.


You must be the owner of the table, or have one of the following privileges:

  • ALTER privilege on the table
  • ALTER ANY INDEX system privilege
  • ALTER ANY TABLE system privilege
Side effects

Automatic commit

  • ANSI/ISO SQL Standard

    Not in the standard.


The first statement creates the txt_index_manual text index. The second statement populates the text index with data. The third statement truncates the text index data.

CREATE TEXT INDEX txt_index_manual ON GROUPO.MarketingInformation ( Description )
REFRESH TEXT INDEX txt_index_manual ON GROUPO.MarketingInformation;
TRUNCATE TEXT INDEX txt_index_manual ON GROUPO.MarketingInformation;

The truncated text index is repopulated with data the next time it is refreshed.