DROP TABLE

DROP TABLE — remove uma tabela

Sinopse

DROP TABLE [ IF EXISTS ] nome_da_tabela [, ...]
           [ CASCADE | RESTRICT ]

Descrição

O comando DROP TABLE remove tabelas do banco de dados. Somente o dono da tabela, o dono do esquema, e os superusuários podem remover uma tabela. Para esvaziar uma tabela sem destruí-la, deve ser usado DELETE ou TRUNCATE.

O comando DROP TABLE sempre remove quaisquer índices, regras, gatilhos e restrições existentes para a tabela de destino. Entretanto, para remover uma tabela referenciada por uma visão ou restrição de chave estrangeira de outra tabela, deve ser especificado CASCADE. (CASCADE removerá totalmente uma visão dependente, mas no caso da chave estrangeira removerá apenas a restrição da chave estrangeira, e não a outra tabela inteiramente.)

Parâmetros

IF EXISTS

Não será relatado nenhum erro se a tabela não existir. É emitido um aviso neste caso.

nome_da_tabela

O nome (opcionalmente qualificado pelo esquema) da tabela a ser removida.

CASCADE

Remove automaticamente os objetos que dependem da tabela (como visões) e, por sua vez, todos os objetos que dependem desses objetos (veja Acompanhamento de dependência).

RESTRICT

Recusa remover a tabela se algum objeto depender dela. Este é o comportamento padrão.

Exemplos

Para remover as tabelas films e distributors:

DROP TABLE films, distributors;

Conformidade

Este comando está em conformidade com o padrão SQL, exceto pelo padrão permitir ser removida apenas uma tabela por comando, e também pela opção IF EXISTS, que é uma extensão do PostgreSQL ao padrão.

Veja também

ALTER TABLE, CREATE TABLE