DELETE

Nome

DELETE -- exclui linhas de uma tabela

Sinopse

DELETE FROM [ ONLY ] tabela [ WHERE condição ]

Descrição

O comando DELETE exclui da tabela especificada as linhas que satisfazem a cláusula WHERE. Se a cláusula WHERE estiver ausente, o efeito produzido é a exclusão de todas as linhas da tabela. O resultado é uma tabela válida, porém vazia.

Dica: O comando TRUNCATE é uma extensão do PostgreSQL que fornece um mecanismo mais rápido para excluir todas as linha da tabela.

Por padrão, o comando DELETE exclui linhas da tabela especificada e de todas as suas descendentes. Se for desejado excluir linhas apenas da tabela especificada, deve ser utilizada a cláusula ONLY.

É necessário possuir o privilégio DELETE na tabela para excluir linhas da mesma, assim como o privilégio SELECT para todas as tabelas cujos valores são lidos pela condição.

Parâmetros

tabela
O nome (opcionalmente qualificado pelo esquema) de uma tabela existente.
condição
Uma expressão de valor, que retorna um valor do tipo boolean, que determina as linhas a serem excluídas.

Saídas

Ao terminar bem-sucedido, o comando DELETE retorna uma linha de fim de comando na forma

DELETE contador

O contador é o número de linhas excluídas. Se contador for igual a 0, então não há linhas correspondendo à condição (isto não é considerado um erro).

Exemplos

Excluir todos os filmes, exceto os musicais:

DELETE FROM filmes WHERE tipo <> 'Musical';

Esvaziar a tabela filmes:

DELETE FROM filmes;

Compatibilidade

Este comando está em conformidade com o padrão SQL.

SourceForge.net Logo