추가 - INSERT
INSERT INTO 테이블명 VALUES(값1, 값2, ...);
열을 지정하여 INSERT
INSERT INTO 테이블명(열1, 열2, ...) VALUES(값1, 값2, ...)
INSERT INTO 테이블명(열1, 열2, ...) VALUES(값1, default, ...)
지정하지 않은 열에는 테이블 생성 시 설정한 default값이 저장된다.
혹은 default 키워드를 직접 사용하여 default값을 열에 저장할 수 있다.
만일 NOT NULL 제약이 걸려 있는 열은 NULL값이 허용되지 않는다.
갱신 - UPDATE
UPDATE 테이블명 SET 열1=값1, 열2=값2, .... WHERE 조건식
DELETE와 달리 테이블의 셀 값을 갱신하는 명령이다.
SET 구에 갱신식의 순서에 따라 처리 값이 달라질 수 있으므로 처리 순서를 신경 써야 한다.
삭제 - DELETE
DELETE FROM 테이블명 WHERE 조건식
삭제는 행 단위로 수행된다. WHERE 구 조건식에 맞는 모든 행을 삭제한다.
열을 지정해서 해당 열만 삭제할 수 없다.
* 물리삭제 / 논리삭제
물리삭제
DELETE 명령으로 직접 데이터를 삭제하는 방식
논리삭제
실제로 행을 삭제하지 않고 '삭제 flag' 같은 열의 값을 변경함으로써 삭제한 것 처럼 가장하는 것이다.
SELECT를 실행할 때도 이 삭제 flag를 조건식으로 하여 해당 행이 삭제된 것처럼 한다.
데이터를 삭제하지 않기 때문에 이전 상태로 돌리기 쉬운 장점이 있다.
삭제하더라도 저장공간이 늘어나지 않고, 데이터양이 늘어나면 검색속도가 떨어질 수 있다.
예를 들어 쇼핑몰 사이트에서 주문 취소할 경우 해당 주문 데이터를 물리삭제하지 않고 논리삭제하는 것이 좋다.
주문 관련 통계를 낼 때와 같은 상황에서는 필요한 데이터이기 때문이다.
'CS > DB' 카테고리의 다른 글
그룹화 - GROUP BY (0) | 2021.12.03 |
---|---|
집계함수 - COUNT / SUM / AVG / MIN / MAX (0) | 2021.12.03 |
CASE문 (0) | 2021.12.03 |
연산 (0) | 2021.12.03 |
결과 행 제한(LIMIT OFFSET) (0) | 2021.12.03 |
댓글