데이터 조작어(DML:Data Manipulation Language)
데이터를 다루는 종류의 문법 분류
-테이블에 새로운 행 추가(INSERT)
-테이블에 새로운 행 수정(UPDATE)
-테이블에 새로운 행 삭제(DELETE)
INSERT (데이터 입력) :
• 새로운 데이터를 테이블에 입력할 때 사용하는 문법
•INSERT INTO : 새로운 데이터를 추가할 테이블, 컬럼의 목록 작성하는 절
table : 테이블명
column : 컬럼 리스트(옵션)
• VALUES : 입력 될 데이터의 목록이 작성되는 절
value : 입력값 목록(필수) ← 데이터타입, 순서 맞추기
- 컬럼의 목록을 작성한 경우 VALUES절에는 컬럼 목록의 순서와 컬럼의 데이터타입을 맞춰 입력값을 작성해준다.
INSERT INTO departments (department_id, department_name, manager_id, location_id)
VALUES (280, 'storm', 100, 1700);
- department_id(280) : 270까지 department_id가 있음. 280번부터 이어주기 위해!
- department_name (strom) : 문자열이기에 ‘’넣어줌!
- manager_id(100) : 사장님 직속인 100번
- location_id(1700) : 본사코드
• 모든 컬럼이 아닌 일부 컬럼에만 값 입력
• 이때도 컬럼의 목록에 맞는 순서와 값을 values절에 작성해준다.
DESC departments;
INSERT INTO departments(department_id, department_name)
VALUES (290, 'Home');
SELECT * FROM departments;
⇒ 입력 컬럼목록에 없던 컬럼들은 입력값을 받지 못해 NULL의 데이터가 입력된 것을 볼 수 있다.
만약, 컬럼의 개수가 많을때!
DESC departments;
• 컬럼 목록을 생략한 경우 테이블의 모든 컬럼에 대한 입력값을 기본 순서대로 values절에 작성해야한다.
⇒ [INSERT INTO 테이블명]까지만 적고, 위 사진 컬럼 순서대로 적어야함(순서 임의 조작x)
DESC departments;
INSERT INTO departments
VALUES (300, 'Coffee', 100, 1700);
SELECT * FROM departments;
UPDATE (데이터 갱신)
- • 기존 데이터의 값을 새로운 값으로 갱신할 때 사용하는 문법
- UPDATE
table : 테이블명(필수)
- SET
column =(할당) value ⇒ 갱신내용
[column = value, ..] : 여러 컬럼 갱신 가능
기존 컬럼 + 기본값 / 직접적으로 리터럴 값
- WHERE
- WHERE codition : 갱신 대상행 조건(옵션(이지만 거의필수))
→ where 없이 쓰면 데이터 손실 우려
DELETE (데이터 삭제)
- DELETE
table(필수) : 테이블명
FROM(필수) : 기능X
- WHERE
condition(옵션) : 삭제행 조건
'DB > MySQL' 카테고리의 다른 글
[MySQL] UNIQUE, PRIMARY KEY, NOT NULL (0) | 2023.09.16 |
---|---|
[MySQL] 데이터 언어 - DDL (0) | 2023.09.16 |
[Mysql] JOIN, SELF-JOIN, table alias (0) | 2023.09.16 |
[Mysql] ORDER BY절(정렬) (0) | 2023.09.16 |
[Mysql] where절과 연산자(2) (0) | 2023.09.14 |