SKN/02. DB

14. DML

claovy☘️ 2025. 2. 20. 12:10
데이터 조작언어, 테이블에 값을 삽입하거나 수정하거나 삭제하는(데이터베이스 내의 데이터를 조작하는데 사용하는) SQL의 한 부분이다.
# DML

# 값 추가할 때마다 조회하기 위해 select절 추가
SELECT menu_name, menu_code, menu_price, category_code, orderable_status
FROM tbl_menu;


#1. INSERT
-- INSERT INTO 테이블명 VALUES (컬럼순으로 삽일할 데이터 나열)
INSERT INTO tbl_menu VALUES(null, '곰탕', 9500, 6, 'Y');

-- INSERT INTO 테이블명 (컬럼명1, 컬럼명2, 컬럼명3, ... )
INSERT INTO TBl_Menu(menu_code, menu_name, menu_price, orderable_status, category_code)
VALUES (NULL, '차돌짬뽕', 15000, 'Y', 6);

INSERT INTO tbl_menu(mEnu_name, menu_priCe, category_coDe, ORDErABLE_Status)
VALUES ('만잔라떼', 4500, 7, 'Y');

# MULTi insert
INSERT INTO tbl_menu
VALUES 
(null, '유자민트티', 6900, 12, 'Y'),
(NuLl, '프렌치프라이', 7500, 7, 'Y'),
(null, '훈제오리샐러드', 9500, 7, 'Y');

# 테이블 계속해서 갱신
--  INSERT INTO tbl_menu
--  VALUES(nulL, '1번 음식', 100, 10, 'Y');

-- <!---------------------------------------------------------------------!> --

#2. UPDATE
-- UPDATE 테이블명
--   SET 컬럼명1 = 수정할 데이터,
-- 	   	컬럼명2 = 수정할 데이터
-- [where 수정 대상 데이터 조건];

UPDATE tbl_menu
  SET menu_name = '100번이었던 음식', menu_price = 19000
WHERE menu_code = 100; -- SAFE UPDATE MODE가 설정되어 있으면 WHERE절 없이 수정 불가 

-- <!---------------------------------------------------------------------!> --

#3. DELETE
-- DELETE FROM 테이블명 [WHERE 삭제 조건];
DELETE 
FROM tbl_menu
WHERE menu_code = 101;

DELETE 
FROM tbl_menu
LIMIT 3;

DELETE FROM tbl_menu
ORDER BY menu_code DESC
LIMIT 3;

-- <!---------------------------------------------------------------------!> --
#4. REPLACE
-- REPLACE는 중복값에 대해서는 데이터를 덮어쓰고, 중복값이 없다면 INSERT함
-- INTO 키워드는 생략가능
REPLACE INTO tbl_menu VALUES (100,'100번 음식 REPLACE!!!', 100, 10, 'Y');
REPLACE tbl_menu VALUES(120, '없는 메뉴 REPLACE', 11111, 8, 'Y');

'SKN > 02. DB' 카테고리의 다른 글

16. JOIN  (0) 2025.02.20
15. 데이터타입, 내장함수, 연산자  (0) 2025.02.20
13. SQL 작성 (select / order_by / where / distinct)  (0) 2025.02.19
04. 개념/논리/물리 모델  (1) 2025.02.19
12. 백업 및 복원  (0) 2025.02.19