Remove permanentemente uma tabela e todos os seus dados do banco de dados.
Sintaxe
DROP TABLE name [CASCADE | RESTRICT | CASCADE CONSTRAINTS]
Descrição
O comando DROP TABLE remove permanentemente uma tabela do banco de dados. Ao excluir uma tabela, o sistema também remove todas as partições e subpartições correspondentes. A instrução sempre elimina todos os índices, regras, gatilhos e restrições associados à tabela.
Essa operação é irreversível. Para remover apenas as linhas e manter a estrutura da tabela, use DELETE.
Comportamento com objetos dependentes:
RESTRICT(padrão): retorna um erro se outro objeto depender da tabela.CASCADEouCASCADE CONSTRAINTS: exclua todas as restrições dependentes, mas preserva outros tipos de objetos que dependem da tabela.
Parâmetros
|
Parâmetro |
Descrição |
|
|
Nome da tabela a ser excluída. Pode ser uma tabela particionada e aceita qualificação por schema. |
|
|
Exclua todas as restrições dependentes, sem afetar outros tipos de objetos dependentes. |
|
|
Retorna um erro caso existam objetos dependentes da tabela. Este é o comportamento padrão. |
|
|
Exclua todas as restrições dependentes, mantendo intactos os demais objetos dependentes. |
Permissões necessárias
Para execute DROP TABLE, você deve atender a um dos seguintes critérios:
Ser proprietário da raiz de particionamento
Integrar um grupo que possua a tabela
Ser proprietário do schema
Ser superusuário do banco de dados
Exemplos
Excluir uma tabela sem objetos dependentes
DROP TABLE emp;
Excluir uma tabela com objetos dependentes
Considere a seguinte configuração de tabelas, em que items possui uma chave estrangeira referenciando orders:
CREATE TABLE orders
(order_id int PRIMARY KEY, order_date date, …)
CREATE TABLE items
(order_id int REFERENCES orders, quantity int, …);
O resultado da exclusão de orders varia conforme a cláusula utilizada:
DROP TABLE orders RESTRICT: falha com erro porqueitemsdepende deorders.DROP TABLE orders CASCADE CONSTRAINTS: excluaorderse remove a restrição de chave estrangeira deitems, preservando a tabelaitems.