O comando DROP TYPE remove um tipo do usuário dos catálogos do sistema.
Somente o dono do tipo pode removê-lo.
É responsabilidade do usuário remover os operadores, funções, agregações, métodos de acesso, subtipos e tabelas que usam o tipo removido. Entretanto, o tipo de dado array associado (que é automaticamente criado pelo comando CREATE TYPE) é removido automaticamente.
Se um tipo nativo do PostgreSQL for removido, o comportamento do servidor torna-se imprevisível.
O comando DROP TYPE existe no SQL99. Assim como a maioria dos outros comandos "drop", o DROP TYPE do SQL99 requer uma cláusula de "comportamento da remoção", para selecionar entre remover todos os objetos dependentes ou não remover se existir algum objeto dependente:
DROP TYPE nome { CASCADE | RESTRICT }
O PostgreSQL atualmente ignora inteiramente as dependências.
Observe que o comando CREATE TYPE e os mecanismos de extensão de tipo do PostgreSQL são diferentes do SQL99.