Cursos / Informática para Internet / Banco de dados / Aula

arrow_back Aula 09 - Linguagem SQL – criação, inserção e modificação de tabelas

Modificação de tabelas

Vamos supor que um cliente da nossa locadora, o Sr. José da Silva, mudou seu e-mail. Sendo assim, para que nosso banco de dados não fique desatualizado, devemos atualizar a nossa tabela clientes. Para isso, podemos utilizar o comando UPDATE (atualizar), que altera apenas os valores das colunas especificadas.

A sintaxe do comando UPDATE é descrita no quadro a seguir.

A palavra SET diz ao SGBD para alterar o atributo antes do sinal de igual para conter o dado cujo valor é especificado depois do sinal de igualdade. A cláusula WHERE é opcional, mas quando está presente diz ao sistema para mudar somente as linhas que tenham a condição atendida. Se a condição não for informada, a atualização será realizada em toda a tabela, então, você deve tomar muito cuidado ao atualizar um campo sem a cláusula WHERE.

Você pode utilizar o UPDATE com um único atributo ou com um conjunto de atributos, mas para isso é preciso adicionar mais pares de atributo = valor na cláusula SET. Não se esqueça de colocar vírgula após cada um dos pares de atributo = valor.

Vamos exercitar a utilização do comando UPDATE fazendo pequenas atualizações nas tabelas clientes e filmes do nosso banco de dados locadora.

Inicialmente, vamos mudar o e-mail do cliente com nome José da Silva para silvajose@cursosql.com do seguinte modo:

Veja que especificamos na cláusula WHERE que o e-mail a ser atualizado era do cliente José da Silva, caso não tivesse especificado, todos os e-mails cadastrados na tabela clientes teriam sido alterados.

Se quisermos alterar o valor cobrado para locação de um filme, por exemplo, oferecendo um desconto de R$1,00 em todos os filmes, podemos usar a seguinte estrutura:

A estrutura (fil_preco = fil_preco – 1) é válida, pois fil_preco é um atributo numérico. Qualquer operação aritmética básica pode ser utilizada na construção desse tipo de estrutura (+ para adição, - para subtração, * para multiplicação e / para divisão).

Caso queira especificar o preço de todos os filmes para, por exemplo, R$ 4,50, faça a atualização do seguinte modo:

A mensagem fornecida pelo sistema ao comando UPDATE informa se o comando foi realizado com sucesso e quantas linhas da tabela foram alteradas, conforme é ilustrado na Figura 5.

Tela do MySQL após diversos comandos UPDATE.

Versão 5.3 - Todos os Direitos reservados