Skip to main content
Permanently removes a table definition and all data stored in the table.

Syntax

DROP TABLE [IF EXISTS] [schema_name.]table_name;

Parameters

ParameterDescription
IF EXISTSPrevents an error if the table does not exist. The statement is a no-op when the table is absent.
schema_nameThe name of the attached database containing the table. Defaults to the main database if omitted.
table_nameThe name of the table to drop.

Description

DROP TABLE permanently removes a table definition along with all data stored in the table. All indexes, triggers, and constraints associated with the table are also removed.

Behavior

  • All rows in the table are deleted.
  • All indexes built on the table are removed.
  • All triggers associated with the table are removed.
  • The table entry is removed from the sqlite_schema system table.
  • If foreign key constraints in other tables reference the dropped table, those references become invalid. Turso does not prevent dropping a table that is referenced by foreign keys elsewhere.
  • DROP TABLE is not allowed while the table is being read or written by another statement in the same connection.
DROP TABLE is irreversible. All data in the table is permanently lost. If you only want to remove rows while keeping the table structure, use DELETE instead.

Examples

Drop a table

DROP TABLE users;

Drop a table only if it exists

DROP TABLE IF EXISTS temporary_results;

Drop a table in an attached database

DROP TABLE aux.sessions;

See also

Build docs developers (and LLMs) love