제수기 > SQL > DML / 암기필🥪

Eunbi Jo·2024년 12월 27일
0

제수기

목록 보기
17/90
제수기 - 제발 수업내용을 기억해라 

INSERT

- 새로운 행을 추가하는 구문이다.
- 테이블의 행의 수가 증가한다.
- insert요청시 처리된 행의 수가 반환된다.
(Intellij에서 Service뷰-Output탭에서 확인이 가능)

문법1 : 테이블 구조 그대로 컬럼 순서, 개수 정확하게 입력해야 한다.

  • 1 row가 영향을 받았다고 나온다. 1행이 추가됐다는 의미.
  • 추가된 걸 확인할 수 있다.

문법2: 컬럼을 지정해서 등록해야 한다.

기본값이 정해지지 않은 not null 컬럼은 생략할 수 없다. 
  • 기본값이 없는 orderable_status를 왜 생략했니! 라며 에러가 났음.

기본값 확인하기

desc 쳐보면 Default가 있다. 여기서 <null>이라고 쓰인 컬럼들은 기본값이 없는 거다.

문법3: bulk insert

위 3개 중에 아무거나 써도 된다.

UPDATE

-- 테이블 행을 수정하는 명령어
-- 실행 후 전체 데이터의 개수에 변화가 없다.
# 문법
UPDATE <테이블명>
SET 컬럼명1 = 값1, 컬럼명2 = 값2, ... 
WHERE  조건절;

✏️ 주의할점 : where 절 작성하지 않으면 모든 행에 대해 update 처리된다.

  • menu_code27인 제품 추가
  • set에서 그냥 + 연산 사용해줘도 반영된다.

DELETE

테이블 행 삭제하는 명령어 
  • 일반적으로 PK 컬럼(고유식별컬럼)을 기준으로 수정/삭제를 진행한다. 왜? 중복되지 않는 컬럼이니까. where절에 많이 쓴다.

부가적인 명령어

  • replace into : insert/update 동시진행
  • insert into ... on duplicate key update ... : insert/update 동시진행, migration에 쓰인다.

0개의 댓글