콘텐츠로 건너뛰기

[Spring을 이용한 웹 백엔드 기초] 1. SQL & JDBC 프로그래밍 – 4) DML(INSERT, UPDATE, DELETE)

 

– INSERT (데이터 입력/삽입)

데이터 입력은 INSERT 키워드를 이용한다. INSERT 구문의 형태는 아래와 같다.

INSERT INTO 테이블명(필드1, 필드2, 필드3, ...)
    VALUES (필드1 값, 필드2 값, 필드3 값, ...)

위와 같이 값이 들어갈 필드 명을 지정해주면, VALUES 에 입력하고자 하는 필드 값만 입력하면 된다. 또한 디폴트 값이 세팅되는 필드 값 지정을 생략할 수 있다.

ex) insert into role (role_id) values (100);

INSERT INTO 테이블명
    VALUES (필드1 값, 필드2 값, 필드3 값, ...)

위와 같이 필드 명을 생략할 경우에는, 모든 필드 값을 반드시 순서대로 입력해야한다.
ex) insert into role values (100, ‘developer’);
insert into role values(100) // 에러 발생.

role 테이블의 description:

 

INSERT 예제

insert into ROLE value(200, 'CEO');

insert into ROLE(role_id) value (202);

조건이 NOT_NULL인 field는 값을 꼭 넣어주어야 한다. role_id의 조건이 NOT NULL인데 role_id 없이 description만 insert하는 것은 불가능하다.

 

– UPDATE (데이터 수정)

UPDATE 테이블명
   SET 필드1=필드1 값, 필드2=필드 2값, ...
WHERE 조건식

조건식이 필수는 아니지만, 조건식을 주지 않으면 전체 로우에 영향을 미치니 조심해야 한다.

UPDATE 구문 예제

  • role 테이블에 role_id가 200일 경우 description을 CTO로 변경
update ROLE
set description='CTO'
where role_id=200;

 

– DELETE(데이터 삭제)

DELETE
   FROM 테이블명
WHERE 조건식

조건식을 통해 특정 조건의 row만 삭제할 수 있다. 조건식을 주지 않으면 전체 로우에 영향을 미치니 조심해야한다.

DELETE 구문 예제

  • role 테이블에서 role_id가 200번인 데이터를 삭제
delete from role
where role_id=200;