
๐ 1. ๋ฐ์ดํฐ ์ ์ด์ด (Data Contol Language)
: ์ฌ์ฉ์์๊ฒ ๊ถํ ์์ฑ ํน์ ๊ถํ ์ญ์ ๊ฐ์ ๋ช
๋ น์ด
- grant : ๊ถํ ์์ฑ
- revoke : ๊ถํ ์ญ์
๐ ์ปฌ๋ผ ์์ฑ(๋ฌด๊ฒฐ์ฑ ์ ์ฝ์กฐ๊ฑด)
- not null : ๋๊ฐ์ด ์
๋ ฅ๋์ง ๋ชปํ๊ฒ ํ๋ ์กฐ๊ฑด
- unique : ์ค๋ณต๋ ๊ฐ์ด ์
๋ ฅ๋์ง ๋ชปํ๊ฒ ํ๋ ์กฐ๊ฑด
- check : ์ฃผ์ด์ง ๊ฐ๋ง ํ์ฉํ๋ ์กฐ๊ฑด
- primary key : not null + unique + index์ ์๋ฏธ
- foreign key : ๋ค๋ฅธ ํ
์ด๋ธ์ ํ๋(์ปฌ๋ผ)๋ฅผ ์ฐธ์กฐํด์ ๋ฌด๊ฒฐ์ฑ์ ๊ฒ์ฌํ๋ ์กฐ๊ฑด
ใ
๐2. ๊ธฐ๋ณธํค (primary key)
- PK
- ๊ธฐ๋ณธํค ์ญ์ ๊ธฐ๋ณธ์ ์ธ ์ ์ฝ์กฐ๊ฑด๋ค์ ํ
์ด๋ธ์ ์์ฑํ ๋ ๊ฐ์ด ์ ์
- ํ
์ด๋ธ๋น ํ๋๋ง ์ ์๊ฐ ๊ฐ๋ฅํ(๋๊ฐ ์ด์์ PK๋ ์กฐํฉํค/ ๋ณตํฉํค ๋ผ๊ณ ๋ถ๋ฆผ. ๋ฌถ์ด์ ํ๋๋ก ๋ด.)
- ์ฃผํค / ๊ธฐ๋ณธํค/ ์๋ณ์/ PK ๋ฑ์ผ๋ก ๋ถ๋ฆผ
- PK๋ NOT NULL + UNIQUE + Index
- ์๋ Index๊ฐ ์์ฑ๋๋๋ฐ ์ด๋ ๊ฒ์ ํค๋ก์ ๊ฒ์ ์๋๋ฅผ ํฅ์์ํจ๋ค.
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
ใ
๊ธฐ๋ณธํค ์ ์ธ ๋ฐฉ๋ฒ (3๊ฐ์ง)
create table pkTest(
pkCol1 varchar2(10) primary key
);
create table pkTest(
pkCol1 varchar2(10) constraints pk์ด๋ฆ primary key
);
create table pkTest(
pkCol1 varchar2(10) ,
pkCol2 varchar2(10) ,
pkCol3 varchar2(10) ,
constraints pk์ด๋ฆ primary key(pkCol1)
);
๐3. ์ฐธ์กฐํค (foreign key)
- ์ธ๋ถํค/ ์ธ๋ํค/ ์ฐธ์กฐํค/ ์ธ๋ถ ์๋ณ์/ FK ๋ฑ์ผ๋ก ๋ถ๋ฆผ
- FK๊ฐ ์ ์๋ ํ
์ด๋ธ = ์์ ํ
์ด๋ธ
- ์ฐธ์กฐ๋๋ ํ
์ด๋ธ ์ฆ, PK๊ฐ ์๋ ํ
์ด๋ธ์ ๋ถ๋ชจ ํ
์ด๋ธ์ด๋ผ๊ณ ํจ
- ๋ถ๋ชจ ํ
์ด๋ธ์ PK์ปฌ๋ผ์ ์กด์ฌํ๋ ๋ฐ์ดํฐ๋ง ์์ ํ
์ด๋ธ์ ์
๋ ฅํ ์ ์์
- ๋ถ๋ชจ ํ
์ด๋ธ์ ์์์ ๋ฐ์ดํฐ๋ ํ
์ด๋ธ์ด ์ญ์ ๋๋ค๊ณ ์ํฅ์ ๋ฐ์ง ์์
- ์ฐธ์กฐํ๋ ๋ฐ์ดํฐ ์ปฌ๋ผ๊ณผ ๋ฐ์ดํฐ ํ์
์ ๋ฐ๋์ ์ผ์น
- ์ฐธ์กฐํ ์ ์๋ ์ปฌ๋ผ์ ๊ธฐ๋ณธํค(PK)์ด๊ฑฐ๋ UNIQUE๋ง ๊ฐ๋ฅ
- ๋ณดํต PK๋ ์ฎ๋๋ค.
ใ
zzzzzzzzzzzzzzzzzzzzzzzz์ธ๋ํค ์ ์
1.
create table fk_test(
department_id varchar2(10)
constraints fk์ด๋ฆ references departments(department_id)
);
2.
reate table fk_test(
department_id varchar2(10) ,
... ,
constraints dept_fk foreign key(department_id)
reference departments(department_id)
);
๐4. ์ญ์ ์ต์
- ON DELETE CASCADE
-> ์ฐธ์กฐ๋๋ ๋ถ๋ชจ ํ
์ด๋ธ์ ํ์ ๋ํ delete๋ฅผ ํ์ฉํ๋ค.
ใ
์ฆ, ์ฐธ์กฐ๋๋ ๋ถ๋ชจ ํ
์ด๋ธ ๊ฐ์ด ์ญ์ ๋๋ฉด ์ฐ์์ ์ผ๋ก ์์ ํ
์ด๋ธ ๊ฐ ์ญ์ ์ญ์ ๋๋ค.
-> ๋ณดํต ๋ง์ด ์ฌ์ฉ
- ON DELETE SET NULL
-> ์ฐธ์กฐ๋๋ ๋ถ๋ชจ ํ
์ด๋ธ์ ํ์ ๋ํ delete๋ฅผ ํ์ฉํ๋ค.
ใ
z์ฆ, ๋ถ๋ชจ ํ
์ด๋ธ ๊ฐ์ด ์ญ์ ๊ฐ ๋๋ฉด ํด๋น ์ฐธ์กฐํ๋ ์์ ํ
์ด๋ธ์ ๊ฐ๋ค์ NULL๊ฐ์ผ๋ก ์ค์ ๋๋ค.