๐Ÿ’ผ ์ž๊ฒฉ์ฆ/SQLD

[SQLD] ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์˜ ์ดํ•ด : ๋ชจ๋ธ๋ง, ์—”ํ„ฐํ‹ฐ, ์†์„ฑ, ๊ด€๊ณ„, ์‹๋ณ„์ž, IEํ‘œ๊ธฐ๋ฒ• vs Barkerํ‘œ๊ธฐ๋ฒ•

์—ฐ_์šฐ๋ฆฌ 2021. 11. 4. 00:09
๋ฐ˜์‘ํ˜•

https://lotuus.tistory.com/42

 

[SQLD] 21.11.20 ์ œ43ํšŒ SQL๊ฐœ๋ฐœ์ž ํ›„๊ธฐ, ๊ณต๋ถ€๋ฐฉ๋ฒ•, ์ •๋ฆฌ๋ณธ, 43ํšŒ ์ถœ์ œ๋ฌธ์ œ

2021๋…„ 11์›” 20์ผ ํ† ์š”์ผ ์ œ43ํšŒ SQL๊ฐœ๋ฐœ์ž ์ž๊ฒฉ์ฆ ์‹œํ—˜ ํ›„๊ธฐ ์˜ค๋Š˜ ๋ณด๊ณ ์™”๋‹ค! ๋‚ด ๊ณต๋ถ€๋ฐฉ๋ฒ•๊ณผ ์ •๋ฆฌ๋ณธ, ์ด๋ฒˆ์— ์‹œํ—˜์— ์ถœ์ œ๋œ ๋ฌธ์ œ๋“ค์„ ๊ธฐ์–ต๋‚˜๋Š”๋Œ€๋กœ ์ ์–ด๋ณด๊ฒ ๋‹ค ๊ฐœ์ธ์ ์œผ๋กœ ๊ธฐ์ถœ์ด๋‚˜ ๋ณต์›๋œ ๋ฌธ์ œ๊ฐ€

lotuus.tistory.com

 

[๋ชฉ์ฐจ]

๐Ÿ’š๋ชจ๋ธ๋ง

๐Ÿ’š์—”ํ„ฐํ‹ฐ Entity
๐Ÿ’š์†์„ฑ Attribute
๐Ÿ’š๊ด€๊ณ„ Relationship
๐Ÿ’š์‹๋ณ„์ž Identifiers
๐Ÿ’šERD IE ํ‘œ๊ธฐ๋ฒ•  vs Barker ํ‘œ๊ธฐ๋ฒ• 

 

๋”๋ณด๊ธฐ

๐Ÿ’š๋ชจ๋ธ๋ง

  ๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง

  ๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง์˜ ๊ณ ๋ ค์‚ฌํ•ญ
  ๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง์˜ ์œ ์˜์ 
  ๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง์˜ 3๋‹จ๊ณ„์ง„ํ–‰
  ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ
  Mapping ์‚ฌ์ƒ, ์—ฐ๊ฒฐ
  ๋ฐ์ดํ„ฐ๋ชจ๋ธํ‘œ๊ธฐ๋ฒ• ERD Entity Relationship Model
  ์ข‹์€ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ์š”์†Œ
๐Ÿ’š์—”ํ„ฐํ‹ฐ Entity
  ์—”ํ„ฐํ‹ฐ์™€ ์ธ์Šคํ„ด์Šค
  ์—”ํ„ฐํ‹ฐ์˜ ํŠน์ง•
  ์—”ํ„ฐํ‹ฐ์˜ ๋ถ„๋ฅ˜
  ์—”ํ„ฐํ‹ฐ์˜ ๋ช…๋ช…
๐Ÿ’š์†์„ฑ Attribute
  ์†์„ฑ์˜ ํŠน์ง•
  ์†์„ฑ์˜๋ถ„๋ฅ˜
  ๋„๋ฉ”์ธ
  ์†์„ฑ์˜ ๋ช…๋ช…
๐Ÿ’š๊ด€๊ณ„ Relationship
  ๊ด€๊ณ„ ํŽ˜์–ด๋ง
  ๊ด€๊ณ„์˜ ๋ถ„๋ฅ˜
  ๊ด€๊ณ„์˜ ํ‘œ๊ธฐ๋ฒ•
  ๊ด€๊ณ„ ์ •์˜ ์‹œ ์ฒดํฌ์‚ฌํ•ญ
๐Ÿ’š์‹๋ณ„์ž Identifiers
  ์ฃผ์‹๋ณ„์ž์˜ ํŠน์ง•
  ์‹๋ณ„์ž ๋ถ„๋ฅ˜
  ์ฃผ์‹๋ณ„์ž ๋„์ถœ๊ธฐ์ค€
  ์‹๋ณ„์ž/๋น„์‹๋ณ„์ž ๊ด€๊ณ„
๐Ÿ’šERD IE ํ‘œ๊ธฐ๋ฒ•  vs Barker ํ‘œ๊ธฐ๋ฒ• 

 

 

๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ์ดํ•ด

๐Ÿ’š๋ชจ๋ธ๋ง

ํ˜„์‹ค์„ธ๊ณ„๋ฅผ ์ถ”์ƒํ™”, ๋‹จ์ˆœํ™”( ๋ชฉ์ ์— ๋งž๊ฒŒ ๊ด€์‹ฌ์žˆ๋Š” ํŠน์„ฑ๋งŒ ์ถ”์ถœ )ํ•˜์—ฌ ํ‘œํ˜„ํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค.

EX. ๊ฐ™์€ ์‚ฌ๋žŒ์— ๋Œ€ํ•œ ๋‚ด์šฉ์ด์—ฌ๋„, ๋ณ‘์›์— ์žˆ๋Š” ์‚ฌ๋žŒ(ํ™˜์ž)์— ๋Œ€ํ•œ ๋‚ด์šฉ๊ณผ

์€ํ–‰์— ์žˆ๋Š” ์‚ฌ๋žŒ(๊ณ ๊ฐ)์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ์™„์ „ํžˆ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ ์ ‘๊ทผํ•ด์•ผํ•œ๋‹ค.

 

๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง

๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง์€ ์—…๋ฌด์ •๋ณด๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ์ดˆ์ •๋ณด๋ฅผ ์•ฝ์†๋œ ํ‘œ๊ธฐ๋ฒ•์— ์˜ํ•ด ํ‘œํ˜„ํ•จ์œผ๋กœ์จ ์—…๋ฌด๋‚ด์šฉ์„ ์ •ํ™•ํ•˜๊ฒŒ ๋ถ„์„ํ•˜๊ณ ,

๋ถ„์„๋œ ๋ชจ๋ธ๋กœ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ ๋ฐ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ์— ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜ํ–‰ํ•œ๋‹ค.

 

์• ๋งค๋ชจํ˜ธํ•จ์„ ๋ฐฐ์ œํ•˜๊ณ  ๋ˆ„๊ตฌ๋‚˜ ์ดํ•ด๊ฐ€ ๊ฐ€๋Šฅํ•˜๋„๋ก ์ •ํ™•ํ•˜๊ฒŒ ํ˜„์ƒ์„ ๊ธฐ์ˆ ํ•˜๋Š” ์ •ํ™•ํ™”์˜ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง„๋‹ค. (O)

์‹œ์Šคํ…œ ๊ตฌํ˜„๋งŒ์„ ์œ„ํ•ด ์ง„ํ–‰ํ•˜๋Š” ์‚ฌ์ „๋‹จ๊ณ„์˜ ์ž‘์—…์œผ๋กœ์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์ถ•์„ ์œ„ํ•œ ์‚ฌ์ „์ž‘์—…์˜ ์˜๋ฏธ๊ฐ€ ์žˆ์Œ (X)

-> ์‹œ์Šคํ…œ ๊ตฌํ˜„์„ ํฌํ•จํ•œ ์—…๋ฌด๋ถ„์„ ๋ฐ ์—…๋ฌดํ˜•์ƒํ™” ๋ชฉ์ ๋„ ์žˆ์Œ

 

๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง์˜ ๊ณ ๋ ค์‚ฌํ•ญ

 - ์ž˜๋ชป๋œ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์„ ์‹œ์Šคํ…œ ์™„์„ฑ ํ›„ ๋ณ€๊ฒฝํ•˜๊ณ ์ž ํ•˜๋ฉด ํŒŒ๊ธ‰ํšจ๊ณผ๊ฐ€ ํฌ๋‹ค. ๋…๋ฆฝ์„ฑ์ด ํ™•๋ณด๋˜์–ด์•ผ ๋Šฅ๋™ ๋Œ€์‘์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

 - ๋ณต์žกํ•œ ์ •๋ณด๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ‘œํ˜„ํ•ด์•ผํ•œ๋‹ค.

 - ๋ฐ์ดํ„ฐ ํ‘œ์ค€์„ ์ •์˜ํ•˜์—ฌ ๋ฐ์ดํ„ฐ์˜ ํ’ˆ์งˆ์„ ๋†’์—ฌ์•ผํ•œ๋‹ค.

 

๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง์˜ ์œ ์˜์ 

์ค‘๋ณต ์—ฌ๋Ÿฌ ์žฅ์†Œ์— ๊ฐ™์€ ์ •๋ณด๊ฐ€ ์ €์žฅ๋˜์ง€ ์•Š๋„๋ก ํ•ด์•ผํ•œ๋‹ค.
๋น„์œ ์—ฐ์„ฑ ์‚ฌ์†Œํ•œ ์—…๋ฌด๋ณ€ํ™”์— ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์ด ์ˆ˜์‹œ๋กœ ๋ณ€๊ฒฝ๋˜๋ฉด ์•ˆ๋œ๋‹ค.
=> ๋ฐ์ดํ„ฐ ์ •์˜๋ฅผ ๋ฐ์ดํ„ฐ ์‚ฌ์šฉ ํ”„๋กœ์„ธ์Šค์™€ ๋ถ„๋ฆฌํ•จ์œผ๋กœ์จ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.
๋น„์ผ๊ด€์„ฑ ๋ฐ์ดํ„ฐ๋Š” ๋ชจ์ˆœ๋˜์ง€์•Š๊ณ  ์ผ๊ด€์„ฑ์žˆ์–ด์•ผํ•œ๋‹ค.

 

๋ฐ์ดํ„ฐ๋ชจ๋ธ๋ง์˜ 3๋‹จ๊ณ„์ง„ํ–‰

๊ฐœ๋…์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง(Conceptual Data Modeling) ์ถ”์ƒํ™”์ •๋„ ๋†’์Œ / ๊ตฌ์ฒดํ™”์ •๋„ ๋‚ฎ์Œ

์‚ฌ์šฉ์ž์™€ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ์ž์˜ ์š”๊ตฌ์‚ฌํ•ญ์„ ์‚ฌ๋žŒ์ด ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์ด๋‹ค.
๊ฐœ์ฒด, ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•˜์—ฌ ERD๋กœ ์ •์˜ํ•œ๋‹ค.

 

๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง(Logical Data Modeling) ์ถ”์ƒํ™”์ •๋„ ์ค‘๊ฐ„ / ๊ตฌ์ฒดํ™”์ •๋„ ์ค‘๊ฐ„

์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋…ผ๋ฆฌ์ ๊ตฌ์กฐ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์ด๋‹ค. 
ERD๋ฅผ ํŠน์ • DBMS์— ๋งž๊ฒŒ ์‚ฌ์ƒํ•œ๋‹ค.

 

๋ฌผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง(Physical Data Modeling) ์ถ”์ƒํ™”์ •๋„ ๋‚ฎ์Œ / ๊ตฌ์ฒดํ™”์ •๋„ ๋†’์Œ

๋…ผ๋ฆฌ์  ๊ตฌ์กฐ๋ฅผ ์ €์žฅ์žฅ์น˜๊ฐ€ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌผ๋ฆฌ์  ๊ตฌ์กฐ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์ด๋‹ค.

create table Order(
	orderID number(2) primary key,
    customerID number(2) references Customer(customerID),
    productID number(2) references Product(productID),
    orderdate DATE
);

 

๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ

์œ ์ง€๋ณด์ˆ˜ ๋น„์šฉ ์ฆ๊ฐ€, ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ฑ ์ฆ๊ฐ€, ๋ฐ์ดํ„ฐ ๋ณต์žก๋„ ์ฆ๊ฐ€, ์š”๊ตฌ์‚ฌํ•ญ ๋Œ€์‘ ์ €ํ•˜ 

์ด๋Ÿฌํ•œ ์ด์œ ๋“ค๋กœ ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ์ด ํ•„์š”ํ•˜๊ฒŒ๋˜์—ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋…๋ฆฝ์„ฑ์€ ANSI/SPARC์˜ 3๋‹จ๊ณ„ ๊ตฌ์กฐ๋กœ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.

 ์™ธ๋ถ€์Šคํ‚ค๋งˆ  ๊ฐœ์ธ์ด ๋ณด๋Š” DB์Šคํ‚ค๋งˆ. ์ถ”์ƒํ™”์ •๋„ ๋†’์Œ
 ๋…ผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ  ๊ฐœ๋…์Šคํ‚ค๋งˆ๊ฐ€ ๋ณ€๊ฒฝ๋˜์–ด๋„ ์™ธ๋ถ€์Šคํ‚ค๋งˆ์— ์˜ํ–ฅ ์—†๋Š” ๊ฒƒ.
(์ƒˆ ์นผ๋Ÿผ์ด ์ถ”๊ฐ€๋˜์–ด๋„ ํ”„๋กœ๊ทธ๋žจ์— ์˜ํ–ฅ ์—†์Œ)
 ๊ฐœ๋…์Šคํ‚ค๋งˆ  ๋ชจ๋“  ์‚ฌ์šฉ์ž. ์ „์ฒด๊ฐ€ ๋ณด๋Š” DB์Šคํ‚ค๋งˆ. 
 ๋ฌผ๋ฆฌ์  ๋ฐ์ดํ„ฐ ๋…๋ฆฝ์„ฑ  ๋‚ด๋ถ€์Šคํ‚ค๋งˆ๊ฐ€ ๋ณ€๊ฒฝ๋˜์–ด๋„ ๊ฐœ๋…/์™ธ๋ถ€ ์Šคํ‚ค๋งˆ์— ์˜ํ–ฅ ์—†๋Š” ๊ฒƒ.
(์ €์žฅ์žฅ์น˜๊ฐ€ ๋ณ€๊ฒฝ๋˜์–ด๋„ ํ”„๋กœ๊ทธ๋žจ์— ์˜ํ–ฅ ์—†์Œ)
 ๋‚ด๋ถ€์Šคํ‚ค๋งˆ ๋ฌผ๋ฆฌ์žฅ์น˜๊ฐ€ ๋ฐ์ดํ„ฐ ์ €์žฅ๋ฐฉ๋ฒ•์„ ํ‘œํ˜„ํ•˜๋Š” ์Šคํ‚ค๋งˆ. ์ถ”์ƒํ™”์ •๋„ ๋‚ฎ์Œ

 

Mapping ์‚ฌ์ƒ, ์—ฐ๊ฒฐ

๋…ผ๋ฆฌ์  ์‚ฌ์ƒ (์™ธ๋ถ€ - ๊ฐœ๋…์Šคํ‚ค๋งˆ) ์™ธ๋ถ€ํ™”๋ฉด์— ๋ณด์—ฌ์ง€๋Š” ์™ธ๋ถ€์Šคํ‚ค๋งˆ์™€ ์ „์ฒด์— ๋ณด์—ฌ์ง€๋Š” ๊ฐœ๋…์Šคํ‚ค๋งˆ๊ฐ€ ์—ฐ๊ฒฐ๋œ๋‹ค.
๋ฌผ๋ฆฌ์  ์‚ฌ์ƒ (๊ฐœ๋… - ๋‚ด๋ถ€์Šคํ‚ค๋งˆ) ์ „์ฒด์— ๋ณด์—ฌ์ง€๋Š” ๊ฐœ๋…์Šคํ‚ค๋งˆ์™€ ์ €์žฅ์žฅ์น˜ ๊ด€์ ์˜ ๋‚ด๋ถ€์Šคํ‚ค๋งˆ๊ฐ€ ์—ฐ๊ฒฐ๋œ๋‹ค.

 

๋ฐ์ดํ„ฐ๋ชจ๋ธํ‘œ๊ธฐ๋ฒ• ERD Entity Relationship Model

ERD๋Š” ์—”ํ„ฐํ‹ฐ์™€ ์—”ํ„ฐํ‹ฐ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์‰ฝ๊ฒŒ ๋„์‹ํ™”๋œ ๋‹ค์ด์–ด๊ทธ๋žจ์œผ๋กœ ํ‘œ์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

 

ERD ์ž‘์—…์ˆœ์„œ

1. ์—”ํ„ฐํ‹ฐ ๊ทธ๋ฆฌ๊ธฐ

2. ์—”ํ„ฐํ‹ฐ ์ ์ ˆํžˆ ๋ฐฐ์น˜

์ค‘์š”ํ•œ ์ˆœ์„œ๋Œ€๋กœ ์™ผ์ชฝ์ƒ๋‹จ - ์˜ค๋ฅธ์ชฝ์ƒ๋‹จ - ์™ผ์ชฝํ•˜๋‹จ - ์˜ค๋ฅธ์ชฝํ•˜๋‹จ ์ˆœ์„œ๋กœ ๋ฐฐ์น˜ํ•œ๋‹ค.
์—…๋ฌดํ๋ฆ„์ƒ ํƒ€ ์—”ํ„ฐํ‹ฐ์™€ ๋งŽ์€ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง„ ์ค‘์‹ฌ์—”ํ„ฐํ‹ฐ๋ฅผ ์ค‘์•™์— ๋ฐฐ์น˜ํ•œ๋‹ค.

3. ์—”ํ„ฐํ‹ฐ๊ฐ„ ๊ด€๊ณ„ ์„ค์ •

4. ๊ด€๊ณ„๋ช… ๊ธฐ์ˆ 

๊ด€๊ณ„๋ช…์€ ํ˜„์žฌํ˜•์„ ์‚ฌ์šฉํ•˜๊ณ  ์ง€๋‚˜์น˜๊ฒŒ ํฌ๊ด„์ ์ธ ์šฉ์–ด๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ํ•œ๋‹ค.

5. ๊ด€๊ณ„์˜ ๊ด€๊ณ„์ฐจ์ˆ˜(์ฐธ์—ฌ๋„) ๊ธฐ์ˆ 

6. ๊ด€๊ณ„์˜ ํ•„์ˆ˜์—ฌ๋ถ€ ๊ธฐ์ˆ 

 

์ข‹์€ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ์š”์†Œ

์™„์ „์„ฑ ์—…๋ฌด์—์„œ ํ•„์š”๋กœํ•˜๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ์ •์˜๋˜์–ด์žˆ์–ด์•ผ ํ•œ๋‹ค.
์ค‘๋ณต๋ฐฐ์ œ ๋™์ผํ•œ ์‚ฌ์‹ค์€ ๋ฐ˜๋“œ์‹œ ํ•œ๋ฒˆ๋งŒ ์ €์žฅ๋˜์–ด์•ผํ•œ๋‹ค. 
์—…๋ฌด๊ทœ์น™ ์—…๋ฌด๊ทœ์น™์ด ๋ฐ์ดํ„ฐ๋ชจ๋ธ์— ํ‘œํ˜„๋˜์–ด์žˆ์–ด์•ผ ํ•œ๋‹ค. 
๋ฐ์ดํ„ฐ์žฌ์‚ฌ์šฉ ๋ฐ์ดํ„ฐ๊ฐ€ ์žฌ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋„๋ก ์„ค๊ณ„๋˜์–ด์•ผ ํ•œ๋‹ค.
์˜์‚ฌ์†Œํ†ต ์—”ํ„ฐํ‹ฐ, ๊ด€๊ณ„, ์—…๋ฌด๊ทœ์น™ ๋“ฑ์ด ์ •๋ณด์‹œ์Šคํ…œ์— ํ‘œํ˜„๋จ์œผ๋กœ์จ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์ด ์˜์‚ฌ์†Œํ†ต์˜ ๋„๊ตฌ๋กœ์„œ ์‚ฌ์šฉ๋œ๋‹ค.
ํ†ตํ•ฉ์„ฑ ๊ณต์œ ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ ์—…๋ฌด์˜์—ญ์—์„œ ๊ณต๋™์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ •์˜๋˜์–ด์•ผ ํ•œ๋‹ค.

 

 

๐Ÿ’š์—”ํ„ฐํ‹ฐ Entity

์—”ํ„ฐํ‹ฐ๋Š” ์‚ฌ๋žŒ, ๊ฐœ๋… ๋“ฑ ๋ช…์‚ฌ์— ํ•ด๋‹นํ•˜๋ฉฐ, ์—…๋ฌด์ƒ ๊ด€๋ฆฌ๊ฐ€ ํ•„์š”ํ•œ ๊ด€์‹ฌ์‚ฌ์— ํ•ด๋‹นํ•œ๋‹ค.  ์ €์žฅ์ด ๋˜๊ธฐ ์œ„ํ•œ ์–ด๋–ค ๊ฒƒ(Thing) ์ด๋‹ค.  

 

์—”ํ„ฐํ‹ฐ์™€ ์ธ์Šคํ„ด์Šค

์ธ์Šคํ„ด์Šค๋Š” ์‹ค์ œ ๊ฐ์ฒด(ํ™๊ธธ๋™, ์ด์ˆœ์‹ )์ด๊ณ , ์—”ํ„ฐํ‹ฐ๋Š” ๋ฒ”์ฃผ(์‚ฌ๋žŒ)์— ํ•ด๋‹น๋˜๋Š” ๊ฒƒ์ด๋‹ค.

์—”ํ„ฐํ‹ฐ๋Š” ์ธ์Šคํ„ด์Šค์˜ ์ง‘ํ•ฉ์ด๋ผ๊ณ  ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์—”ํ„ฐํ‹ฐ์˜ ํŠน์ง•

- ๋ฐ˜๋“œ์‹œ ํ•ด๋‹น ์—…๋ฌด์—์„œ ํ•„์š”ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ณ ์ž ํ•˜๋Š” ์ •๋ณด์ด์–ด์•ผ ํ•œ๋‹ค.

- ์œ ์ผํ•œ ์‹๋ณ„์ž(PK)์— ์˜ํ•ด ์‹๋ณ„์ด ๊ฐ€๋Šฅํ•ด์•ผํ•œ๋‹ค.

- ๋‘ ๊ฐœ ์ด์ƒ์˜ ์ธ์Šคํ„ด์Šค ์ง‘ํ•ฉ์ด์–ด์•ผ ํ•œ๋‹ค. = ๋‘ ๊ฐœ ์ด์ƒ์˜ ์†์„ฑ์„ ๊ฐ–๋Š”๋‹ค.

- ์—…๋ฌด ํ”„๋กœ์„ธ์Šค์— ์˜ํ•ด ์ด์šฉ๋˜์–ด์•ผ ํ•œ๋‹ค.

- ๋ฐ˜๋“œ์‹œ ์†์„ฑ์ด ์žˆ์–ด์•ผ ํ•œ๋‹ค.

- ๋‹ค๋ฅธ ์—”ํ„ฐํ‹ฐ์™€ ์ตœ์†Œ ํ•œ ๊ฐœ ์ด์ƒ์˜ ๊ด€๊ณ„๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋‹จ, ํ†ต๊ณ„์„ฑ/์ฝ”๋“œ์„ฑ ์—”ํ„ฐํ‹ฐ๋Š” ๊ด€๊ณ„๋ฅผ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ๋‹ค.

 

- ๊ฐ์ฒด์ง€ํ–ฅ์˜ ์‹ฑ๊ธ€ํ„ดํŒจํ„ด์ฒ˜๋Ÿผ, ์—”ํ„ฐํ‹ฐ๋Š” ํ•œ๊ฐœ์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ๊ฐ€์ง€๋Š” ๊ฒƒ๋งŒ์œผ๋กœ ์ถฉ๋ถ„ํ•œ ์˜๋ฏธ๋ฅผ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ๋‹ค. (X)

 

์—”ํ„ฐํ‹ฐ์˜ ๋ถ„๋ฅ˜

์œ /๋ฌดํ˜•์—
๋”ฐ๋ฅธ ๋ถ„๋ฅ˜
์œ ํ˜•์—”ํ„ฐํ‹ฐ ๋ฌผ๋ฆฌ์ ์ธ ํ˜•ํƒœ๊ฐ€ ์žˆ๋Š” ์—”ํ„ฐํ‹ฐ ์‚ฌ์›, ๋ฌผํ’ˆ, ๊ฐ•์‚ฌ
๊ฐœ๋…์—”ํ„ฐํ‹ฐ ๊ฐœ๋…์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์—”ํ„ฐํ‹ฐ ์กฐ์ง, ๋ณดํ—˜์ƒํ’ˆ
์‚ฌ๊ฑด์—”ํ„ฐํ‹ฐ ์—…๋ฌด๋ฅผ ์ˆ˜ํ–‰ํ•จ์— ๋”ฐ๋ผ ๋ฐœ์ƒ๋˜๋Š” ์—”ํ„ฐํ‹ฐ ์ฃผ๋ฌธ, ์ฒญ๊ตฌ, ๋ฏธ๋‚ฉ
๋ฐœ์ƒ์‹œ์ ์—
๋”ฐ๋ฅธ ๋ถ„๋ฅ˜
๊ธฐ๋ณธ์—”ํ„ฐํ‹ฐ ์—…๋ฌด์— ์›๋ž˜ ์กด์žฌํ•˜๋Š” ์ •๋ณด๋กœ ๋…๋ฆฝ ๊ฐ€๋Šฅํ•œ ์—”ํ„ฐํ‹ฐ ์‚ฌ์›, ๋ถ€์„œ, ๊ณ ๊ฐ
์ค‘์‹ฌ์—”ํ„ฐํ‹ฐ ์—…๋ฌด๋กœ๋ถ€ํ„ฐ ๋ฐœ์ƒ๋˜๊ณ  ๋‹ค๋ฅธ์—”ํ„ฐํ‹ฐ์™€ ๊ด€๊ณ„๋ฅผ ํ†ตํ•ด ํ–‰์œ„ ์—”ํ„ฐํ‹ฐ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊ณ„์•ฝ, ์ฒญ๊ตฌ, ์ฃผ๋ฌธ
ํ–‰์œ„์—”ํ„ฐํ‹ฐ ๋‘ ๊ฐœ ์ด์ƒ์˜ ๋ถ€๋ชจ๋กœ๋ถ€ํ„ฐ ๋ฐœ์ƒ๋˜๊ณ  ์ž์ฃผ ๋‚ด์šฉ์ด ๋ฐ”๋€Œ๋Š” ์—”ํ„ฐํ‹ฐ ์ฃผ๋ฌธ๋ชฉ๋ก, ์‚ฌ์›๋ณ€๊ฒฝ์ด๋ ฅ

 

์—”ํ„ฐํ‹ฐ์˜ ๋ช…๋ช…

- ํ˜„์—…์—…๋ฌด์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์šฉ์–ด๋กœ ์‚ฌ์šฉ

- ์•ฝ์–ด ์‚ฌ์šฉ X    

- ๋‹จ์ˆ˜๋ช…์‚ฌ ์‚ฌ์šฉ

- ๋ชจ๋“  ์—”ํ„ฐํ‹ฐ์—์„œ ์œ ์ผํ•˜๊ฒŒ ์ด๋ฆ„ ๋ถ€์—ฌ

- ์—”ํ„ฐํ‹ฐ ์ƒ์„ฑ์˜๋ฏธ๋Œ€๋กœ ์ด๋ฆ„ ๋ถ€์—ฌ

 

 

 

๐Ÿ’š์†์„ฑ Attribute

์—…๋ฌด์—์„œ ํ•„์š”๋กœ ํ•˜๋Š” ์ธ์Šคํ„ด์Šค์—์„œ ๊ด€๋ฆฌํ•˜๊ณ ์ž ํ•˜๋Š” ์˜๋ฏธ์ƒ ๋” ์ด์ƒ ๋ถ„๋ฆฌ๋˜์ง€ ์•Š๋Š” ์ตœ์†Œ์˜ ๋ฐ์ดํ„ฐ ๋‹จ์œ„ 

์—”ํ„ฐํ‹ฐ๋ฅผ ์„ค๋ช…ํ•˜๊ณ  ์ธ์Šคํ„ด์Šค์˜ ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ๋œ๋‹ค.  ( ๊ฐ•์‚ฌ ์—”ํ„ฐํ‹ฐ์˜ ์†์„ฑ : ์ด๋ฆ„, ์ฃผ์†Œ, ๊ณ„์•ฝ์ผ์ž... )

ํ•œ ๊ฐœ์˜ ์†์„ฑ์€ ํ•œ ๊ฐœ์˜ ์†์„ฑ๊ฐ’์„ ๊ฐ–๋Š”๋‹ค.

 

์†์„ฑ์˜ ํŠน์ง•

- ์—”ํ„ฐํ‹ฐ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฐ˜๋“œ์‹œ ํ•ด๋‹น ์—…๋ฌด์—์„œ ํ•„์š”ํ•œ ์ •๋ณด์ด์–ด์•ผ ํ•œ๋‹ค.

- ์ •ํ•ด์ง„ ์ฃผ์‹๋ณ„์ž์— ํ•จ์ˆ˜์  ์ข…์†์„ฑ์„ ๊ฐ€์ ธ์•ผ ํ•œ๋‹ค.

- ํ•œ ์†์„ฑ์€ ํ•œ ๊ฐœ์˜ ๊ฐ’๋งŒ ๊ฐ€์ง„๋‹ค.

 

์†์„ฑ์˜ ๋ถ„๋ฅ˜

ํŠน์„ฑ์—
๋”ฐ๋ฅธ ๋ถ„๋ฅ˜
๊ธฐ๋ณธ ์†์„ฑ ์—…๋ฌด์—์„œ ์ถ”์ถœํ•œ ๋ชจ๋“  ์†์„ฑ. ์ธ์Šคํ„ด์Šค์˜ ๋ณธ๋ž˜ ์†์„ฑ ์ด๋ฆ„, ๊ณ„์ขŒ๋ฒˆํ˜ธ, ์ด์ž์œจ
์„ค๊ณ„ ์†์„ฑ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์„ ์œ„ํ•ด ๋งŒ๋“  ์†์„ฑ (์ผ๋ จ๋ฒˆํ˜ธ) ์ƒํ’ˆ์ฝ”๋“œ, ์ง€์ ์ฝ”๋“œ
ํŒŒ์ƒ ์†์„ฑ ๊ณ„์‚ฐ๋˜๋Š” ๊ฐ’ ์†์„ฑ ํ•ฉ๊ณ„, ํ‰๊ท , ์ด์ž
์—”ํ„ฐํ‹ฐ
๊ตฌ์„ฑ๋ฐฉ์‹์—
๋”ฐ๋ฅธ ๋ถ„๋ฅ˜
PK ์†์„ฑ ์—”ํ„ฐํ‹ฐ๋ฅผ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ  
FK ์†์„ฑ ๋‹ค๋ฅธ ์—”ํ„ฐํ‹ฐ์™€์˜ ๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์†์„ฑ  
์ผ๋ฐ˜ ์†์„ฑ PK, FK๊ฐ€ ์•„๋‹Œ ์†์„ฑ  
์„ธ๋ถ€์˜๋ฏธ์—
๋”ฐ๋ฅธ ๋ถ„๋ฅ˜
๋‹จ์ˆœ ์†์„ฑ ์„ธ๋ถ€ ์˜๋ฏธ๋กœ ์ชผ๊ฐค ์ˆ˜ ์—†๋Š” ์†์„ฑ ์‹œ, ๊ตฌ, ๋™, ๋ฒˆ์ง€
๋ณตํ•ฉ ์†์„ฑ ์„ธ๋ถ€ ์˜๋ฏธ๋กœ ์ชผ๊ฐค ์ˆ˜ ์žˆ๋Š” ์†์„ฑ  ์ฃผ์†Œ
๊ฐœ์ˆ˜์—
๋”ฐ๋ฅธ ๋ถ„๋ฅ˜
๋‹จ์ผ๊ฐ’ ์†์„ฑ ์†์„ฑ ํ•˜๋‚˜์— ํ•œ ๊ฐœ์˜ ๊ฐ’์„ ๊ฐ€์ง€๋Š” ์†์„ฑ  
๋‹ค์ค‘๊ฐ’ ์†์„ฑ ์†์„ฑ ํ•˜๋‚˜์— ๋‹ค์ค‘ ๊ฐ’์„ ๊ฐ€์ง€๋Š” ์†์„ฑ 
→ 1์ฐจ ์ •๊ทœํ™”๋ฅผ ํ•˜๊ฑฐ๋‚˜, ๋ณ„๋„์˜ ์—”ํ„ฐํ‹ฐ๋ฅผ ๋งŒ๋“ค์–ด ๊ด€๊ณ„๋กœ ์—ฐ๊ฒฐํ•˜์ž.
ํœด๋Œ€์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ 2๊ฐœ์ธ ์‚ฌ๋žŒ

 

๋„๋ฉ”์ธ Domain

์†์„ฑ์ด ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๊ฐ’์˜ ๋ฒ”์œ„

 

์†์„ฑ์˜ ๋ช…๋ช…

- ํ•ด๋‹น ์—…๋ฌด์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ด๋ฆ„์„ ๋ถ€์—ฌํ•œ๋‹ค.

- ์„œ์ˆ ์‹ ์†์„ฑ๋ช…์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋ช…์‚ฌํ˜• ์†์„ฑ๋ช…์„ ์‚ฌ์šฉํ•œ๋‹ค.

- ์•ฝ์–ด์‚ฌ์šฉ์€ ๊ฐ€๊ธ‰์  ์ œํ•œํ•œ๋‹ค.

- ์ „์ฒด ๋ฐ์ดํ„ฐ๋ชจ๋ธ์—์„œ ์œ ์ผ์„ฑ ํ™•๋ณดํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

 

- ์ง์› ์—”ํ„ฐํ‹ฐ์˜ ์ด๋ฆ„, ๊ณ ๊ฐ ์—”ํ„ฐํ‹ฐ์˜ ์ด๋ฆ„๊ณผ ๊ฐ™์ด ๊ฐ ์—”ํ„ฐํ‹ฐ๋ณ„๋กœ ๋™์ผํ•œ ์†์„ฑ๋ช…์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ์ผ๊ด€์„ฑ์„ ๊ฐ€์ ธ๊ฐ€๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. (X)

 

 

 

๐Ÿ’š๊ด€๊ณ„ Relationship

์ธ์Šคํ„ด์Šค ์‚ฌ์ด์˜ ๋…ผ๋ฆฌ์ ์ธ ์—ฐ๊ด€์„ฑ์œผ๋กœ์„œ ์กด์žฌ์˜ ํ˜•ํƒœ๋กœ์„œ๋‚˜ ํ–‰์œ„๋กœ์„œ ์„œ๋กœ์—๊ฒŒ ์—ฐ๊ด€์„ฑ์ด ๋ถ€์—ฌ๋œ ์ƒํƒœ

์—”ํ„ฐํ‹ฐ๊ฐ€ ์ธ์Šคํ„ด์Šค์˜ ์ง‘ํ•ฉ์„ ๋…ผ๋ฆฌ์ ์œผ๋กœ ํ‘œํ˜„ํ•œ๊ฒƒ๊ณผ ๋™์ผํ•˜๊ฒŒ ๊ด€๊ณ„๋Š” ๊ด€๊ณ„ ํŽ˜์–ด๋ง์˜ ์ง‘ํ•ฉ์„ ๋…ผ๋ฆฌ์ ์œผ๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ์ด๋‹ค.

 

๊ด€๊ณ„ ํŽ˜์–ด๋ง

์—”ํ„ฐํ‹ฐ ์•ˆ์˜ ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ฐœ๋ณ„์ ์œผ๋กœ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง€๋Š” ๊ฒƒ

 

๊ด€๊ณ„์˜ ๋ถ„๋ฅ˜

์กด์žฌ์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜ ์—”ํ„ฐํ‹ฐ ๊ฐ„์˜ ์ƒํƒœ๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
ERD์—์„œ๋Š” ์กด์žฌ/ํ–‰์œ„์— ๋”ฐ๋ฅธ ํ‘œ๊ธฐ ๊ตฌ๋ถ„ ์—†๋‹ค.
UML์—์„œ๋Š” ์—ฐ๊ฐ„๊ด€๊ณ„์— ํ•ด๋‹น๋˜๋ฉฐ ์‹ค์„ ์œผ๋กœ ํ‘œํ˜„ํ•œ๋‹ค.
์†Œ์†ํ•œ๋‹ค
ํ–‰์œ„์— ๋”ฐ๋ฅธ ๋ถ„๋ฅ˜ ์—”ํ„ฐํ‹ฐ ๊ฐ„์˜ ํ–‰์œ„๋ฅผ ์˜๋ฏธํ•œ๋‹ค.
ERD์—์„œ๋Š” ์กด์žฌ/ํ–‰์œ„์— ๋”ฐ๋ฅธ ํ‘œ๊ธฐ ๊ตฌ๋ถ„ ์—†๋‹ค.
UML์—์„œ๋Š” ์˜์กด๊ด€๊ณ„์— ํ•ด๋‹น๋˜๋ฉฐ ์ ์„ ์œผ๋กœ ํ‘œํ˜„ํ•œ๋‹ค.
์ฃผ๋ฌธํ•œ๋‹ค

 

๊ด€๊ณ„์˜ ํ‘œ๊ธฐ๋ฒ•

๊ด€๊ณ„๋ช…
Membership
๊ด€๊ณ„์˜ ์ด๋ฆ„.
๊ฐ๊ฐ์˜ ๊ด€๊ณ„๋Š” ๋‘ ๊ฐœ์˜ ๊ด€๊ณ„๋ช…์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. [ ๋ถ€์„œ(ํฌํ•จํ•œ๋‹ค) - ์‚ฌ์›(์†Œ์†๋œ๋‹ค) ]
๊ด€๊ณ„๋ช…์€ ๋Šฅ๋™์ ์ด๊ฑฐ๋‚˜ ์ˆ˜๋™์ ์œผ๋กœ ๋ช…๋ช…๋œ๋‹ค.
๊ณผ๊ฑฐ/๋ฏธ๋ž˜ํ˜•์ด ์•„๋‹Œ ํ˜„์žฌํ˜•์œผ๋กœ ํ‘œํ˜„ํ•œ๋‹ค. (์ˆ˜๊ฐ•์‹ ์ฒญํ–ˆ๋‹ค(X), ์ˆ˜๊ฐ•์‹ ์ฒญํ•œ๋‹ค(O) )
๊ด€๊ณ„์ฐจ์ˆ˜
Deegree
Cardinality
๊ด€๊ณ„์˜ ์ฐธ์—ฌ์ž ์ˆ˜.  1:1, 1:M, M:N๋กœ ํ‘œํ•œ๋‹ค.
๊ด€๊ณ„์„ ํƒ์‚ฌ์–‘
Optionality
๊ด€๊ณ„์˜ ํ•„์ˆ˜/์„ ํƒ๊ด€๊ณ„๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค.
ํ•„์ˆ˜์ฐธ์—ฌ๊ด€๊ณ„๋Š” ์—”ํ„ฐํ‹ฐ๋ผ๋ฆฌ ํ•„์ˆ˜์ ์œผ๋กœ ์—ฐ๊ฒฐ๋˜์–ด์•ผ ํ•˜๋Š” ๊ด€๊ณ„์ด๋‹ค.
์„ ํƒ์ฐธ์—ฌ๊ด€๊ณ„๋Š” ์—”ํ„ฐํ‹ฐ๋ผ๋ฆฌ ์„ ํƒ์ ์œผ๋กœ ์—ฐ๊ฒฐ๋˜์–ด์•ผ ํ•˜๋Š” ๊ด€๊ณ„์ด๋‹ค.

 

๊ด€๊ณ„ ์ •์˜ ์‹œ ์ฒดํฌ์‚ฌํ•ญ

- ๋‘ ์—”ํ„ฐํ‹ฐ ์‚ฌ์ด์— ๊ด€์‹ฌ์žˆ๋Š” ์—ฐ๊ด€๊ทœ์น™์ด ์กด์žฌํ•˜๋Š”๊ฐ€?

- ๋‘ ์—”ํ„ฐํ‹ฐ ์‚ฌ์ด์— ์ •๋ณด์˜ ์กฐํ•ฉ์ด ๋ฐœ์ƒ๋˜๋Š”๊ฐ€?

- ์—…๋ฌด๊ธฐ์ˆ ์„œ, ์žฅํ‘œ์— ๊ด€๊ณ„ ์—ฐ๊ฒฐ์— ๋Œ€ํ•œ ๊ทœ์น™์ด ์„œ์ˆ ๋˜์–ด ์žˆ๋Š”๊ฐ€?

- ์—…๋ฌด๊ธฐ์ˆ ์„œ, ์žฅํ‘œ์— ๊ด€๊ณ„ ์—ฐ๊ฒฐ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ๋™์‚ฌ(Verb)๊ฐ€ ์žˆ๋Š”๊ฐ€?    ๋ช…์‚ฌ(Noun) (X)

 

 

 

๐Ÿ’š์‹๋ณ„์ž Identifiers

์—”ํ„ฐํ‹ฐ๋ฅผ ๋Œ€ํ‘œํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ์„ ์˜๋ฏธํ•œ๋‹ค.

ํ•˜๋‚˜์˜ ์—”ํ„ฐํ‹ฐ๋Š” ๋ฐ˜๋“œ์‹œ ํ•˜๋‚˜์˜ ์œ ์ผํ•œ ์‹๋ณ„์ž๊ฐ€ ์กด์žฌํ•ด์•ผํ•œ๋‹ค.

 

์ฃผ์‹๋ณ„์ž์˜ ํŠน์ง•

์œ ์ผ์„ฑ ๋ชจ๋“  ์ธ์Šคํ„ด์Šค๋“ค์ด ์ฃผ์‹๋ณ„์ž๋กœ ์œ ์ผํ•˜๊ฒŒ ๊ตฌ๋ถ„๋˜์–ด์•ผ ํ•œ๋‹ค. ์ด๋ฆ„์€ ๋™๋ช…์ด์ธ์ด ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ์‚ฌ์›๋ฒˆํ˜ธ ๋ถ€์—ฌ
์ตœ์†Œ์„ฑ ์ฃผ์‹๋ณ„์ž๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์†์„ฑ์€ ์ตœ์†Œ์˜ ์ˆ˜๊ฐ€ ๋˜์–ด์•ผ ํ•œ๋‹ค. ์‚ฌ์›๋ฒˆํ˜ธ๋กœ๋„ ๊ตฌ๋ถ„๊ฐ€๋Šฅํ•œ๋ฐ
์‚ฌ์›๋ฒˆํ˜ธ+์ด๋ฆ„์œผ๋กœ ๊ตฌ์„ฑ๋  ํ•„์š” ์—†์Œ
๋ถˆ๋ณ€์„ฑ ์ฃผ์‹๋ณ„์ž์˜ ๊ฐ’์€ ์ž์ฃผ ๋ณ€ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด์–ด์•ผ ํ•œ๋‹ค. ์‚ฌ์›๋ฒˆํ˜ธ๋Š” ๋ณ€๊ฒฝ๋˜๋ฉด ์•ˆ๋œ๋‹ค.
์กด์žฌ์„ฑ ์ฃผ์‹๋ณ„์ž๊ฐ€ ์ง€์ •๋˜๋ฉด ๋ฐ˜๋“œ์‹œ ๊ฐ’์ด ๋“ค์–ด์™€์•ผ ํ•œ๋‹ค. ์‚ฌ์›๋ฒˆํ˜ธ๊ฐ€ ์—†๋Š” ์ง์›์€ ์žˆ์„ ์ˆ˜ ์—†๋‹ค.

 

์‹๋ณ„์ž ๋ถ„๋ฅ˜

๋Œ€ํ‘œ์„ฑ ์—ฌ๋ถ€ ์ฃผ์‹๋ณ„์ž ์œ ์ผ์„ฑO, ์ตœ์†Œ์„ฑO, ๋Œ€ํ‘œ์„ฑO : ๋ชจ๋‘ ๋งŒ์กฑํ•˜๋Š” ์‹๋ณ„์ž ์‚ฌ์›๋ฒˆํ˜ธ
๋ณด์กฐ์‹๋ณ„์ž ์œ ์ผ์„ฑO, ์ตœ์†Œ์„ฑO, ๋Œ€ํ‘œ์„ฑX : ๋Œ€ํ‘œ์„ฑ๋งŒ ๋งŒ์กฑํ•˜์ง€ ์•Š๋Š” ์‹๋ณ„์ž ์ฃผ๋ฏผ๋ฒˆํ˜ธ
์Šค์Šค๋กœ
์ƒ์„ฑ ์—ฌ๋ถ€
๋‚ด๋ถ€์‹๋ณ„์ž ์—”ํ„ฐํ‹ฐ ๋‚ด๋ถ€์—์„œ ์Šค์Šค๋กœ ๋งŒ๋“ค์–ด์ง€๋Š” ์‹๋ณ„์ž  
์™ธ๋ถ€์‹๋ณ„์ž ํƒ€ ์—”ํ„ฐํ‹ฐ์™€์˜ ๊ด€๊ณ„๋กœ ๋ฐ›์•„์˜ค๋Š” ์‹๋ณ„์ž  
์†์„ฑ์˜ ์ˆ˜ ๋‹จ์ผ์‹๋ณ„์ž ํ•˜๋‚˜์˜ ์†์„ฑ์œผ๋กœ ๊ตฌ์„ฑ๋œ ์‹๋ณ„์ž ์‚ฌ์›๋ฒˆํ˜ธ
๋ณตํ•ฉ์‹๋ณ„์ž ๋‘˜ ์ด์ƒ ์†์„ฑ์œผ๋กœ ๊ตฌ์„ฑ๋œ ์‹๋ณ„์ž ์ด๋ฆ„+์ฃผ๋ฏผ๋ฒˆํ˜ธ
๋Œ€์ฒด ์—ฌ๋ถ€ ๋ณธ์งˆ์‹๋ณ„์ž ์—…๋ฌด์— ์˜ํ•ด ๋งŒ๋“ค์–ด์ง€๋Š” ์‹๋ณ„์ž  
์ธ์กฐ์‹๋ณ„์ž ์›์กฐ์‹๋ณ„์ž๊ฐ€ ๋ณต์žกํ•˜์—ฌ ์ธ์œ„์ ์œผ๋กœ ๋งŒ๋“  ์‹๋ณ„์ž ์‚ฌ์›๋ฒˆํ˜ธ

 

์ฃผ์‹๋ณ„์ž ๋„์ถœ๊ธฐ์ค€

- ํ•ด๋‹น ์—…๋ฌด์—์„œ ์ž์ฃผ ์ด์šฉ๋˜๋Š” ์†์„ฑ์œผ๋กœ ์ง€์ •ํ•œ๋‹ค.

- ๋ช…์นญ, ๋‚ด์—ญ๊ณผ ๊ฐ™์ด ์ด๋ฆ„์œผ๋กœ ๊ธฐ์ˆ ๋˜๋Š” ๊ฒƒ์€ ๊ฐ€๋Šฅํ•˜๋ฉด ์ง€์ •ํ•˜์ง€ ์•Š๋Š”๋‹ค. (๋ช…์นญ์ด ๊ธธ์–ด์งˆ ๊ฒฝ์šฐ ์ฒ˜๋ฆฌ๊ฐ€ ๋Š๋ ค์ง„๋‹ค)

- ๋ณตํ•ฉ ์†์„ฑ์ธ ๊ฒฝ์šฐ, ๋„ˆ๋ฌด ๋งŽ์€ ์†์„ฑ์ด ํฌํ•จ๋˜์ง€ ์•Š๋„๋ก ํ•œ๋‹ค.

 

์‹๋ณ„์ž/๋น„์‹๋ณ„์ž ๊ด€๊ณ„

  ์‹๋ณ„์ž๊ด€๊ณ„ ๋น„์‹๋ณ„์ž๊ด€๊ณ„
๋ชฉ์  ๊ฐ•ํ•œ ์—ฐ๊ฒฐ๊ด€๊ณ„๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค. ์•ฝํ•œ ์—ฐ๊ฒฐ๊ด€๊ณ„๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค.
๋ถ€๋ชจ์—๊ฒŒ
๋ฌผ๋ ค๋ฐ›์€ ์‹๋ณ„์ž
๋ถ€๋ชจ๋กœ๋ถ€ํ„ฐ ๋ฐ›์€ ์‹๋ณ„์ž๋ฅผ
์ž์‹
์—”ํ„ฐํ‹ฐ์—์„œ ์ฃผ์‹๋ณ„์ž๋กœ ์ด์šฉํ•˜๋Š” ๊ฒฝ์šฐ

 = ๋ถ€๋ชจ์—”ํ„ฐํ‹ฐ๊ฐ€ ์ƒ์„ฑ๋˜์–ด์•ผ ์ž์‹์—”ํ„ฐํ‹ฐ๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค.
(๋ฐœ๋ น ์—”ํ„ฐํ‹ฐ๋Š” ๋ฐ˜๋“œ์‹œ ์‚ฌ์› ์—”ํ„ฐํ‹ฐ๊ฐ€ ์žˆ์–ด์•ผ ์ƒ์„ฑ๋  ์ˆ˜ ์žˆ๋‹ค)
๋ถ€๋ชจ๋กœ๋ถ€ํ„ฐ ๋ฐ›์€ ์‹๋ณ„์ž๋ฅผ
์ž์‹
์—”ํ„ฐํ‹ฐ์—์„œ ์ฃผ์‹๋ณ„์ž๋กœ ์ด์šฉํ•˜์ง€ ์•Š๊ณ 
์ผ๋ฐ˜์†์„ฑ์œผ๋กœ ์ด์šฉ
ํ•˜๋Š” ๊ฒฝ์šฐ

 = ๋ถ€๋ชจ์—”ํ„ฐํ‹ฐ๊ฐ€ ์—†์–ด๋„ ๋œ๋‹ค.
์‹๋ณ„์ž/๋น„์‹๋ณ„์ž๋กœ๋งŒ
๊ตฌ์„ฑํ•  ๊ฒฝ์šฐ
์—ฌ๋Ÿฌ ๋ถ€๋ชจ์˜ ์‹๋ณ„์ž๋ฅผ ๋ฐ›์„ ๊ฒฝ์šฐ, ์ฃผ์‹๋ณ„์ž์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๊ฒŒ๋œ๋‹ค. 
= ๊ฐœ๋ฐœ ์‹œ ๋ณต์žกํ•ด์ง€๊ณ  ์˜ค๋ฅ˜๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„์ง„๋‹ค.

EX. ์—”ํ„ฐํ‹ฐ๋ช…(PK) 
ParentA(AA)
→ ParentB(AA, BB)
→ ParentC(AA, BB, CC)
→ ME(AA, BB, CC, MM, MM)

์ž์ฃผ ์กฐํšŒํ•˜๋Š” ์ฃผ์‹๋ณ„์ž๋ฅผ ์ผ๋ฐ˜์†์„ฑ์œผ๋กœ ๋‘๋ฉด ์ž์‹์—”ํ„ฐํ‹ฐ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ, ์“ธ๋ฐ์—†์ด ๋ถ€๋ชจ์—”ํ„ฐํ‹ฐ๊นŒ์ง€ ์ฐพ์•„๊ฐ€์•ผํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

EX. ์—”ํ„ฐํ‹ฐ๋ช…(PK) / C์—์„œ ์ ๊ฒ€๋ฒˆํ˜ธ='301' ๋ฐ์ดํ„ฐ ์กฐํšŒ
where A.๋ถ„์•ผ๋ฒˆํ˜ธ = B.๋ถ„์•ผ๋ฒˆํ˜ธ
  AND B.์ ๊ฒ€๋ฒˆํ˜ธ = C.์ ๊ฒ€๋ฒˆํ˜ธ
  AND C.์ ๊ฒ€๋ฒˆํ˜ธ = '105'
ํ‘œ๊ธฐ๋ฒ• ์‹ค์„  ์ ์„ 
์‹๋ณ„์ž/๋น„์‹๋ณ„์ž
๊ด€๊ณ„๋ฅผ ์„ ํƒํ•ด์•ผ
ํ•˜๋Š” ๊ฒฝ์šฐ
- ๊ฐ•ํ•œ ๊ด€๊ณ„์ธ ๊ฒฝ์šฐ
- ์ž์‹ํ…Œ์ด๋ธ”์—์„œ ์ข…์†์ ์ธ ์ฃผ์‹๋ณ„์ž๋ฅผ ์›ํ•  ๊ฒฝ์šฐ
- ๋ถ€๋ชจํ…Œ์ด๋ธ”์˜ ์‹๋ณ„์ž๋ฅผ ๊ณ„์† ์ƒ์†ํ•  ๊ฒฝ์šฐ
- ์—”ํ„ฐํ‹ฐ๋ณ„๋กœ ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ๋™์ผํ•˜๊ฒŒ ๊ด€๋ฆฌํ•  ๊ฒฝ์šฐ

- ์•ฝํ•œ ๊ด€๊ณ„์ธ ๊ฒฝ์šฐ
- ์ž์‹ํ…Œ์ด๋ธ”์—์„œ ๋…๋ฆฝ์ ์ธ ์ฃผ์‹๋ณ„์ž๋ฅผ ์›ํ•  ๊ฒฝ์šฐ
- ๋ถ€๋ชจํ…Œ์ด๋ธ”์˜ ์‹๋ณ„์ž๋ฅผ ์ƒ์†๋ฐ›์ง€ ์•Š์„ ๊ฒฝ์šฐ
- ์—”ํ„ฐํ‹ฐ๋ณ„๋กœ ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ๋‹ค๋ฅด๊ฒŒ ๊ด€๋ฆฌํ•  ๊ฒฝ์šฐ
- SQL๋ฌธ์žฅ์˜ ๋ณต์žก์„ฑ์ด ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒฝ์šฐ

 

 

๐Ÿ’šERD IE ํ‘œ๊ธฐ๋ฒ•  vs Barker ํ‘œ๊ธฐ๋ฒ• 

ERD(Entity Relationship Diagram)์€ ์„œ๋กœ ๋‹ค๋ฅธ ์—”ํ„ฐํ‹ฐ๋“ค๊ณผ์˜ ๊ด€๊ณ„๋ฅผ ์ง๊ด€์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š” ์ˆ˜๋‹จ์ด๋‹ค.

ERD์˜ ๊ตฌ์„ฑ์š”์†Œ๋Š” ์—”ํ„ฐํ‹ฐ, ๊ด€๊ณ„, ์†์„ฑ 3๊ฐ€์ง€ ์ด๋‹ค.

 

ํ‘œ๊ธฐ ์ฝ๋Š” ๋ฐฉ๋ฒ•

IE ํ‘œ๊ธฐ๋ฒ• ๋ถ€์„œ๋Š” 0๋ช… or 1๋ช… or n๋ช… ์ด์ƒ์˜ ์‚ฌ์›๋“ค๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋‹ค. (ํ‘œ๊ธฐ๋ฅผ ์œ„ํ•ด์„œ ์ ์„ , ์‹ค์„  ํ˜ผํ•ฉํ–ˆ์ง€๋งŒ ์žˆ์„ ์ˆ˜ ์—†๋‹ค. ์ ์„ ๋งŒ์“ฐ๊ฑฐ๋‚˜ ์‹ค์„ ๋งŒ ์‚ฌ์šฉํ•ด์•ผํ•œ๋‹ค.)
์‚ฌ์›์€ 1๊ฐœ์˜ ๋ถ€์„œ๋ฅผ ๊ฐ–๋Š”๋‹ค.
Barker ํ‘œ๊ธฐ๋ฒ•
๋ถ€์„œ๋Š” 1๋ช… ์ด์ƒ์˜ ์‚ฌ์›๋“ค๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ๋‹ค.
(์‹๋ณ„๊ด€๊ณ„์ด๋ฏ€๋กœ #์‚ฌ์›๋ฒˆํ˜ธ๊ฐ€ ๋ถ€์„œํ…Œ์ด๋ธ”์— PK๋กœ ์žˆ์–ด์•ผํ•œ๋‹ค)
์‚ฌ์›์€ ๋ถ€์„œ๊ฐ€ ์—†์„ ์ˆ˜ ์žˆ๋‹ค. 

(์žŠ์ง€๋ง์ž. ์‹๋ณ„/๋น„์‹๋ณ„๊ด€๊ณ„๋Š” ์—”ํ„ฐํ‹ฐ์˜ ๊ธฐ๋ณธํ‚ค๋ฅผ ํ™•์ธํ•ด์•ผ ์•Œ ์ˆ˜ ์žˆ๋‹ค!!)

(ํ‘œ๊ธฐ๋ฒ• ํ‘œ์‹œ์— ์ง‘์ค‘ํ–ˆ์œผ๋‹ˆ ์˜๋ฏธ์˜ ์˜ณ๊ณ  ๊ทธ๋ฆ„์€ ์ž ์‹œ ์ ‘์–ด๋‘์ž)

๋ฐ˜์‘ํ˜•
  • ๋„ค์ด๋ฒ„ ๋ธ”๋Ÿฌ๊ทธ ๊ณต์œ ํ•˜๊ธฐ
  • ํŽ˜์ด์Šค๋ถ ๊ณต์œ ํ•˜๊ธฐ
  • ํŠธ์œ„ํ„ฐ ๊ณต์œ ํ•˜๊ธฐ
  • ๊ตฌ๊ธ€ ํ”Œ๋Ÿฌ์Šค ๊ณต์œ ํ•˜๊ธฐ
  • ์นด์นด์˜คํ†ก ๊ณต์œ ํ•˜๊ธฐ