SQL Tuple CRUD
[Database] SQL์ SQL์ ์ฌ์ฉํด์ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐ, ์์ , ์ญ์ ํ๊ธฐ
๋ฐ์ดํฐ ์ถ๊ฐํ๊ธฐ (insert)
๋ฌธ๋ฒ
ํ ์ด๋ธ์ด ์ด๋ค attribute๋ค๋ก ์ด๋ค constraint๊ฐ ์ค์ ๋์ด์๋์ง ํ์ธํ๊ณ , ๊ทธ์ ๋ง์ถฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ด์ค ์ ์์
value๋ฅผ ๋ฃ์ ๋, table์ ๋ง๋ค ๋ attribute๋ฅผ ์ ์ํ๋ ์์๋๋ก ๋ฃ์ด์ผ ํจ
๋ชจ๋ attribute์ ๋์ํ๋ ๊ฐ์ ๋ฃ์ด์ค์ผ ํจ
constraint์ ๋ง์ง ์๊ฑฐ๋, value๊ฐ ์ค์ ๋์ง ์์ผ๋ฉด ์๋ฌ๊ฐ ๋ฐ์ํจ (์๋ฌ ๋ฉ์์ง๋ฅผ ํ์ธํ๊ณ ๋ค์ ์ฒ๋ฆฌํด์ฃผ๋ฉด ๋จ)
INSERT INTO <ํ ์ด๋ธ๋ช > VALUES (attribute ๋ชฉ๋ก์ ๋์๋๋ ๊ฐ๋ค);INSERT INTO employee VALUES (1, 'MESSI', '1987-02-01', 'M', 'DEV_BACK', 1000000000, null);
attribute๋ฅผ ์ง์ ํ insert
์ํ๋ attribute์ ๋ํด์๋ง, ์ํ๋ ์์๋ก ๋ฃ์ด์ค ์ ์์
INSERT INTO <ํ ์ด๋ธ๋ช > (attribute ๋ชฉ๋ก) VALUES (attribute ๋ชฉ๋ก์ ๋์๋๋ ๊ฐ๋ค);INSERT INTO employee (name, birth_date, sex, position, id) VALUES ('JENNY', '2000-10-12', 'F', 'DEV_BACK', 3);attribute๋ฅผ ์ง์ ํ์ง ์์ผ๋ฉด ์ ์ฒด attribute๋ฅผ table ์์ฑ ๋ ์ง์ ํ ์์๋๋ก ๋ฃ์ด์ผ ํจ
์ฌ๋ฌ๊ฐ์ ํํ(row)์ ๋ฃ๊ณ ์ถ์ ๋
VALUES ๋ค์ ๊ดํธ()๋ฅผ ์ฝค๋ง, ๋ก ๊ตฌ๋ถํด์ ์ฌ๋ฌ๊ฐ ์ค์ ํจ. ๋ง์ง๋ง () ๋ค์ ์ฝค๋ง๊ฐ ์๋๋ผ ; ๋ก ๋ง์นจ
INSERT INTO <ํ ์ด๋ธ๋ช > (attribute ๋ชฉ๋ก) VALUES (๊ฐ๋ค1),(๊ฐ๋ค2),..., (๊ฐ๋คn);
ํ
์ด๋ธ์์ ๋ฐ์ดํฐ ์กฐํํ๊ธฐ (select)
๋ฌธ๋ฒ
SELECT <์กฐํํ attribute> FROM <ํ ์ด๋ธ ๋ช >์กฐํํ attribute
*์ ์ฐ๋ฉด ํ๋ฉด ์ ์ฒด๊ฐ ์ง์ ๋จ
attribute1, attribute2, attribute3, ... ์ด๋ฐ์์ผ๋ก ์ฌ๋ฌ๊ฐ ์ง์ ํด์ค ์ ์์
์์ ์๊ด ์์
๋ฐ์ด๋ธ์์ ๋ฐ์ดํฐ ์์ ํ๊ธฐ (update)
๋ฌธ๋ฒ
UPDATE <ํ ์ด๋ธ๋ช > SET <์์ ํ attribute> = <์๋ก์ด ๊ฐ> [WHERE <๋ฐ๊ฟ ๋์์ด ๋๋ row์ ์กฐ๊ฑด>]UPDATE table_name(s) SET attribute = value [, attribute = value, ...] [WHERE condition(s)];WHERE๊ฐ ์๋ค๋ฉด ํ ์ด๋ธ์ ์ ์ฒด row๋ฅผ ๋์์ผ๋ก updateํจ
-> id๊ฐ 1์ธ row์ dept_id๋ฅผ 1003์ผ๋ก ๋ฐ๊พผ๋ค.
์๋ก์ด ๊ฐ์ ๋ํด ์ฐ์ฐ ๊ฐ๋ฅ
์) ํน์ ์กฐ๊ฑด์ ์ฌ๋๋ค์ ์ฐ๋ด์ 2๋ฐฐ ์ธ์
๋๊ฐ์ ํ
์ด๋ธ์ ์ฐธ์กฐํ ์กฐ๊ฑด์
2003๋ฒ ํ๋ก์ ํธ์ ์ฐธ์ฌ์ค์ธ ์ง์๋ค์ ์ฐ๋ด์ 2๋ฐฐ ์ธ์
employee.id์์ .๊ณผ ๊ทธ ์์ ํ ์ด๋ธ์ ์ง์์ค๋ ๋จ. ๋จ, attribute ์ด๋ฆ์ด ๊ฒน์น๋ฉด ์๋จํ ์ด๋ธ ์ด๋ฆ ์จ์ฃผ๋๊ฒ ๋ ์ง๊ด์ ์ด๋ ์จ์ฃผ๋๊ฒ ์ข์๋ฏ

๋ฐ์ดํฐ ์ญ์ ํ๊ธฐ (delete)
๋ฌธ๋ฒ
DELETE FROM table_name WHERE condition(s)์
John์ด ํด์ฌํด์ ํ ์ด๋ธ ๋ด์ฉ์ ์ญ์ ํด์ผ ํจ
John์ employee ID๋ 8์ด๊ณ , project 2001์ ์ฐธ์ฌํ๊ณ ์์
project table์ FK์ ๋ํด delete๋ ๋ CASCADE๋ก ์ค์ ๋ผ์์ด์, John์ด ํด๋น๋ row๋ ๋ค ์ญ์ ๋จ
WHERE ์ ์ด ์๋ค๋ฉด
๋ชจ๋ ํํ(row)์ด ๋ค ์ญ์ ๋จ
ํ ์ด๋ธ์ ๋จ์ ์์
์กฐ๊ฑด์ WHERE
๋ฌธ๋ฒ
๋ฑํธ, ๋ถ๋ฑํธ๋ฅผ ์ฌ์ฉํ ์ ์์
and์ or๋ ์กฐ๊ฑด ์ฌ์ด์ and, or ๋ก ์จ์ค
!= ๋ <> ๋ ๋์ผํ ์๋ฏธ
์)
DELETE FROME works_on WHERE impl_id = 5 and proj_id = 2002;
์ฐธ๊ณ
Last updated