DROP TABLE
DROP TABLE
removes a table from Materialize.
Conceptual framework
Tables store non-streaming data that is inserted via INSERT
statements. DROP TABLE
removes a table from Materialize.
Syntax
Field | Use |
---|---|
IF EXISTS | Do not return an error if the named table doesn’t exist. |
table_name | The name of the table to remove. |
CASCADE | Remove the table and its dependent objects. |
RESTRICT | Don’t remove the table if any non-index objects depend on it. (Default.) |
Examples
Remove a table with no dependent objects
Create a table t and verify that it was created:
CREATE TABLE t (a int, b text NOT NULL);
SHOW TABLES;
TABLES
------
t
Remove the table:
DROP TABLE t;
Remove a table with dependent objects
Create a table t:
CREATE TABLE t (a int, b text NOT NULL);
INSERT INTO t VALUES (1, 'yes'), (2, 'no'), (3, 'maybe');
SELECT * FROM t;
a | b
---+-------
2 | no
1 | yes
3 | maybe
(3 rows)
Create a materialized view from t:
CREATE MATERIALIZED VIEW t_view AS SELECT sum(a) AS sum FROM t;
SHOW MATERIALIZED VIEWS;
name | cluster
--------+---------
t_view | default
(1 row)
Remove table t:
DROP TABLE t CASCADE;
Remove a table only if it has no dependent objects
You can use either of the following commands:
-
DROP TABLE t;
-
DROP TABLE t RESTRICT;
Do not issue an error if attempting to remove a nonexistent table
DROP TABLE IF EXISTS t;
Privileges
The privileges required to execute this statement are:
- Ownership of the dropped table.
USAGE
privileges on the containing schema.