Minicursos - MySQL

Update e Delete


Até aqui vimos como inserir dados em tabelas, que é o ponto de partida para criamos nosso bando de dados, mas podemos precisar atualizar os dados já existentes, ou até mesmo apaga-los. É para isso que servem os comandos UPDATE e DELETE, respectivamente. Suas sintaxes são semelhantes às do comando INSERT.

Vamos dar um SELECT, exibindo alguns dados na nossa tabela cliente.

SELECT nome AS Nome, idade AS Idade, email AS Email FROM cliente;

Comandos Update e Delete

Vamos imaginar que precisamos alterar a idade da Lisa de 20 para 19 anos. Nosso comando ficará da seguinte forma:

UPDATE cliente SET idade = 19 WHERE nome like 'Lisa';

Vamos executa-lo:

Comandos Update e Delete

Recebemos a mensagem de Query OK e a indicação de uma linha alterada.

Vamos repetir o SELECT na tabela e ver se a nova idade, de 19 anos para a cliente Lisa, está inserida.

Comandos Update e Delete

Aí está a nova idade da cliente Lisa!

Então lembre-se de que a sintaxe do comando UPDATE é sempre:

UPDATE nome_da_tabela SET nome_da_coluna = novo_valor WHERE condição_que_identificará_a_linha_a_ser_alterada.

Muito Importante!
Você SEMPRE DEVE especificar a linha que desejar alterar (no nosso caso o cliente que deve ter os dados alterados) com o parâmetro WHERE, pois se não o fizer o SGBD atualizará TODOS os dados dos clientes. Vou demonstrar com o seguinte comando:

UPDATE cliente SET idade = 19;

Comandos Update e Delete

Vejam que eu não especifiquei nenhuma linha para ser alterada, então já recebemos a mensagem de que 6 linhas foram alteradas. Isso NÃO é um bom sinal. Vamos dar um SELECT na tabela cliente novamente:

Comandos Update e Delete

Vejam que todos os nossos clientes receberam a idade de 19 anos! Ou seja, tomem MUITO cuidado com o comando UPDATE e NUNCA esqueçam de definir, através do WHERE, exatamente em qual tupla o dado deve ser atualizado!

Comando DELETE

Esse comando permite a exclusão de uma ou mais tuplas da nossa tabela.

Aproveitando o SELECT acima, vamos apagar o cliente "Marcos" da nossa tabela. Para isso o comando a ser executado é:

DELETE FROM cliente WHERE nome like 'Marcos';

Comandos Update e Delete

Recebemos a mensagem de que uma linha sofreu alteração. Agora damos outro SELECT na tabela:

Comandos Update e Delete

O cliente Marcos já não faz parte da nossa tabela.

Aqui vale a mesma observação feita no UPDATE. Se você NÃO especificar, através do parâmetro WHERE, qual a tupla que deve ser removida, o SGBD apagará TODAS ELAS! Muito cuidado!

Prestem atenção a esse comando DELETE, que não possui especificação de tupla a ser removida:

DELETE FROM filme;

Comandos Update e Delete

E agora um SELECT na tabela:

Comandos Update e Delete

A instrução Empty set indica que a tabela está vazia. Portanto, lembre-se SEMPRE de utilizar o parâmetro WHERE junto dos comandos UPDATE e DELETE! Sempre!




Algumas notícias

O que acontece com o cérebro no exato momento em que morremos

O que passa em nossa cabeça no momento da morte? Não se sabe exatamente e, embora os cientistas tenham alguma resposta, a resposta continua sendo um grande mistério. Além de difícil solução, tentar respondê-la pode criar implicações éticas. No entanto, uma equipe de cientistas da Universidade...

Ler Notícia Completa

Operada e devolvida ao útero, menina que nasceu duas vezes hoje 'acorda sorrindo toda manhã'

Um bebê pode nascer duas vezes? Não é o caso da absoluta maioria das crianças, mas foi assim para a pequena Lynlee Boemer. Em outubro de 2015, sua mãe, Margaret Boemer, descobriu que estava grávida de gêmeos. Ela sofreu um aborto espontâneo, mas um dos bebês sobreviveu. Com dez semanas de ges...

Ler Notícia Completa

Médicos dizem estar perto de chegar a exame de sangue para todos os tipos de câncer

Cientistas dizem que estão mais perto de criar um exame de sangue universal, capaz de identificar todos os tipos de câncer. Estudo conduzido com 1.005 pacientes por uma equipe da Universidade Johns Hopkins, dos Estados Unidos, testou um método que detecta oito tipos de proteínas e 16 mutações ge...

Ler Notícia Completa

Formato JPEG está com os dias contados

Há quantos anos você ouve falar em arquivos JPG? O formato já era utilizado nos primórdios da web comercial nos anos 1990, vivendo há mais de 20 anos como o principal método de compressão de imagens do público. No que depender de Google, Mozilla e outras empresas, isso pode mudar dentro de algum...

Ler Notícia Completa

EUA aprovam 'droga viva', 1ª terapia contra câncer que reestrutura sistema imunológico do paciente

Os Estados Unidos aprovaram o primeiro tratamento que reestrutura o sistema imunológico do paciente para atacar o câncer. A agência reguladora de medicamentos do país - a FDA - diz que a decisão foi um momento "histórico" e que a medicina agora "entra em uma nova fronteira". A companhia Novar...

Ler Notícia Completa

Cientistas norte-americanos criaram anticorpo capaz de atacar 99% das variações de HIV

Um grupo formado por pesquisadores do Instituto Nacional de Saúde (NIH), dos Estados Unidos, e da empresa farmacêutica Sanofi criaram em laboratório anticorpos superdesenvolvidos capazes de atacar 99% das cepas de HIV. O feito é ainda mais significativo por ser capaz até mesmo de prevenir a infec...

Ler Notícia Completa
Você gostará destes vídeos: