데이터 조작언어, 테이블에 값을 삽입하거나 수정하거나 삭제하는(데이터베이스 내의 데이터를 조작하는데 사용하는) 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');