Sdílet prostřednictvím


DROP TABLE

Platí pro:zatrženo ano Databricks SQL zatrženo ano Databricks Runtime

Odstraní tabulku a odebere adresář přidružený k tabulce ze systému souborů, pokud tabulka není EXTERNAL tabulka. Pokud tabulka neexistuje, vyvolá se výjimka. Pokud chcete odstranit tabulku, musíte mít oprávnění k MANAGE tabulky, být jeho vlastníkem nebo vlastníkem schématu, katalogu nebo metastoru, ve kterém se tabulka nachází.

V případě externí tabulky se ze schématu metastoru odeberou pouze přidružené informace o metadatech.

Všechna omezení cizího klíče odkazující na tabulku se také zahodí.

Pokud je tabulka uložena do mezipaměti, příkaz zruší mezipaměť tabulky a všechny její závislé položky.

Poznámka:

Tabulky se odstraní do 7 až 30 dnů. Katalog Unity podporuje příkaz UNDROP TABLE k obnovení vyřazených spravovaných tabulek po dobu 7 dnů. Po 7 dnech se podkladová data označí k odstranění z cloudového tenanta během běžných operací údržby tabulek.

Syntaxe

DROP TABLE [ IF EXISTS ] table_name [ FORCE ]

Parametr

Příklady

-- Assumes a table named `employeetable` exists.
> DROP TABLE employeetable;

-- Assumes a table named `employeetable` exists in the `userdb` schema
> DROP TABLE userdb.employeetable;

-- Assumes a table named `employeetable` does not exist.
-- Throws TABLE_OR_VIEW_NOT_FOUND
> DROP TABLE employeetable;
  Error: TABLE_OR_VIEW_NOT_FOUND

-- Assumes a table named `employeetable` does not exist,Try with IF EXISTS
-- this time it will not throw exception
> DROP TABLE IF EXISTS employeetable;

-- Assumes a table named `employeetable` exists and has a shallow clone.
-- Throws CANNOT_DROP_BASE_TABLE_REFERENCED_BY_SHALLOW_CLONE
> DROP TABLE employeetable;
  Error: CANNOT_DROP_BASE_TABLE_REFERENCED_BY_SHALLOW_CLONE

-- Assumes a table named `employeetable` exists and has a shallow clone.
-- Drops base table, but shallow clones referencing this base table will no longer work
> DROP TABLE employeetable FORCE;