Skip to main content

UNDROP TABLE

Restores the recent version of a dropped table. This leverages the Databend Time Travel feature; a dropped object can be restored only within a retention period (defaults to 24 hours).

See also:

Syntax

UNDROP TABLE [ <database_name>. ]<table_name>
  • If a table with the same name already exists, an error is returned.

    Examples:
    root@localhost:8000/default> CREATE TABLE t(id INT);
    processed in (0.036 sec)

    root@localhost:8000/default> DROP TABLE t;
    processed in (0.033 sec)

    root@localhost:8000/default> CREATE TABLE t(id INT, name STRING);
    processed in (0.030 sec)

    root@localhost:8000/default> UNDROP TABLE t;
    error: APIError: QueryFailed: [2308]Undrop Table 't' already exists
  • Undropping a table does not automatically restore ownership to the original role. After undropping, ownership must be manually granted to the previous role or another role. Until then, the table will be accessible only to the account-admin role.

    Examples:
    GRNAT OWNERSHIP on doc.t to ROLE writer;

Examples

CREATE TABLE test(a INT, b VARCHAR);

-- drop table
DROP TABLE test;

-- show dropped tables from current database
SHOW TABLES HISTORY;

┌────────────────────────────────────────────────────┐
│ Tables_in_orders_2024 │ drop_time │
├───────────────────────┼────────────────────────────┤
│ test │ 2024-01-23 04:56:34.766820
└────────────────────────────────────────────────────┘

-- restore table
UNDROP TABLE test;
Explore Databend Cloud for FREE
Low-cost
Fast Analytics
Easy Data Ingestion
Elastic Scaling
Try it today

Copyright © 2025 The Databend Community. Apache, Apache OpenDAL and OpenDAL are either registered trademarks or trademarks of the Apache Software Foundation.

We use cookies on our site to provide you with better user experience. You can view our Cookies Policy in Privacy Policy .