DB

ํ…Œ์ด๋ธ” ์ด๋ฆ„์€ ๋‹จ์ˆ˜ํ˜•์œผ๋กœ ํ•ด์•ผ๋ ๊นŒ ๋ณต์ˆ˜ํ˜•์œผ๋กœ ํ•ด์•ผ๋ ๊นŒ? ๐Ÿค”

DAHLIA CHOI 2023. 10. 17. 11:10

๊ฐ•์˜๋ฅผ ๋“ฃ๋‹ค๊ฐ€ ํ…Œ์ด๋ธ” ์ด๋ฆ„์„ ์ •ํ•˜๋Š”๊ฑฐ์— ์žˆ์–ด์„œ ๋‹จ์ˆ˜ํ˜•์ด ์ข‹์„์ง€ ๋ณต์ˆ˜ํ˜•์ด ์ข‹์„์ง€์— ๋Œ€ํ•ด์„œ ์ฐพ์•„๋ณด์•˜๋‹ค.

 

 

๐Ÿงถ ๋‹จ์ˆ˜ํ˜•์œผ๋กœ ์ง“๋Š” ๊ฒฝ์šฐ

  • ์‰ฝ๊ฒŒ ๋ณด์ด๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ๋žŒ๋“ค์ด ๋”ฐ๋ฅด๊ธฐ๊ฐ€ ๋งค์šฐ ์‰ฝ๋‹ค.
  • ๋งŒ์•ฝ ๋ณต์ˆ˜๋กœ ์ง“๋Š” ๊ฒฝ์šฐ์— child-children, octopus-octopi์ฒ˜๋Ÿผ ๋ณต์ˆ˜ํ˜•์„ ๊ธฐ์–ตํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ค์šธ ์ˆ˜๋„ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‹จ์ˆ˜๋กœ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ์— ์‹œ๊ฐ„ ์ ˆ์•ฝ์ด ๋œ๋‹ค
  • ๊ฐœ๋ฐœ์ž๊ฐ€ ์ ์ ˆํ•œ ๋ณต์ˆ˜ํ˜•์— ๋Œ€ํ•ด์„œ ๊ณ ๋ฏผํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค. 
  • ๋ณต์ˆ˜ํ˜•์„ ์“ฐ๋Š” ๊ฒƒ๋ณด๋‹ค ์˜คํƒ€๊ฐ€ ์ค„์–ด๋“ค์–ด์„œ ์ „์ฒด์ ์ธ ์˜ค๋ฅ˜๋„ ์ค„์–ด๋“ค ์ˆ˜ ์žˆ๋‹ค.

 

๐Ÿงต ๋ณต์ˆ˜ํ˜•์œผ๋กœ ์ง“๋Š” ๊ฒฝ์šฐ

  • ๋ณต์ˆ˜ํ˜• ์ด๋ฆ„์ด ์ฝ”๋“œ ์ €์žฅ์†Œ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•„ํ‚คํ…์ฒ˜, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐ„ ์•„ํ‚คํ…์ฒ˜ ๊ฐ„์— ํ†ต์ผ์„ฑ์„ ์ œ๊ณตํ•œ๋‹ค.
  • ๋งŒ์•ฝ์— user๋ผ๋Š” ํ…Œ์ด๋ธ”์ด ์žˆ์œผ๋ฉด ์ด๊ฑด users์˜ ๊ทธ๋ฃน์ด ์•„๋‹Œ user์˜ ๊ทธ๋ฃน์ด๋ผ๊ณ  ์ฐฉ๊ฐํ•  ์ˆ˜๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
  • ์ถ”๊ฐ€๋กœ user ๊ฐœ์ฒด ์ปฌ๋ ‰์…˜์˜ ์ด๋ฆ„์„ ์ง€์ •ํ•˜๋ฉด user ํ…Œ์ด๋ธ”์— ์žˆ๋Š” ํ•ญ๋ชฉ๊ณผ ํ…Œ์ด๋ธ” ์ž์ฒด๊ฐ„์˜ ๊ตฌ๋ถ„์ด ๋ชจํ˜ธํ•ด์ง„๋‹ค.

 

 

โžฟ ๊ฒฐ๋ก 

์˜ณ๊ณ  ๊ทธ๋ฆ„์€ ์—†์œผ๋‹ˆ ์›ํ•˜๋Š”๊ฑธ ์‚ฌ์šฉํ•˜์ž!

ํ•˜์ง€๋งŒ ์ค‘์š”ํ•œ ๊ฒƒ์€ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ผ๊ด€๋œ ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์กฐํ•ฉํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋งŒ ํ•˜์ง€๋ง์ž.

 

 

๐ŸŒปํ…Œ์ด๋ธ” ์ด๋ฆ„ ์ง“๊ธฐ ํŒ

  • ํ…Œ์ด๋ธ”์— ์งง์€ ์ด๋ฆ„ ์‚ฌ์šฉํ•˜๊ธฐ
  • ๋‹จ์–ด๋ฅผ ๊ตฌ๋ถ„ํ•  ๋• ๋ฐ‘์ค„(_)์„ ์‚ฌ์šฉํ•˜๊ธฐ
  • ํ…Œ์ด๋ธ”์ด ํ•ด๋‹น ๋‚ด์šฉ์„ ๋‚˜ํƒ€๋‚ด๋„๋ก ์„ค๋ช…์ ์œผ๋กœ ์ง“๊ธฐ
  • SQL/RDBMS์˜ ์˜ˆ์•ฝ์–ด์™€ ์ถฉ๋Œํ•  ์ˆ˜ ์—†๋Š” ๊ณ ์œ ํ•œ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๊ธฐ
  • ํ…Œ์ด๋ธ”์ด๋ฆ„_id๋ฅผ PK๋กœ ์‚ฌ์šฉํ•˜์ง€ ๋ง๊ธฐ
  • ํ…Œ์ด๋ธ”์ด๋‚˜ ํ•„๋“œ ์ด๋ฆ„์— ๋Œ€๋ฌธ์ž ์‚ฌ์šฉ ๊ธˆ์ง€ํ•˜๊ธฐ

 

 

REFERENCE

https://medium.com/@fbnlsr/the-table-naming-dilemma-singular-vs-plural-dc260d90aaff

https://madeintandem.com/blog/singular-vs-plural-database-table-names/