๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด ( DML : Data Manipulation Language) 

- ํ…Œ์ด๋ธ”์— ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜ ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ • ๋˜๋Š” ์‚ญ์ œํ•˜๊ธฐ ์œ„ํ•œ ๋ช…๋ น์–ด

์ข…๋ฅ˜ ๊ธฐ๋Šฅ
INSERT ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ์ž…๋ ฅ ๋ช…๋ น์–ด
UPDATE ๊ธฐ์กด ๋ฐ์ดํ„ฐ ์ˆ˜์ • ๋ช…๋ น์–ด
DELETE ๊ธฐ์กด ๋ฐ์ดํ„ฐ ์‚ญ์ œ ๋ช…๋ น์–ด
MERGE ๋‘๊ฐœ์˜ ํ…Œ์ด๋ธ”์„ ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”๋กœ ๋ณ‘ํ•ฉํ•˜๋Š” ๋ช…๋ น์–ด

 


 

๋ฐ์ดํ„ฐ ์ž…๋ ฅ INSERT

- ํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•˜๊ธฐ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด

  • ๋‹จ์ผ ํ–‰ ์ž…๋ ฅ : ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์˜ ํ–‰์„ ํ…Œ์ด๋ธ”์— ์ž…๋ ฅ
  • ๋‹ค์ค‘ ํ–‰ ์ž…๋ ฅ : ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ํ•œ ๋ฒˆ์— ์—ฌ๋Ÿฌ ํ–‰ ๋™์‹œ์— ์ž…๋ ฅ

1) ๋‹จ์ผ ํ–‰ ์ž…๋ ฅ

INSERT INTO ... VALUES

- INTO ์ ˆ์— ๋ช…์‹œํ•œ ์นผ๋Ÿผ์— VALUES ์ ˆ์—์„œ ์ง€์ •ํ•œ ์นผ๋Ÿผ ๊ฐ’์„ ์ž…๋ ฅ

- INTO ์ ˆ์— ์นผ๋Ÿผ์„ ๋ช…์‹œํ•˜์ง€ ์•Š์œผ๋ฉด ํ…Œ์ด๋ธ” ์ƒ์„ฑ ์‹œ ์ •์˜ํ•œ ์นผ๋Ÿผ ์ˆœ์„œ์™€ ๋™์ผํ•œ ์ˆœ์„œ๋กœ ์ž…๋ ฅ

- ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ์นผ๋Ÿผ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ๋™์ผํ•ด์•ผ ํ•จ

- ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ ํฌ๊ธฐ๋Š” ์นผ๋Ÿผ์˜ ํฌ๊ธฐ๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๋™์ผํ•ด์•ผ ํ•จ

- CHAR, VARCHAR2, DATE ํƒ€์ž… ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋Š” ๋‹จ์ผ์ธ์šฉ๋ถ€ํ˜ธ ' ' ๋กœ ๋ฌถ์–ด์„œ ์‚ฌ์šฉ

INSERT INTO ํ…Œ์ด๋ธ” [( ์นผ๋Ÿผ [ , ์นผ๋Ÿผ ... ])
VALUES ( ๊ฐ’ [ , ๊ฐ’ ...]);

 

2) ๋‹จ์ผ ํ…Œ์ด๋ธ” ๋‹ค์ค‘ ํ–‰ ์ž…๋ ฅ

INSERT INTO ... ์„œ๋ธŒ์ฟผ๋ฆฌ

- INSERT ๋ช…๋ น๋ฌธ์—์„œ ์„œ๋ธŒ์ฟผ๋ฆฌ ์ ˆ ์ด์šฉ, ์ž์‹ ์ด๋‚˜ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ณต์‚ฌํ•˜์—ฌ ์—ฌ๋Ÿฌ ํ–‰ ๋™์‹œ ์ž…๋ ฅ

- INSERT ๋ช…๋ น๋ฌธ์˜ VALUES์ ˆ ๋Œ€์‹  ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๊ฒ€์ƒ‰๋œ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์„ ํ•œ๊บผ๋ฒˆ์— ์ž…๋ ฅ

- ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์€ INSERT ๋ช…๋ น๋ฌธ์— ์ง€์ •๋œ ์นผ๋Ÿผ ๊ฐœ์ˆ˜์™€ ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด ์ผ์น˜ํ•ด์•ผ ํ•จ

- ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์ด์šฉํ•œ ๋‹ค์ค‘ ํ–‰ ์ž…๋ ฅ ์‹œ ํ…Œ์ด๋ธ”์— ๊ธฐ๋ณธํ‚ค, ๊ณ ์œ ํ‚ค ์ œ์•ฝ์กฐ๊ฑด์ด ์ค‘๋ณต๋˜์ง€ ์•Š๋„๋ก ์ฃผ์˜

 INSERT INTO ํ…Œ์ด๋ธ” [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
์„œ๋ธŒ์ฟผ๋ฆฌ;

 

3) ๋‹ค์ค‘ ํ…Œ์ด๋ธ” ๋‹ค์ค‘ ํ–‰ ์ž…๋ ฅ 

 

โ— INSERT ALL

INSERT ALL

INTO ... VALUES

INTO ... VALUES

์„œ๋ธŒ์ฟผ๋ฆฌ

- ์„œ๋ธŒ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์„ ์กฐ๊ฑด ์—†์ด ์—ฌ๋Ÿฌ ํ…Œ์ด๋ธ”์— ๋™์‹œ ์ž…๋ ฅ

- ์„œ๋ธŒ์ฟผ๋ฆฌ ์นผ๋Ÿผ ์ด๋ฆ„๊ณผ ๋ฐ์ดํ„ฐ๊ฐ€ ์ž…๋ ฅ๋˜๋Š” ํ…Œ์ด๋ธ”์˜ ์นผ๋Ÿผ์ด ๋ฐ˜๋“œ์‹œ ๋™์ผํ•ด์•ผ ํ•จ

INSERT ALL
INTO [ ํ…Œ์ด๋ธ”1 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
INTO [ ํ…Œ์ด๋ธ”2 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
INTO [ ํ…Œ์ด๋ธ”3 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
์„œ๋ธŒ์ฟผ๋ฆฌ;

 

โ— CONDITIONAL INSERT ALL

INSERT ALL

WHEN ... THEN

INTO ... VALUES

WHEN ... THEN

INTO ... VALUES

ELSE

INTO ... VALUES

์„œ๋ธŒ์ฟผ๋ฆฌ

 

- ์„œ๋ธŒ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์— ๋Œ€ํ•ด WHEN ์กฐ๊ฑด์ ˆ์—์„œ ์ง€์ •ํ•œ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ํ–‰์„ ํ•ด๋‹น๋˜๋Š” ํ…Œ์ด๋ธ”์— ๊ฐ๊ฐ ์ž…๋ ฅ

- ์„œ๋ธŒ์ฟผ๋ฆฌ์—์„œ ๊ฒ€์ƒ‰๋œ ํ–‰์„ ๋งŒ์กฑํ•˜๋Š” ์กฐ๊ฑด์ด ์—ฌ๋Ÿฌ ๊ฐœ์ผ ๊ฒฝ์šฐ ํ•ด๋‹น ํ…Œ์ด๋ธ”์— ๋ชจ๋‘ ์ž…๋ ฅ

INSERT ALL
WHEN ์กฐ๊ฑด์ ˆ1 THEN
INTO [ ํ…Œ์ด๋ธ”1 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
WHEN ์กฐ๊ฑด์ ˆ2 THEN
INTO [ ํ…Œ์ด๋ธ”2 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
[ ELSE
INTO [ ํ…Œ์ด๋ธ”3 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
์„œ๋ธŒ์ฟผ๋ฆฌ;

- WHEN ์กฐ๊ฑด์ ˆ THEN : ์„œ๋ธŒ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์— ๋Œ€ํ•œ ๋น„๊ต ์กฐ๊ฑด

- ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ ์ค‘์—์„œ ์กฐ๊ฑด์ ˆ1์„ ๋งŒ์กฑํ•˜๋Š” ๊ฒฐ๊ณผ ํ–‰์€ ํ…Œ์ด๋ธ”1์— ์ž…๋ ฅ, 

  ์กฐ๊ฑด์ ˆ2๋ฅผ ๋งŒ์กฑํ•˜๋Š” ๊ฒฐ๊ณผ ํ–‰์€ ํ…Œ์ด๋ธ”2์— ์ž…๋ ฅ,

  ๊ทธ๋ฆฌ๊ณ  ์–ด๋Š ์กฐ๊ฑด์ ˆ๋„ ๋งŒ์กฑํ•˜์ง€ ์•Š๋Š” ํ–‰(ELSE์ ˆ)์€ ํ…Œ์ด๋ธ”3์— ์ž…๋ ฅ

 

โ— CONDITIONAL INSERT FIRST

INSERT FIRST

WHEN ... THEN

INTO ... VALUES

WHEN ... THEN

INTO ... VALUES

ELSE

INTO ... VALUES

์„œ๋ธŒ์ฟผ๋ฆฌ

- ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์— ๋Œ€ํ•ด WHEN ์กฐ๊ฑด์ ˆ์—์„œ ์ง€์ •ํ•œ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ฒซ๋ฒˆ์งธ ํ…Œ์ด๋ธ”์— ์šฐ์„ ์ ์œผ๋กœ ์ž…๋ ฅ

- ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ ์ค‘์—์„œ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ฒซ๋ฒˆ์งธ WHEN์ ˆ์—์„œ ์ง€์ •ํ•œ ํ…Œ์ด๋ธ”์—๋งŒ ์ž…๋ ฅ, ๋‚˜๋จธ์ง€ WHEN์ ˆ ๋ฌด์‹œ

INSERT FRIST
WHEN ์กฐ๊ฑด์ ˆ1 THEN
INTO [ ํ…Œ์ด๋ธ”1 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
WHEN ์กฐ๊ฑด์ ˆ2 THEN
INTO [ ํ…Œ์ด๋ธ”2 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
[ ELSE
INTO [ ํ…Œ์ด๋ธ”3 ] VALUES [( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... )]
์„œ๋ธŒ์ฟผ๋ฆฌ;

- ์„œ๋ธŒ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ ์ง‘ํ•ฉ ์ค‘์—์„œ ์กฐ๊ฑด์ ˆ1๊ณผ ์กฐ๊ฑด์ ˆ2๋ฅผ ๋™์‹œ์— ๋งŒ์กฑํ•  ๊ฒฝ์šฐ์—๋„

  ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ WHEN ์ ˆ์— ์ง€์ •ํ•œ ํ…Œ์ด๋ธ”์—๋งŒ ์ž…๋ ฅ๋จ

 

 


 

 

๋ฐ์ดํ„ฐ ์ˆ˜์ • UPDATE

- ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ์ˆ˜์ •์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด

 

1) ๋‹จ์ผ ํ–‰ ์ˆ˜์ •

UPDATE ... SET

- ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์˜ ํ–‰์„ ์ˆ˜์ •

- WHERE ์ ˆ์˜ ๊ฒ€์ƒ‰ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ชจ๋“  ํ–‰์— ๋Œ€ํ•˜์—ฌ ์ง‘ํ•ฉ ๋‹จ์œ„๋กœ ์ˆ˜์ •

UPDATE ํ…Œ์ด๋ธ”
SET ์นผ๋Ÿผ=๊ฐ’ [ , ์นผ๋Ÿผ=๊ฐ’, ... ]
[ WHERE ์กฐ๊ฑด ];

- WHERE ์ ˆ ์ƒ๋žตํ•˜๋ฉด ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ํ–‰์„ ์ˆ˜์ •

 

2) ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์ด์šฉํ•œ ๋ฐ์ดํ„ฐ ์ˆ˜์ •

UPDATE ... SET ์นผ๋Ÿผ = ์„œ๋ธŒ์ฟผ๋ฆฌ

- ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ํ•œ๊บผ๋ฒˆ์— ์—ฌ๋Ÿฌ ์นผ๋Ÿผ ์ˆ˜์ •

- SET์ ˆ์˜ ์นผ๋Ÿผ ์ด๋ฆ„์€ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์นผ๋Ÿผ ์ด๋ฆ„๊ณผ ๋‹ฌ๋ผ๋„ ๋จ

- ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ์นผ๋Ÿผ ์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ์ผ์น˜

UPDATE ํ…Œ์ด๋ธ”1
SET ( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... ) = ( SELECT ์นผ๋Ÿผ_1, ์นผ๋Ÿผ_2, ... FROM ํ…Œ์ด๋ธ”2 [ WHERE ์กฐ๊ฑด2 ])
[ WEHRE ์กฐ๊ฑด1 ];

 


 

๋ฐ์ดํ„ฐ ์‚ญ์ œ DELETE

- ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ์‚ญ์ œ๋ฅผ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด

 

1) ๋‹จ์ผ ํ–‰ ์‚ญ์ œ

DELETE ...

- ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์˜ ํ–‰์„ ์‚ญ์ œ

- WHERE ์ ˆ์˜ ๊ฒ€์ƒ‰ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ๋ชจ๋“  ํ–‰์— ๋Œ€ํ•˜์—ฌ ์ง‘ํ•ฉ ๋‹จ์œ„๋กœ ์‚ญ์ œ

DELETE [ FROM ] ํ…Œ์ด๋ธ”
[ WHERE ์กฐ๊ฑด ];

- WHERE ์ ˆ ์ƒ๋žตํ•˜๋ฉด ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ํ–‰์„ ์ˆ˜์ •

 

2) ์„œ๋ธŒ์ฟผ๋ฆฌ๋ฅผ ์ด์šฉํ•œ ๋ฐ์ดํ„ฐ ์ˆ˜์ •

DELETE ... WHERE ์นผ๋Ÿผ = ์„œ๋ธŒ์ฟผ๋ฆฌ

- ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ํ•œ๊บผ๋ฒˆ์— ์—ฌ๋Ÿฌ ํ–‰์˜ ๋‚ด์šฉ ์‚ญ์ œ

- WHERE์ ˆ์˜ ์นผ๋Ÿผ ์ด๋ฆ„์€ ์„œ๋ธŒ์ฟผ๋ฆฌ์˜ ์นผ๋Ÿผ ์ด๋ฆ„๊ณผ ๋‹ฌ๋ผ๋„ ๋จ

- ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ์นผ๋Ÿผ ์ˆ˜๋Š” ์ผ์น˜

DELETE [ FROM ] ํ…Œ์ด๋ธ”
WHERE ( ์นผ๋Ÿผ1, ์นผ๋Ÿผ2, ... ) = ( SELECT ์นผ๋Ÿผ_1, ์นผ๋Ÿผ_2, ... FROM ํ…Œ์ด๋ธ”2 [ WHERE ์กฐ๊ฑด2 ]);

 

 

 


์ฐธ๊ณ ๋„์„œ : ์˜ค๋ผํด ์ค‘์‹ฌ์˜ SQL๋ฐฐ์›€ํ„ฐ, ์šฐ์šฉํƒœ ์™ธ ๊ณต์ €, ์ƒ๋Šฅ์ถœํŒ์‚ฌ, 2007๋…„

๋ฐ˜์‘ํ˜•

BELATED ARTICLES

more