TOP

SQL UPDATE

SQL UPDATE Descrição

A instrução UPDATE é usada para modificar registros existentes em uma tabela.


UPDATE Sintaxe

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition
Tenha cuidado ao atualizar entradas na tabela! Observe a expressão WHERE na instrução UPDATE. A expressão WHERE especifica quais registros serão atualizados. Se você omitir a expressão WHERE, todos os registros da tabela serão atualizados!

Banco de dados de demonstração

A seguir está um exemplo da tabela "Customers" ("Clientes") do banco de dados "Northwind":

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

Exemplo de tabelas SQL UPDATE

A consulta SQL a seguir atualiza o primeiro cliente (CustomerID = 1) com uma nova pessoa de contato e uma nova cidade (City).

UPDATE Customers 
SET ContactName = 'Alfred Schmidt', City = 'Frankfurt' 
WHERE CustomerID = 1

A seleção da tabela "Customers" agora ficará assim:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Alfred Schmidt Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitucion 2222 Mexico D.F. 05021 Mexico
3 Antonio Moreno Taqueria Antonio Moreno Mataderos 2312 Mexico D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbkop Christina Berglund Berguvsvagen 8 Lulea S-958 22 Sweden

SQL UPDATE Exemplo de busca de vários registros

A expressão WHERE determina quantos registros serão atualizados.

A consulta SQL a seguir alterará ContactName para "Juan" para todos os registros onde o país é "México":

UPDATE Customers 
SET ContactName = 'Juan' 
WHERE Country = 'Mexico'

A seleção da tabela "Customers" agora ficará assim:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Alfred Schmidt Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Juan Avda. de la Constitucion 2222 Mexico D.F. 05021 Mexico
3 Antonio Moreno Taqueria Juan Mataderos 2312 Mexico D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbkop Christina Berglund Berguvsvagen 8 Lulea S-958 22 Sweden

Cuidado ao usar o SQL Update!

Tenha cuidado ao atualizar registros. Se você omitir a expressão WHERE, todos os registros serão atualizados!
UPDATE Customers 
SET ContactName = 'Juan'

A seleção da tabela "Customers" agora ficará assim:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Juan Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Juan Avda. de la Constitucion 2222 Mexico D.F. 05021 Mexico
3 Antonio Moreno Taqueria Juan Mataderos 2312 Mexico D.F. 05023 Mexico
4 Around the Horn Juan 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbkop Juan Berguvsvagen 8 Lulea S-958 22 Sweden