alter table
๊ธฐ์กดํ
์ด๋ธ๋ช
rename to ์๋ก์ดํ
์ด๋ธ๋ช
; ์ฌ์ฉ์๊ฐ ๋ง๋ ํ ์ด๋ธ์์๋๋ฐ, ์ค๋ผํด์์ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํด์ฃผ๋ ๋ฐ์ดํฐ๋ฅผ ๋ด์ ํ ์ด๋ธ์ด ์กด์ฌํ๋ค. ๊ทธ ์ค User_constraint๊ฐ ์ ์ฅ๋ ๊ฒ์ด ์ ์ฝ์กฐ๊ฑด์ด ๋ด๊ธด ํ ์ด๋ธ์ด๋ค.
alter table (ํ
์ด๋ธ๋ช
)
add constratint ์ ์ฝ์กฐ๊ฑด๋ช
์ ์ฝ์กฐ๊ฑด(์ ์ฝ์กฐ๊ฑด ์ค์ ํ ์ปฌ๋ผ)-
-
์ปฌ๋ผ์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ๋ NULL์ด ํฌํจ๋์ง ๋ชปํ๋๋ก ์ง์
-
์์ ํ๋ฉด์ ํ๋๊ฑฐ ์๋๋ค. ์ปฌ๋ผ ๋ ๋ฒจ๋ก ์ค์ ํ๋ค.
-
-
alter table (ํ ์ด๋ธ๋ช ) add constratint ์ ์ฝ์กฐ๊ฑด๋ช unique(์ ์ฝ์กฐ๊ฑด ์ค์ ํ ์ปฌ๋ผ)
-
foreign key ์ ์ฝ ์กฐ๊ฑด : ๋ฐ์ดํฐ๋ฅผ ์๋ฌด๊ฑฐ๋ ์ ๋ ฅํ ์ ์๊ณ , ํ๋ผ์ด๋จธ๋ฆฌ ๊ฐ๊ณผ ์ฐ๊ด๋์ด์ผ ํ๋ค.
mydept๋ผ๋ ํ ์ด๋ธ ์์ฑ ํ row 2๊ฐ ๋ฃ๊ธฐ
alter table ํ
์ด๋ธ๋ช
add constraint ์ค์ ํ ํฌ๋ฆฐํค์ ์ฝ์กฐ๊ฑด์ด๋ฆ foreign key(FK์ ์ฝ์กฐ๊ฑด ์ ์ฉํ ์ปฌ๋ผ)
references ํ
์ด๋ธ๋ช
(FK์์์ฐธ์กฐํ ๊ธฐ๋ณธํค);[์ ์ฝ์กฐ๊ฑด์ ๋ง์ถฐ์ ๊ฐ์ ๋ฃ์ด๋ณด์!]
[๋ด๊ฐ parentํค์ ์๋ ๊ฐ์ ์ ๋ ฅํ์ ๋ ๋์ค๋ ์ค๋ฅ ๋ฌธ๊ตฌ (์ ์ฝ์กฐ๊ฑด ์๋ฐ) ]
- ๊ธฐ๋ณธํค-ํฌ๋ฆฐํค ์ ์ฝ์กฐ๊ฑด ๊ด๊ณ๊ฐ ์ค์ ๋ ํ ์ด๋ธ์ ๊ธฐ๋ณธํค ํ ์ด๋ธ(parent)์ ์ญ์ ํ ์ ์๋ค. ํฌ๋ฆฐํค๊ฐ ๋ถ ๋ ๋ฒ๋ฆฐ๋ค.
- ๋ฐ๋ผ์ ์ญ์ ํ๊ณ ์ถ์ผ๋ฉด, ํฌ๋ฆฐํค(child)๋ฅผ ๋จผ์ ์ญ์ ํ (์ฐธ์กฐํ๋ ํ ์ด๋ธ์ด ์๋ ์ํ๋ก ๋ง๋ค๊ณ ) or ์ ์ฝ์กฐ๊ฑด์ ์ ๊ฑฐ ํ ๊ธฐ๋ณธํค๋ฅผ ์ญ์ ํ ์ ์๋ค.
๊ธฐ๋ณธํค์ ์๋ ๊ฐ์ ์ธ ์ ์๋ค.
๊ธฐ๋ณธํค ํ ์ด๋ธ์ ๊ฐ์ ํฌ๋ฆฐํค์์ ์ฐธ์กฐํด์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ, ๊ธฐ๋ณธํค ํ ์ด๋ธ์ ์ญ์ ํ ์ ์๋ค. ํฌ๋ฆฐํค ํ ์ด๋ธ์ ๋จผ์ ์ ๊ฑฐํ๊ฑฐ๋, ์ ์ฝ์กฐ๊ฑด์ ์ญ์ ํ๊ณ ๊ธฐ๋ณธํค๋ฅผ ์ญ์ ํ ์ ์๋ค.
-
ex. ์ํ ์์คํ ์์ ์ฌ์ฉ์์๊ฒ 10๋ง๊น์ง๋ง ์ ๋ ฅ๋ฐ๊ธฐ๊ฐ ๊ฐ๋ฅ ๋ฑ
alter table member
add constraint ๋ง๋คcheck์ ์ฝ์กฐ๊ฑด๋ช
check(์ปฌ๋ผ๋ช
in (..,..,..))[ ์ ์ฝ์กฐ๊ฑด ์๋ฐ ]
[์ ์ฝ์กฐ๊ฑด ์ ๊ฑฐ]
์์ฐจ์ ์ธ ๊ฐ์ ์ธ ๋ ์ํ์ค ์ฌ์ฉ
create sequence ์ํ์ค๋ช
; (์ํ์ค๋ช
:ํ
์ด๋ธ๋ช
_seq ๋ณดํธ์ )์ฃผ๋ฌธ ์์ธ๋ด์ญ์ด ๋ค์ ๊ฐ์ด ์๋๋ผ, ์ ์ฅ๋ myorder ํ
์ด๋ธ์ ord_num์ด์ด์ผ ํ๊ธฐ ๋๋ฌธ์ nextval์ด ์๋๋ผ currentval๋ก ํด์ค๋ค.
- ํ ์ด๋ธ

























