서버 개발/MySQL

MySQL - (5) 데이터 갱신

Johnny Yoon 2019. 8. 10. 10:13
728x90
반응형

MySQL 포스팅

(1) SELECT

(2) 집계함수

(3) VIEW

(4) 윈도우 함수

(5) 데이터 갱신

(6) 조건 분기

(7) JOIN


데이터 갱신

소프트웨어 개발을 하다보면 CRUD라는 말을 종종 듣게 됩니다.

이는 Create, Read, Update, Delete가 됩니다.

SQL에서는 이가 곧 Insert, Select, Update, Delete가 됩니다.

이 중 Select를 제외하면 모두 데이터를 새로 주입하거나,

즉 갱신하려는 테이블 자체에 영향을 주는 트랜잭션 입니다.

 

INSERT

INSERT문의 기본적인 문법은 다음과 같습니다.

INSERT INTO 테이블명 (컬럼명1, 컬럼명2, ...)
VALUES (값1, 값2, ...)

참고로 위에서 컬럼명은 테이블이 정의된 컬럼 순서와 VALUES내의 값들의 순서가 일치하면 따로 지정해줄 필요는 없습니다.

 

이제 Customer데이터에 하나의 레코드를 넣어주겠습니다.

(주소에는 일부러 NULL값을 넣어주었습니다.)

INSERT INTO customers
VALUES (92, 'JohnnyYoon', 'Johnny Yoon', NULL, 'Seoul', '12345', 'Korea');

 

위의 결과를 Select문으로 확인해보면, 하위 5개의 결과는 다음과 같습니다.

 

UPDATE

이제 해당 레코드를 UPDATE해보도록 하겠습니다.

UPDATE의 기본 문법은 다음과 같습니다.

UPDATE 테이블명
SET 컬럼명 = 값

참고로 UPDATE문에도 WHERE를 사용해 조건을 줄 수 있습니다.

 

이제 UPDATE를 사용해 NULL값을 교체해 주도록 하겠습니다.

혹시 MySQL Workbench를 사용하신다면, Edit > Preferences > SQL Editor에서 Safe모드를 해제해주어야 합니다.

UPDATE customers
SET Address = 'Seoul 123'
WHERE Address is NULL;

 

위의 쿼리를 통해 갱신된 테이블의 하위 5개 결과는 다음과 같습니다.

 

한가지 참고할 사항은, 여러 컬럼을 SET할때는 다음과 같이 괄호를 사용해 수행하면 됩니다.

UPDATE customers
SET (CustomerID, Address) = (95, 'Seoul 123')
WHERE Address is NULL;

 

DELETE

이제 마지막으로 DELETE를 사용해보겠습니다.

DELETE는 SELECT와 문법이 많이 다르지 않습니다.

DELETE FROM 테이블명
WHERE 조건

DELETE는 레코드 자체를 지우는 것이기 때문에 컬럼명을 지정해줄 수는 없습니다.

 

이제 앞서 갱신한 레코드를 지워주겠습니다.

DELETE FROM customers
WHERE CustomerID = 92;

 

위의 쿼리로 갱신된 테이블의 하위 5개 결과는 다음과 같습니다.

 

여기까지 데이터 갱신에 대해 알아보았습니다.


MySQL 포스팅

(1) SELECT

(2) 집계함수

(3) VIEW

(4) 윈도우 함수

(5) 데이터 갱신

(6) 조건 분기

(7) JOIN


참고자료

https://www.w3schools.com/sql

728x90
반응형

'서버 개발 > MySQL' 카테고리의 다른 글

MySQL - (7) JOIN  (0) 2019.08.10
MySQL - (6) 조건분기  (0) 2019.08.10
MySQL - (4) 윈도우 함수  (0) 2019.08.10
MySQL - (3) VIEW  (0) 2019.08.09
MySQL - (2) 집계함수  (0) 2019.08.08