Skip to content

Latest commit

ย 

History

History
213 lines (81 loc) ยท 4.48 KB

[SQL]DDL.md

File metadata and controls

213 lines (81 loc) ยท 4.48 KB

DDL

ํ…Œ์ด๋ธ”๋ช… ๋ณ€๊ฒฝ

alter table
๊ธฐ์กดํ…Œ์ด๋ธ”๋ช… rename to ์ƒˆ๋กœ์šดํ…Œ์ด๋ธ”๋ช…; 

์ œ์•ฝ์กฐ๊ฑด

์‚ฌ์šฉ์ž๊ฐ€ ๋งŒ๋“  ํ…Œ์ด๋ธ”์€์•„๋‹Œ๋ฐ, ์˜ค๋ผํด์—์„œ ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณตํ•ด์ฃผ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด์„ ํ…Œ์ด๋ธ”์ด ์กด์žฌํ•œ๋‹ค. ๊ทธ ์ค‘ User_constraint๊ฐ€ ์ €์žฅ๋œ ๊ฒƒ์ด ์ œ์•ฝ์กฐ๊ฑด์ด ๋‹ด๊ธด ํ…Œ์ด๋ธ”์ด๋‹ค.

image-20191223094440097

image-20191223094828325

image-20191223094617606

image-20191223094627278

image-20191223094643117

image-20191223094701388

image-20191223094719263

image-20191223094733717

alter table (ํ…Œ์ด๋ธ”๋ช…)
add constratint ์ œ์•ฝ์กฐ๊ฑด๋ช… ์ œ์•ฝ์กฐ๊ฑด(์ œ์•ฝ์กฐ๊ฑด ์„ค์ •ํ•  ์ปฌ๋Ÿผ)

์ œ์•ฝ์กฐ๊ฑด ์ข…๋ฅ˜

  • not null : ๊ณต๋ฐฑ ๋ถˆ๊ฐ€

    • ์ปฌ๋Ÿผ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋  ๋•Œ NULL์ด ํฌํ•จ๋˜์ง€ ๋ชปํ•˜๋„๋ก ์ง€์ •

    • ์ˆ˜์ •ํ•˜๋ฉด์„œ ํ•˜๋Š”๊ฑฐ ์•ˆ๋œ๋‹ค. ์ปฌ๋Ÿผ ๋ ˆ๋ฒจ๋กœ ์„ค์ •ํ•œ๋‹ค.

      image-20191223094330075


  • unique : ์ค‘๋ณต ๋ถˆ๊ฐ€

    alter table (ํ…Œ์ด๋ธ”๋ช…)
    add constratint ์ œ์•ฝ์กฐ๊ฑด๋ช… unique(์ œ์•ฝ์กฐ๊ฑด ์„ค์ •ํ•  ์ปฌ๋Ÿผ)
    • ์ค‘๋ณต๋œ ๊ฐ’์ด ์ €์žฅ๋  ์ˆ˜ ์—†๋Š” ์ปฌ๋Ÿผ์ธ ๊ฒฝ์šฐ, unique์ œ์•ฝ์กฐ๊ฑด์„ ์ •์˜ํ•œ๋‹ค.

      image-20191223095326453

  • primary key ์ œ์•ฝ ์กฐ๊ฑด : not null ๊ณผ unique ์†์„ฑ์„ ๊ฐ–๊ณ  ์žˆ๋‹ค.

  • foreign key ์ œ์•ฝ ์กฐ๊ฑด : ๋ฐ์ดํ„ฐ๋ฅผ ์•„๋ฌด๊ฑฐ๋‚˜ ์ž…๋ ฅํ•  ์ˆ˜ ์—†๊ณ , ํ”„๋ผ์ด๋จธ๋ฆฌ ๊ฐ’๊ณผ ์—ฐ๊ด€๋˜์–ด์•ผ ํ•œ๋‹ค.

    mydept๋ผ๋Š” ํ…Œ์ด๋ธ” ์ƒ์„ฑ ํ›„ row 2๊ฐœ ๋„ฃ๊ธฐ

    image-20191223102933245

    image-20191223103006276

alter table ํ…Œ์ด๋ธ”๋ช…
add constraint ์„ค์ •ํ• ํฌ๋ฆฐํ‚ค์ œ์•ฝ์กฐ๊ฑด์ด๋ฆ„ foreign key(FK์ œ์•ฝ์กฐ๊ฑด ์ ์šฉํ•  ์ปฌ๋Ÿผ)
		references ํ…Œ์ด๋ธ”๋ช…(FK์—์„œ์ฐธ์กฐํ• ๊ธฐ๋ณธํ‚ค);

image-20191223101828084

image-20191223101844375

[์ œ์•ฝ์กฐ๊ฑด์— ๋งž์ถฐ์„œ ๊ฐ’์„ ๋„ฃ์–ด๋ณด์ž!]

image-20191223103044925

[๋‚ด๊ฐ€ parentํ‚ค์— ์—†๋Š” ๊ฐ’์„ ์ž…๋ ฅํ–ˆ์„ ๋•Œ ๋‚˜์˜ค๋Š” ์˜ค๋ฅ˜ ๋ฌธ๊ตฌ (์ œ์•ฝ์กฐ๊ฑด ์œ„๋ฐ˜) ]

image-20191223102103323

  • ๊ธฐ๋ณธํ‚ค-ํฌ๋ฆฐํ‚ค ์ œ์•ฝ์กฐ๊ฑด ๊ด€๊ณ„๊ฐ€ ์„ค์ •๋œ ํ…Œ์ด๋ธ”์— ๊ธฐ๋ณธํ‚ค ํ…Œ์ด๋ธ”(parent)์„ ์‚ญ์ œํ•  ์ˆ˜ ์—†๋‹ค. ํฌ๋ฆฐํ‚ค๊ฐ€ ๋ถ• ๋– ๋ฒ„๋ฆฐ๋‹ค.

image-20191223103244229

  • ๋”ฐ๋ผ์„œ ์‚ญ์ œํ•˜๊ณ  ์‹ถ์œผ๋ฉด, ํฌ๋ฆฐํ‚ค(child)๋ฅผ ๋จผ์ € ์‚ญ์ œํ›„ (์ฐธ์กฐํ•˜๋Š” ํ…Œ์ด๋ธ”์ด ์—†๋Š” ์ƒํƒœ๋กœ ๋งŒ๋“ค๊ณ ) or ์ œ์•ฝ์กฐ๊ฑด์„ ์ œ๊ฑฐ ํ›„ ๊ธฐ๋ณธํ‚ค๋ฅผ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ธฐ๋ณธํ‚ค์— ์—†๋Š” ๊ฐ’์„ ์“ธ ์ˆ˜ ์—†๋‹ค.

๊ธฐ๋ณธํ‚ค ํ…Œ์ด๋ธ”์˜ ๊ฐ’์„ ํฌ๋ฆฐํ‚ค์—์„œ ์ฐธ์กฐํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ๊ธฐ๋ณธํ‚ค ํ…Œ์ด๋ธ”์„ ์‚ญ์ œํ•  ์ˆ˜ ์—†๋‹ค. ํฌ๋ฆฐํ‚ค ํ…Œ์ด๋ธ”์„ ๋จผ์ € ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜, ์ œ์•ฝ์กฐ๊ฑด์„ ์‚ญ์ œํ•˜๊ณ  ๊ธฐ๋ณธํ‚ค๋ฅผ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.


  • check : ์ปฌ๋Ÿผ์— ์ž…๋ ฅ๋˜๋Š” ๊ฐ’์— ๋Œ€ํ•ด ์ œํ•œ์„ ๋‘”๋‹ค.

    ex. ์€ํ–‰ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉ์ž์—๊ฒŒ 10๋งŒ๊นŒ์ง€๋งŒ ์ž…๋ ฅ๋ฐ›๊ธฐ๊ฐ€ ๊ฐ€๋Šฅ ๋“ฑ

alter table member
add constraint ๋งŒ๋“คcheck์ œ์•ฝ์กฐ๊ฑด๋ช… check(์ปฌ๋Ÿผ๋ช… in (..,..,..))

image-20191223104059580

image-20191223104110963

[ ์ œ์•ฝ์กฐ๊ฑด ์œ„๋ฐ˜ ]

image-20191223104119761

[์ œ์•ฝ์กฐ๊ฑด ์ œ๊ฑฐ]

image-20191223104200026


์‹œํ€€์Šค

์ˆœ์ฐจ์ ์ธ ๊ฐ’์„ ์“ธ ๋•Œ ์‹œํ€€์Šค ์‚ฌ์šฉ

image-20191223105632054

create sequence ์‹œํ€€์Šค๋ช…; (์‹œํ€€์Šค๋ช…:ํ…Œ์ด๋ธ”๋ช…_seq ๋ณดํŽธ์ )

image-20191223105650987

์ฃผ๋ฌธ ์ƒ์„ธ๋‚ด์—ญ์ด ๋‹ค์Œ ๊ฐ’์ด ์•„๋‹ˆ๋ผ, ์ €์žฅ๋œ myorder ํ…Œ์ด๋ธ”์˜ ord_num์ด์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— nextval์ด ์•„๋‹ˆ๋ผ currentval๋กœ ํ•ด์ค€๋‹ค.

image-20191223110929702

image-20191223110944752

image-20191223111325976

  • ํ…Œ์ด๋ธ”