
: Data Manipulation Language
- ๋ฐ์ดํฐ ์กฐํ ๋ฐ ๋ณํ์ ์ํ ๋ช ๋ น์ด
- select, update, insert, delete
- insert into ํ ์ด๋ธ๋ช values (๊ฐ1, ๊ฐ2, ...) ;
insert into ํ ์ด๋ธ๋ช (์ปฌ๋ผ1, ์ปฌ๋ผ2, ...)
values (๊ฐ1, ๊ฐ2,...);- update ํ ์ด๋ธ๋ช set ์ปฌ๋ผ1 = ๊ฐ1, ์ปฌ๋ผ2 = ๊ฐ2, ...
where ์กฐ๊ฑด;- delete (from) ํ ์ด๋ธ๋ช where ์กฐ๊ฑด;
๐ด์
---------- ํ
์ด๋ธ ์์ฑ ---------------
ํ
์ด๋ธ ์ด๋ฆ : sample
์ปฌ๋ผ : deptNo number(20),
deptName varchar2(15),
deptLoc varchar2(15),
depManger varchar2(10)
CREATE TABLE sample (
deptNo number(20),
deptName varchar2(15) ,
deptLoc varchar2(15),
depManger varchar2(10)
);
SELECT * FROM sample;
---------- insert ---------------
10, ๊ธฐํ์ค, ์์ธ, ํ๊ธธ๋
20, ์ ์ฐ์ค, ๋ถ์ฐ, ์ด์์
30, ์์
๋ถ, ๊ด์ฃผ, null
INSERT INTO SAMPLE s VALUES (10, '๊ธฐํ์ค', '์์ธ', 'ํ๊ธธ๋') ;
INSERT INTO SAMPLE s VALUES (20, '์ ์ฐ์ค', '๋ถ์ฐ', '์ด์์ ') ;
INSERT INTO SAMPLE s VALUES (30, '์์
๋ถ', '๊ด์ฃผ', null) ;
---------- update ---------------
๋ถ์๋ฒํธ๊ฐ 30๋ฒ ๋ถ์๋ฅผ 50๋ฒ์ผ๋ก ๋ณ๊ฒฝ
UPDATE SAMPLE SET DEPTNO = 50
WHERE DEPTNO = 30;
UPDATE SAMPLE SET DEPTLOC = '์ธ์ฒ'
WHERE DEPTNAME = '์์
๋ถ';
---------- delete ---------------
์์
๋ถ ์ญ์
DELETE FROM SAMPLE WHERE DEPTNAME = '์์
๋ถ';

๐ commit
- ๋ชจ๋ ์์ ์ ์ ์์ ์ผ๋ก ์ฒ๋ฆฌํ๊ฒ ๋ค๊ณ ํ์ ํ๋ ๋ช ๋ น์ด
- ํธ๋์ ์ ์ ์ฒ๋ฆฌ ๊ณผ์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ํ๊ธฐ ์ํด์, ๋ณ๊ฒฝ๋ ๋ด์ฉ์ ๋ชจ๋ ์๊ตฌ ์ ์ฅ
- Commit ์ํํ๋ฉด, ํ๋์ ํธ๋์ ์ ๊ณผ์ ์ ์ข ๋ฃ
- Transaction(Insert, Update, ...) ์์ ๋ด์ฉ์ ์ค์ DB์ ์ ์ฅ
- ์ด์ ๋ฐ์ดํฐ๊ฐ ์์ ํ ์ ์ฉ
- ๋ชจ๋ ์ฌ์ฉ์๊ฐ ๋ณ๊ฒฝํ ๋ฐ์ดํฐ์ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ ์ ์๋ค.
๐Rollback
- ์์ ์ค ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ ๋, ํธ๋์ญ์ ์ ์ฒ๋ฆฌ ๊ณผ์ ์์ ๋ฐ์ํ ๋ณ๊ฒฝ์ฌํญ์ ์ทจ์ํ๊ณ ,
ํธ๋์ญ์ ๊ณผ์ ์ ์ข ๋ฃ์ํจ๋ค.- ํธ๋์ญ์ ์ผ๋ก ์ธํ ํ๋์ ๋ฌถ์ ์ฒ๋ฆฌ๊ฐ ์์๋๊ธฐ ์ด์ ์ ์ํ๋ก ๋๋๋ฆฐ๋ค.
- Transaction(Insert, Update, Delete) ์์ ๋ด์ฉ์ ์ทจ์
- ์ด์ commit์ ํ ๊ณณ๊น์ง๋ง ๋ณต๊ตฌ
- ํธ๋์ญ์ ์์ ์ค ํ๋๋ผ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด ๋ชจ๋ ์์ ์ ์ทจ์ํด์ผ ํ๊ธฐ ๋๋ฌธ์
ํ๋์ ๋ ผ๋ฆฌ์ ์ธ ์์ ๋จ์๋ก ๊ตฌ์ฑํด ๋์์ผํ๋ค.- ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ฉด, ๋ ผ๋ฆฌ์ ์ธ ์์ ๋จ์๋ฅผ ๋ชจ๋ ์ทจ์ํด๋ฒ๋ฆฌ๋ฉด ๋๊ธฐ ๋๋ฌธ์ด๋ค.
๐์๋ commit ๋๋ ๊ฒฝ์ฐ
COMMIT;
SELECT * FROM SAMPLE s ;
DELETE sample;
ROLLBACK ;