예제 테이블
Customers
| CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
|---|---|---|---|---|---|---|
| 1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
| 2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 05021 | Mexico |
| 3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 05023 | Mexico |
| 4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
| 5 | Berglunds snabbköp | Christina Berglun | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
UPDATE 는 테이블에 이미 존재하는 레코드를 변경할 때 사용한다.
UPDATE 테이블이름
SET 필드이름1 = 값1, 필드이름2 = 값2, ...
WHERE 조건;
WHERE 절은 어떤 레코드가 변경될 것인지를 결정한다. WHERE 절이 누락되면 모든 레코드가 변경되므로 주의해야한다.
아래 명령은 Customers 테이블에서 CustomerID 필드 값이 1인 레코드의 ContactName 과 City 필드의 값을 변경한다.
UPDATE Customers
SET ContactName='Alfred Schmidt', City='Frankfurt'
WHERE CustomerID=1;
You have made changes to the database. Rows affected: 1
CustomerID 가 1인 레코드를 조회해보자.
SELECT *
FROM Customers
WHERE CustomerID=1;
Result
| CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
|---|---|---|---|---|---|---|
| 1 | Alfreds Futterkiste | Alfred Schmidt | Obere Str. 57 | Frankfurt | 12209 | Germany |
값이 변경되어 있는 것을 볼 수 있다. WHERE 절의 조건에 따라 여러개의 레코드를 한꺼번에 바꾸는 것도 가능하다.
Reference
W3School: https://www.w3schools.com/sql/