manipulação de dados com sql - facom | faculdade de ... · manipulação de dados com sql 40...
TRANSCRIPT
![Page 1: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/1.jpg)
Manipulação de Dados com SQL
Manipulação de Dados com SQL
Wendel Melo
Faculdade de Computação
Universidade Federal de Uberlândia
www.facom.ufu.br/~wendelmelo
Banco de Dados I
![Page 2: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/2.jpg)
2Manipulação de Dados com SQL
Structured Query Language (SQL)
• “Linguagem de consulta estruturada”;
• Padrão em SGBD’s relacionais, o que favorece a portabili-dade entre diferentes SGBD’s;
• Possui um conjunto de instruções normatizado (ANSI 1986, ISO 1987, 1992, 1999, 2003, 2006, 2008, 2011, 2016, …);
• Adicionalmente, SGBD’s incorporam recursos adicionais para facilitar o uso;
![Page 3: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/3.jpg)
3Manipulação de Dados com SQL
Structured Query Language (SQL)
• Linguagem declarativa: usuários se preocupam em dizer o que deve ser feito, e não como deve ser feito, simplifi-cando assim seu uso;
• Insensível a caixa: comandos podem estar em maiúsculo ou minúsculo;
• Comandos SQL terminam com o caracter ‘;’ (ponto e vír-gula).
• Atributos deixados em branco são marcados com o valor NULL;
![Page 4: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/4.jpg)
4Manipulação de Dados com SQL
Structured Query Language (SQL)
• SQL possui cláusulas para atuar como:
– Linguagem de Definição de Dados (DDL);
– Linguagem de Manipulação de Dados (DML);
– Linguagem de Consulta de Dados (DQL);
– Linguagem de Transação de Dados (DTL);
– Linguagem de Controle de Dados (DCL).
![Page 5: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/5.jpg)
5Manipulação de Dados com SQL
Structured Query Language (SQL)
• SQL possui cláusulas para atuar como:
– Linguagem de Definição de Dados (DDL);
– Linguagem de Manipulação de Dados (DML);
– Linguagem de Consulta de Dados (DQL);
– Linguagem de Transação de Dados (DTL);
– Linguagem de Controle de Dados (DCL).
![Page 6: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/6.jpg)
6Manipulação de Dados com SQL
Linguagem de Manipulação de Dados (DML)
• Através de uma DML, é possível inserir, alterar e remover in-formações em um banco de dados.
• As principais cláusulas DML na SQL são:
– INSERT: insere linhas em uma tabela;
– DELETE: remove linhas de uma tabela;
– UPDATE: atualiza (altera) linhas em uma tabela;
![Page 7: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/7.jpg)
7Manipulação de Dados com SQL
Inserindo linhas em uma Tabela
A cláusula INSERT permite inserir linhas (tuplas) em uma tabela:
INSERT INTO <tabela> VALUES ( <atributos da linha> );
![Page 8: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/8.jpg)
8Manipulação de Dados com SQL
Inserindo linhas em uma Tabela
CREATE TABLE Pessoa (
id INT,
nome CHAR(200) NOT NULL,
dt_nasc DATE,
sexo CHAR(1) DEFAULT ‘I’,
PRIMARY KEY(id) );
INSERT INTO Pessoa VALUES
(1, 'Jessica G', '19-03-1991', 'F'),
(2, 'Leidiana I', '28-03-1993', 'F'),
(3, 'Lucas S', NULL, 'M' );
![Page 9: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/9.jpg)
9Manipulação de Dados com SQL
Inserindo linhas em uma Tabela
Também é possível inserir linhas especificando os atributos a serem preenchidos:
INSERT INTO <tabela>( <atributos> ) VALUES
( <atributos da linha> );
![Page 10: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/10.jpg)
10Manipulação de Dados com SQL
Inserindo linhas em uma Tabela
CREATE TABLE Pessoa (
id INT,
nome CHAR(200) NOT NULL,
dt_nasc DATE,
sexo CHAR(1) DEFAULT ‘I’,
PRIMARY KEY(id) );
INSERT INTO Pessoa (nome, id) VALUES
('Rachel M', 7),
('Rodrigo S', 5);
![Page 11: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/11.jpg)
11Manipulação de Dados com SQL
Inserindo linhas em uma Tabela
Também é possível inserir linhas especificando os atributos a serem preenchidos:
INSERT INTO <tabela>( <atributos> ) VALUES
( <atributos da linha> );
Essa forma de inserção é a mais recomendada devido ao fato de que a estrutura de uma tabela pode vir a mudar.
Ao especificar exatamente quais os atributos estão sendo preenchidos e sua respectiva ordem, evita-se potenciais pro-blemas futuros com alterações na estrutura da tabela.
![Page 12: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/12.jpg)
12Manipulação de Dados com SQL
Removendo linhas de uma Tabela
• A cláusula DELETE permite a remoção de linhas (tuplas) de uma tabela.
• Pode ser usada em conjunto com uma cláusula WHERE para especificar uma condição a serem satisfeitas pelas linhas sendo removidas:
DELETE FROM <tabela> [WHERE <condição de seleção>];
![Page 13: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/13.jpg)
13Manipulação de Dados com SQL
Removendo linhas de uma Tabela
• A cláusula DELETE permite a remoção de linhas (tuplas) de uma tabela.
• Pode ser usada em conjunto com uma cláusula WHERE para especificar uma condição a serem satisfeitas pelas linhas sendo removidas:
DELETE FROM <tabela> [WHERE <condição de seleção>];
Opcional: apenas as linhas cuja condição de seleção resultar em TRUE serão apagadas.
![Page 14: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/14.jpg)
14Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE id = 7;
Pessoa
![Page 15: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/15.jpg)
15Manipulação de Dados com SQL
Pessoa
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE id = 7;
Remove da tabela Pessoa as li-nhas cujo campo id tem o valor 7.
Como id é a chave primária, sa-bemos de antemão que, no máxi-mo, uma linha será apagada.
![Page 16: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/16.jpg)
16Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE id = 9;
Pessoa
![Page 17: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/17.jpg)
17Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE id = 9;
Como não há linha na tabela que atenda a condição especificada, nenhuma linha será removida.
Pessoa
![Page 18: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/18.jpg)
18Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE sexo = ‘F’;
Pessoa
![Page 19: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/19.jpg)
19Manipulação de Dados com SQL
Pessoa
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE sexo = ‘F’;
Remove da tabela Pessoa as li-nhas cujo campo sexo esteja com o valor ‘F’.
![Page 20: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/20.jpg)
20Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE '1990-01-01' <= dt_nasc AND dt_nasc <= '1991-12-31';
Pessoa
![Page 21: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/21.jpg)
21Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE '1990-01-01' <= dt_nasc AND dt_nasc <= '1991-12-31';
Remove da tabela Pessoa as li-nhas cujo campo dt_nasc esteja com o valor no intervalo entre 01/01/1990 e 31/12/1991.
Pessoa
![Page 22: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/22.jpg)
22Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE '1990-01-01' <= dt_nasc AND dt_nasc <= '1991-12-31';
Note que é possível utilizar opera-dores lógicos na condição de se-leção.
Pessoa
![Page 23: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/23.jpg)
23Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE NOT( dt_nasc <= '1992-01-01' );
Pessoa
![Page 24: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/24.jpg)
24Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE NOT( dt_nasc <= '01-01-1992' );
Remove da tabela Pessoa as li-nhas cujo campo dt_nasc tenha um valor que não seja menor ou igual que 01/01/1992.
Pessoa
![Page 25: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/25.jpg)
25Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE NOT( dt_nasc <= '01-01-1992' );
A comparação NOT( dt_nasc <= '01-01-1992' ) resultará em UNKNOWN (desconhecido) para as linhas onde dt_nasc está vazio. Por essa razão, essas linhas não são removidas.
Pessoa
![Page 26: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/26.jpg)
26Manipulação de Dados com SQL
Removendo linhas de uma Tabela
• Como remover as linhas cujo o campo dt_nasc esteja vazio?
Pessoa
![Page 27: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/27.jpg)
27Manipulação de Dados com SQL
Removendo linhas de uma Tabela
• Como remover as linhas cujo o campo dt_nasc esteja vazio?
• Devemos recordar que quando o campo está vazio, ele é marcado com o valor NULL;
• Todavia, o valor NULL é tratado de modo diferente dos de-mais, pois representa um valor que não se conhece ou não se aplica para a tupla em questão.
Pessoa
![Page 28: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/28.jpg)
28Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE dt_nasc = NULL;
Pessoa
![Page 29: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/29.jpg)
29Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE dt_nasc = NULL;
Uma comparação de igualdade ou desigualdade envolvendo o valor NULL sempre resulta em UNK-NOWN (desconhecido).
Pessoa
![Page 30: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/30.jpg)
30Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE dt_nasc = NULL;
Em SQL um valor NULL nunca é considerado igual a outro NULL, pois ambos representam algum valor que não se conhece ou não se aplica.
Pessoa
![Page 31: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/31.jpg)
31Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE dt_nasc = NULL;
Por essa razão, a linha acima não surte qualquer efeito na tabela, pois a condição de seleção sem-pre resultará em UNKNOWN (des-conhecido).
Pessoa
![Page 32: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/32.jpg)
32Manipulação de Dados com SQL
Removendo linhas de uma Tabela
• Como remover as linhas cujo o campo dt_nasc esteja vazio?
• Através do operador IS NULL;
Pessoa
![Page 33: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/33.jpg)
33Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE dt_nasc IS NULL;
Pessoa
![Page 34: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/34.jpg)
34Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE dt_nasc IS NULL;
A comparação resultará em TRUE para todas as linhas onde dt_nasc estiver com com o valor NULL (vazio).
Pessoa
![Page 35: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/35.jpg)
35Manipulação de Dados com SQL
Removendo linhas de uma Tabela
• Para selecionar valores não nulos, podemos usar o operador IS NOT NULL.
Pessoa
![Page 36: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/36.jpg)
36Manipulação de Dados com SQL
Removendo linhas de uma Tabela
DELETE FROM Pessoa WHERE dt_nasc IS NOT NULL;
Pessoa
![Page 37: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/37.jpg)
37Manipulação de Dados com SQL
Removendo linhas de uma Tabela
• O que ocorre se o DELETE for utilizado sem WHERE?
Pessoa
DELETE FROM Pessoa;
![Page 38: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/38.jpg)
38Manipulação de Dados com SQL
Removendo linhas de uma Tabela
• O que ocorre se o DELETE for utilizado sem WHERE?
Pessoa
DELETE FROM Pessoa;
• Todas as linhas da tabela serão apagadas!
![Page 39: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/39.jpg)
39Manipulação de Dados com SQL
Alterando linhas de uma Tabela
• A cláusula UPDATE permite a atualização (alteração) de li-nhas (tuplas) de uma tabela.
• Assim como DELETE, também pode ser usada em conjun-to com uma cláusula WHERE para especificar uma condi-ção a serem satisfeitas pelas linhas sendo removidas:
UPDATE <tabela> SET {<coluna> = <expressão>}*
[WHERE <condição de seleção>];
![Page 40: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/40.jpg)
40Manipulação de Dados com SQL
Alterando linhas de uma Tabela
• A cláusula UPDATE permite a atualização (alteração) de li-nhas (tuplas) de uma tabela.
• Assim como DELETE, também pode ser usada em conjun-to com uma cláusula WHERE para especificar uma condi-ção a serem satisfeitas pelas linhas sendo removidas:
Opcional: apenas as linhas cuja condição de seleção resultar em TRUE serão apagadas.
UPDATE <tabela> SET {<coluna> = <expressão>}*
[WHERE <condição de seleção>];
![Page 41: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/41.jpg)
41Manipulação de Dados com SQL
Alterando linhas de uma Tabela
UPDATE Pessoa SET nome = 'Jeh Melo' WHERE id = 1;
Pessoa
![Page 42: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/42.jpg)
42Manipulação de Dados com SQL
Alterando linhas de uma Tabela
UPDATE Pessoa SET nome = 'Jeh Melo' WHERE id = 1;
Atualiza o campo nome para ‘Jeh Melo’ nas linhas cujo campo id tenha o valor 1 .
Pessoa
![Page 43: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/43.jpg)
43Manipulação de Dados com SQL
Alterando linhas de uma Tabela
UPDATE Pessoa SET sexo = 'F', nome = 'Luna Souza' WHERE id = 3;
Pessoa
![Page 44: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/44.jpg)
44Manipulação de Dados com SQL
Alterando linhas de uma Tabela
UPDATE Pessoa SET sexo = 'F', nome = 'Luna Souza' WHERE id = 3;
Atualiza os campos sexo e nome nas linhas cujo campo id está com valor 3.
Pessoa
![Page 45: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/45.jpg)
45Manipulação de Dados com SQL
Alterando linhas de uma Tabela
UPDATE Pessoa SET sexo = NULL WHERE sexo = 'I';
Pessoa
![Page 46: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/46.jpg)
46Manipulação de Dados com SQL
Alterando linhas de uma Tabela
UPDATE Pessoa SET sexo = NULL WHERE sexo = 'I';
Atualiza o campo sexo para o va-lor NULL (vazio) nas linhas cujo o campo sexo está com o valor ‘I’.
Pessoa
![Page 47: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/47.jpg)
47Manipulação de Dados com SQL
Alterando linhas de uma Tabela
UPDATE Pessoa SET id = 10*id;
Pessoa
![Page 48: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/48.jpg)
48Manipulação de Dados com SQL
Alterando linhas de uma Tabela
UPDATE Pessoa SET id = 10*id;
Atualiza o campo id multiplican-do o próprio valor do id por 10.
Note que a ausência de WHERE faz com que a operação seja aplicada a todas as linhas.
Pessoa
![Page 49: Manipulação de Dados com SQL - FACOM | Faculdade de ... · Manipulação de Dados com SQL 40 Alterando linhas de uma Tabela • A cláusula UPDATE permite a atualização (alteração)](https://reader033.vdocuments.pub/reader033/viewer/2022050107/5f4588740348f05edc2e74e2/html5/thumbnails/49.jpg)
49Manipulação de Dados com SQL
A Cláusula WHERE
• É recomendável sempre testar a condição de seleção espe-cificada por meio da cláusula WHERE antes de realizar ope-rações de atualização e remoção.
• Do contrário, pode-se remover ou alterar dados indevidamen-te;
• O teste pode ser feito através da cláusula SELECT (discutida adiante).