DML: ๋ฐ์ดํฐ ์กฐ์ ์ธ์ด
๋ฐ์ดํฐ ์กฐ์ ์ธ์ด(DML)๊ฐ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ญ์์ค. SELECT, INSERT, UPDATE ๋ฐ DELETE์ ๊ฐ์ DML ๋ช ๋ น์ ๋ํด ์์๋ณด์ธ์.

๋ฐ์ดํฐ ์กฐ์ ์ธ์ด( Data Manipulation Language, ์ค์ฌ์ DML)๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๊ณ ์กฐ์ํ ์ ์๋ ๊ฐ๋ ฅํ ๋๊ตฌ์ ๋๋ค. ๋ ธ๋ จํ ๊ฐ๋ฐ์์ด๋ ์ด์ ๋ง ์์ํ ๊ฐ๋ฐ์์ด๋ ๊ด๊ณ์์ด DML ์ ์ดํดํ๋ ๊ฒ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ ๊ณผ ๋์ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ฑ์ ํ์์ ์ ๋๋ค. ์ด ๊ธฐ์ฌ์์๋ DML ์ ๋ํด ์์ธํ ์ดํด๋ณด๊ณ ๊ตฌ์กฐํ๋๊ณ ์กฐ์งํ๋ ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๋ค์ํ ๋ช ๋ น๊ณผ ๊ธฐ์ ์ ์ดํด๋ด ๋๋ค. SELECT ๋ฐ INSERT ์์ UPDATE ๋ฐ DELETE ์ ์ด๋ฅด๊ธฐ๊น์ง DML ์ ๋ง์คํฐํ๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ์ ์ ํ ๋จ๊ณ ๋์ด์ฌ๋ฆฌ๊ธฐ ์ํด ์์์ผ ํ ๋ชจ๋ ๊ฒ์ ๋ค๋ฃฐ ๊ฒ์ ๋๋ค. ๋ฐ๋ผ์ ๋ฐ์ดํฐ ์กฐ์ ์ ๋ฌธ๊ฐ๊ฐ ๋๊ณ ์ถ๊ฑฐ๋ DML ์ ๋ํด ์์ธํ ์์๋ณด๊ณ ์ถ๋ค๋ฉด ๊ณ์ ์ฝ๊ณ ์ด ๊ฐ๋ ฅํ ์ธ์ด๊ฐ ๋ฐ์ดํฐ์ ์ ์ฌ๋ ฅ์ ์ต๋ํ ํ์ฉํ๋ ๋ฐ ์ด๋ป๊ฒ ๋์์ด ๋๋์ง ์์๋ณด์ธ์!
Data Manipulation Language ( DML)๋ ๋ฌด์์ ๋๊น?
DML ( Data Manipulation Language)์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๊ณ ์กฐ์ํ๋ ๋ฐ ์ฌ์ฉ๋๋ SQL (Structured Query Language)์ ํ์ ์งํฉ์ ๋๋ค. DML ๋ช ๋ น์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ , ์ ๋ฐ์ดํธ, ์ญ์ ๋ฐ ๊ฒ์ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ์ด๋ฌํ ๋ช ๋ น์ ํตํด ์ฌ์ฉ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด ์ ์์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ํฅ๋ฏธ๋ก์ด ์ฌ์ค์ ์น ์ ํ๋ฆฌ์ผ์ด์ , ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐ ๋ฐฑ์๋๋ฅผ ์์ฑํ ์ ์๋ no-code ํ๋ซํผ AppMaster ์ DML ๊ธฐ๋ฐ์ ๋น์ฆ๋์ค ํ๋ก์ธ์ค ํธ์ง๊ธฐ ๊ฐ ์๋ค๋ ๊ฒ์ ๋๋ค.
DML ๋ฌธ ์ ํ
- SELECT ๋ฌธ : SELECT ๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์๋ ํ๋ ์ด์์ ํ ์ด๋ธ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. SELECT ๋ฌธ์ ๊ฒฐ๊ณผ๋ ๊ฒฐ๊ณผ ์งํฉ์ด๋ผ๊ณ ๋ ํ๋ ํ ์ด๋ธ์ ๋๋ค. SELECT ๋ฌธ์ ์กฐ์ธ ์์ ์ ์ฌ์ฉํ์ฌ ์ฌ๋ฌ ํ ์ด๋ธ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๋ ๋ฐ์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- INSERT ๋ฌธ : INSERT ๋ฌธ์ ํ ์ด๋ธ์ ์๋ก์ด ๋ฐ์ดํฐ ํ์ ์ฝ์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. INSERT ๋ฌธ์ ๋จ์ผ ํ ์ด๋ธ ๋๋ ์ฌ๋ฌ ํ ์ด๋ธ์ ํ ๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- UPDATE ๋ฐ DELETE ๋ฌธ : UPDATE ๋ฌธ์ ํ ์ด๋ธ์ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ์์ ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๋ฐ๋ฉด DELETE ๋ฌธ์ ํ ์ด๋ธ์์ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ ๋ฌธ ๋ชจ๋ ๋จ์ผ ํ ์ด๋ธ ๋๋ ์ฌ๋ฌ ํ ์ด๋ธ์์ ํ ๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฐ์ดํธํ๊ฑฐ๋ ์ญ์ ํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ด๋ฌํ ๋ฌธ ์ธ์๋ DML ์๋ MERGE ๋ฐ CALL ๊ณผ ๊ฐ์ ๋ฌธ๋ ํฌํจ๋ฉ๋๋ค. MERGE ๋ฌธ์ ๋ ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฅผ ํ๋๋ก ๊ฒฐํฉํ๋ ๋ฐ ์ฌ์ฉ๋๋ฉฐ CALL ๋ฌธ์ ์ ์ฅ ํ๋ก์์ ๋ฅผ ์คํํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
DML ๋ฌธ์ด ํธ๋์ญ์ ๋ด์์ ์คํ๋๋ค๋ ์ ์ ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์์ต๋๋ค. ์ฆ, DML ๋ฌธ์ ์ํ ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ด ๋จ์ผ ์์ ๋จ์๋ก ์ปค๋ฐ๋๊ฑฐ๋ ๋กค๋ฐฑ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ์ฌ์ฉ์๋ ์ฌ๋ฌ DML ๋ฌธ์ด ๋์์ ์คํ๋๋ ๊ฒฝ์ฐ์๋ ๋ฐ์ดํฐ๊ฐ ์ผ๊ด๋๊ณ ์ ํํ๊ฒ ์ ์ง๋๋๋ก ํ ์ ์์ต๋๋ค.
DML ๋ช ๋ น์ SQL์ ์ฌ์ฉํ์ฌ ์คํ๋๋ฉฐ DDL ( Data Definition Language) ๋ช ๋ น๊ณผ ๊ฐ์ ๋ค๋ฅธ SQL ๋ช ๋ น๊ณผ ํจ๊ป ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋ค๊ณ ๊ด๋ฆฌํ๋ ๋ฐ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด CREATE TABLE ๊ณผ ๊ฐ์ DDL ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ํ ์ด๋ธ์ ๋ง๋ ๋ค์ DML ๋ช ๋ น์ ์ฌ์ฉํ์ฌ ํด๋น ํ ์ด๋ธ์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ , ์ ๋ฐ์ดํธ ๋ฐ ๊ฒ์ํฉ๋๋ค. DML ๋ฌธ์ ํธ๋์ญ์ ๋ด์์ ์คํ๋๋ค๋ ์ ์ ์ ์ํด์ผ ํฉ๋๋ค. ์ฆ, DML ๋ฌธ์ ์ํ ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋จ์ผ ์์ ๋จ์๋ก ์ปค๋ฐ๋๊ฑฐ๋ ๋กค๋ฐฑ๋ฉ๋๋ค.
์์ฝํ๋ฉด DML ( Data Manipulation Language)์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๊ณ ์กฐ์ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๊ฐ๋ ฅํ ๋ช ๋ น ์งํฉ์ ๋๋ค. SELECT, INSERT, UPDATE ๋ฐ DELETE ๋ช ๋ น์ DML ์์ ๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋๋ฉฐ ์ฌ์ฉ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด ์ ์์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. DML ๋ฌธ์ SQL์ ์ฌ์ฉํ์ฌ ์คํ๋๋ฉฐ ์ข ์ข DDL ๋ช ๋ น๊ณผ ํจ๊ป ์ฌ์ฉ๋์ด ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋ค๊ณ ๊ด๋ฆฌํฉ๋๋ค.
์์ฃผํ๋ ์ง๋ฌธ
Data Manipulation Language ( DML)๋ ๋ฌด์์ ๋๊น?
Data Manipulation Language ( DML)๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๊ณ ์กฐ์ํ๋ ๋ฐ ์ฌ์ฉ๋๋ SQL์ ํ์ ์งํฉ์ ๋๋ค.
DML ๋ฌธ์ ์๋ ๋ฌด์์ ๋๊น?
DML ๋ฌธ์ ๋ช ๊ฐ์ง ์์๋ SELECT, INSERT, UPDATE ๋ฐ DELETE ๊ฐ ํฌํจ๋ฉ๋๋ค.
DML ์์ SELECT ๋ฌธ์ ์ด๋ป๊ฒ ์ฌ์ฉํฉ๋๊น?
SELECT ๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์๋ ํ๋ ์ด์์ ํ ์ด๋ธ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. SELECT ๋ฌธ์ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์ " SELECT column1, column2, ... FROM table_name. "์ ๋๋ค.
DML ์์ INSERT ๋ฌธ์ ์ด๋ป๊ฒ ์ฌ์ฉํฉ๋๊น?
INSERT ๋ฌธ์ ํ ์ด๋ธ์ ์ ๋ฐ์ดํฐ ํ์ ์ถ๊ฐํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. INSERT ๋ฌธ์ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์ " INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2,...)"์ ๋๋ค.
DML ์์ UPDATE ๋ฌธ์ ์ด๋ป๊ฒ ์ฌ์ฉํฉ๋๊น?
UPDATE ๋ฌธ์ ํ ์ด๋ธ์ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ์์ ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. UPDATE ๋ฌธ์ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์ " UPDATE table_name SET column1 = new_value1, column2 = new_value2, ... WHERE some_column = some_value "์ ๋๋ค.
DML ์์ DELETE ๋ฌธ์ ์ด๋ป๊ฒ ์ฌ์ฉํฉ๋๊น?
DELETE ๋ฌธ์ ํ ์ด๋ธ์ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํฉ๋๋ค. DELETE ๋ฌธ์ ๊ธฐ๋ณธ ๊ตฌ๋ฌธ์ " DELETE FROM table_name WHERE some_column = some_value "์ ๋๋ค.
DML ๋ฌธ์ ์ฌ์ฉํ๊ธฐ ์ํ ๋ช ๊ฐ์ง ๋ชจ๋ฒ ์ฌ๋ก๋ ๋ฌด์์ ๋๊น?
์๋ํ ๋ฐ์ดํฐ๋ง ์์ ํ๊ฑฐ๋ ์ญ์ ํ๋๋ก DML ๋ฌธ์ WHERE ์ ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ณ๊ฒฝํ๊ธฐ ์ ์ ํธ๋์ญ์ ๊ด๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ณ ๋ฐ์ดํฐ๋ฅผ ๋ฐฑ์ ํ๋ ๊ฒ๋ ์ข์ ์๊ฐ์ ๋๋ค.
์ ์ฅ ํ๋ก์์ ์์ DML ๋ฌธ์ ์ฌ์ฉํ ์ ์์ต๋๊น?
์, DML ๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋๊ณ ๋จ์ผ ๋จ์๋ก ์คํ๋ ์ ์๋ ๋ฏธ๋ฆฌ ์ปดํ์ผ๋ SQL ๋ฌธ ์งํฉ์ธ ์ ์ฅ ํ๋ก์์ ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
DML ๋ฌธ์ ์ฌ์ฉํ์ฌ ํ ๋ฒ์ ์ฌ๋ฌ ํ ์ด๋ธ์ ์์ ํ ์ ์์ต๋๊น?
์๋์, DML ๋ฌธ์ ํ ๋ฒ์ ํ๋์ ํ ์ด๋ธ๋ง ์์ ํ ์ ์์ต๋๋ค. ์ฌ๋ฌ ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฅผ ์์ ํด์ผ ํ๋ ๊ฒฝ์ฐ ์ฌ๋ฌ DML ๋ฌธ์ ์ฌ์ฉํ๊ฑฐ๋ ํธ๋์ญ์ ์ ์ฌ์ฉํ์ฌ ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ด ์์์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋๋ก ํด์ผ ํฉ๋๋ค.


