2.16. Atualizando Dados
O comando SQL UPDATE
permite atualizar linhas de uma tabela. A sintaxe básica desse comando é a seguinte:
UPDATE nome-tabela SET coluna-1 = novo-valor [, coluna-2 = novo-valor] [ WHERE <expressão> ];
Dica
A sintaxe completa do comando de atualização de linhas pode ser vista no manual do PostgreSQL: UPDATE.
2.16.1. Exemplos
1. Alterando o número de créditos de todas as disciplinas para 04:
UPDATE disciplina SET creditos = 4;
Nota
Este comando é executado pelo PostgreSQL em uma única transação. Isso garante que somente após todas as linhas serem alteradas sem a ocorrência de erros, o resultado seja refletido de fato no banco de dados. Se durante a execução desse comando ocorrer um erro, por exemplo, como queda de energia, o servidor ao voltar a funcionar, irá preservar os valores antes desse comando.
2. Alterando o nome da disciplina Matemática
para Matemática Avançada
:
UPDATE disciplina
SET titulo = 'Matemática Avançada'
WHERE codigo = 1;
Nota
Neste exemplo, apenas a linha de código 1 na tabela disciplina
é alterada.
3. Alterando a linha da disciplina Quimica
:
Podemos usar uma notação onde especificamos a lista de colunas a serem alteradas e os novos valores:
UPDATE disciplina
SET (titulo, creditos, professor_codigo) = ('Quimica Organiza', 3, 6)
WHERE codigo = 4;
ou, utilizar pares coluna = valor
:
UPDATE disciplina
SET titulo = 'Quimica Organiza', creditos = 3, professor_codigo = 6
WHERE codigo = 4;