2024๋…„ 12์›” 21์ผยท6๋ถ„ ์ฝ๊ธฐ

๋…ธ์ฝ”๋“œ ์•ฑ์—์„œ ํผ ๊ฒ€์ฆ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์กฐ๊ฑด

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

๋…ธ์ฝ”๋“œ ์•ฑ์—์„œ ํผ ๊ฒ€์ฆ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์กฐ๊ฑด

์ž˜๋ชป๋œ ํผ ๋ฐ์ดํ„ฐ๊ฐ€ ๋น ๋ฅด๊ฒŒ ํผ์ง€๋Š” ์ด์œ 

์ž˜๋ชป๋œ ๋ฐ์ดํ„ฐ๋Š” ํ•œ ๊ณณ์— ๋จธ๋ฌด๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํผ์— ์ž˜๋ชป๋œ ๊ฐ’ ํ•˜๋‚˜๊ฐ€ ๋“ค์–ด๊ฐ€๋ฉด ์•ฑ์˜ ๋ชจ๋“  ๊ณณ์—์„œ ๋ณต์‚ฌยท์ฐธ์กฐยท์‹ ๋ขฐ๋˜๋ฉฐ ํผ์ง‘๋‹ˆ๋‹ค.

๋ณดํ†ต์€ ์ž‘์€ ์‹ค์ˆ˜์—์„œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€ ์ด๋ฉ”์ผ ๋’ค์— ๊ณต๋ฐฑ์„ ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜, ์ž˜๋ชป๋œ ๊ณ ๊ฐ์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜, ํ•„๋“œ๊ฐ€ ํ—ˆ์šฉํ•˜๋ฏ€๋กœ ์Œ์ˆ˜ ์ˆ˜๋Ÿ‰์„ ๋„ฃ๋Š” ์‹์ž…๋‹ˆ๋‹ค. ํผ์ด ๋ฐ›์•„๋“ค์ด๋ฉด ์‹œ์Šคํ…œ์€ ๊ทธ ๊ฐ’์„ ์ง„์‹ค๋กœ ์ทจ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค.

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

๋‚˜์ค‘์— ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ฆฌํ•˜๋Š” ๊ฑด ๋А๋ฆฌ๊ณ  ์œ„ํ—˜ํ•ฉ๋‹ˆ๋‹ค. ์ •๋ฆฌ๋Š” ๋Œ€๊ฐœ ํ•œ ๋ฒˆ์˜ ์ˆ˜์ •์œผ๋กœ ๋๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž˜๋ชป๋œ ๊ฐ’์ด ํ˜๋Ÿฌ๊ฐ„ ๋ชจ๋“  ๊ณณ์„ ์ฐพ์•„ ๊ด€๋ จ ๋ ˆ์ฝ”๋“œ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ๊ทธ์— ์˜์กดํ•˜๋Š” ๊ฒƒ์„ ๋‹ค์‹œ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ์ˆ˜์ • ํ•˜๋‚˜๊ฐ€ ์›Œํฌํ”Œ๋กœ๋ฅผ ๊นจ๋œจ๋ฆฌ๊ฑฐ๋‚˜ ์ค‘๋ณต ์•Œ๋ฆผ์„ ์œ ๋ฐœํ•˜๊ฑฐ๋‚˜ ๊ฐ์‚ฌ ๋‚ด์—ญ์„ ํ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

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

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ, ์‰ฌ์šด ์„ค๋ช…

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์•ˆ์— ์žˆ๋Š” ๊ฐ„๋‹จํ•œ ๊ทœ์น™๋“ค์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋  ๋•Œ๋งˆ๋‹คโ€”์›น ํผ, ๋ชจ๋ฐ”์ผ ํ™”๋ฉด, ์ž„ํฌํŠธ, API ํ˜ธ์ถœ ๋“ฑ ์–ด๋””์„œ ์™”๋“ โ€”์ด ๊ทœ์น™๋“ค์ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๊ทœ์น™์ด ๊นจ์ง€๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ €์žฅ์„ ๊ฑฐ๋ถ€ํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด UI ์ „์šฉ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์™€์˜ ํฐ ์ฐจ์ด์ž…๋‹ˆ๋‹ค. ํผ์€ ์ €์žฅ ์ „์— ํ•„๋“œ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ทธ๋Ÿฐ ๊ฒ€์‚ฌ๋“ค์€ ๋ฌด์‹œ๋˜๊ฑฐ๋‚˜ ์šฐํšŒ๋˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ™”๋ฉด์ด ๊ฐ™์€ ๊ทœ์น™์„ ์žŠ์„ ์ˆ˜๋„ ์žˆ๊ณ , ์ž๋™ํ™”๊ฐ€ ์ง์ ‘ DB์— ์“ธ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณง ํ•œ ๊ณณ์—์„œ๋Š” ๊ดœ์ฐฎ์•„ ๋ณด์ด๋˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‹ค๋ฅธ ๊ณณ์—์„œ๋Š” ๋ณด๊ณ ์„œ๋ฅผ ๊นจ๋œจ๋ฆฌ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์‚ฌ๋žŒ๋“ค์ด ํผ ๊ฒ€์ฆ์„ ์œ„ํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์„ ์–ธ๊ธ‰ํ•  ๋•Œ ์˜๋ฏธํ•˜๋Š” ๋ฐ”๋Š” ์ด๋ ‡์Šต๋‹ˆ๋‹ค: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ตœ์ข… ์‹ฌ์‚ฌ๊ด€์œผ๋กœ ๋‘๊ณ , UI๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๊ฑฐ์˜ ๊ทธ ๋ฒฝ์— ๋ถ€๋”ชํžˆ์ง€ ์•Š๋„๋ก ์•ˆ๋‚ดํ•˜๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋Œ€๋ถ€๋ถ„์˜ ์‹ค์ œ ์•ฑ์€ ์„ธ ๊ฐ€์ง€ ๊ธฐ๋ณธ์œผ๋กœ ๋งŽ์€ ๋ถ€๋ถ„์„ ์ปค๋ฒ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

  • ๊ณ ์œ (Unique): โ€œ์ด ๊ฐ’์€ ์œ ์ผํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.โ€ ์˜ˆ: ์ด๋ฉ”์ผ, ์‚ฌ๋ฒˆ, ์ธ๋ณด์ด์Šค ๋ฒˆํ˜ธ.
  • ์ฒดํฌ(Check): โ€œ์ด ์กฐ๊ฑด์ด ์ฐธ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.โ€ ์˜ˆ: quantity > 0, start_date <= end_date.
  • ์™ธ๋ž˜ ํ‚ค(Foreign key): โ€œ์ด ๊ฐ’์€ ๋‹ค๋ฅธ ํ…Œ์ด๋ธ”์˜ ์‹ค์ œ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฐ€๋ฆฌ์ผœ์•ผ ํ•ฉ๋‹ˆ๋‹ค.โ€ ์˜ˆ: ๋ชจ๋“  ์ฃผ๋ฌธ์€ ์กด์žฌํ•˜๋Š” ๊ณ ๊ฐ์„ ์ฐธ์กฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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

๋˜ํ•œ ์ œ์•ฝ์„ ์—ผ๋‘์— ๋‘๊ณ  ์„ค๊ณ„ํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋” ๋ช…ํ™•ํ•ด์ง‘๋‹ˆ๋‹ค. ๋‚˜์ค‘์— ์ž˜๋ชป๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํ˜๋ ค๋ณด๋‚ด๊ณ  ๊ณ ์น˜๋Š” ๋Œ€์‹  โ€œํ•ด๋‹น ์ธ๋ณด์ด์Šค ๋ฒˆํ˜ธ๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•ฉ๋‹ˆ๋‹คโ€ ๋˜๋Š” โ€œ์œ ํšจํ•œ ๊ณ ๊ฐ์„ ์„ ํƒํ•ด ์ฃผ์„ธ์š”โ€์ฒ˜๋Ÿผ ์ง‘์ค‘๋œ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด์—ฌ์ฃผ์–ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๊น”๋”ํ•˜๊ฒŒ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ œ์•ฝ์„ ์‚ฌ๋žŒ ์นœํ™”์  ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๋กœ ์˜ฎ๊ธฐ๊ธฐ

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

๊ฐ ์ œ์•ฝ์„ ๋‘ ๋ถ€๋ถ„์œผ๋กœ ๋œ ์ž‘์€ "์˜ค๋ฅ˜ ๊ณ„์•ฝ"์œผ๋กœ ์ทจ๊ธ‰ํ•˜์„ธ์š”: ๋ฌด์—‡์ด ์ž˜๋ชป๋˜์—ˆ๋Š”๊ฐ€, ๊ทธ๋ฆฌ๊ณ  ์–ด๋–ป๊ฒŒ ๊ณ ์น˜๋‚˜. UI๋Š” ์นœ์ ˆํ•จ์„ ์žƒ์ง€ ์•Š์œผ๋ฉด์„œ๋„ ๋ฐ์ดํ„ฐ ๊ทœ์น™์„ ์•ฝํ™”์‹œํ‚ค์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ž˜ ์ž‘๋™ํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ฒˆ์—ญ ์˜ˆ์‹œ:

  • ๋‚˜์จ: โ€œUnique constraint violation on users_email_keyโ€

  • ์ข‹์Œ: โ€œ์ด ์ด๋ฉ”์ผ์€ ์ด๋ฏธ ์‚ฌ์šฉ ์ค‘์ž…๋‹ˆ๋‹ค. ๋กœ๊ทธ์ธํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์ด๋ฉ”์ผ์„ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”.โ€

  • ๋‚˜์จ: โ€œCheck constraint failed: order_total_positiveโ€

  • ์ข‹์Œ: โ€œ์ด์•ก์€ 0๋ณด๋‹ค ์ปค์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ ์–ด๋„ ํ•œ ๊ฐœ์˜ ์ƒํ’ˆ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ˆ˜๋Ÿ‰์„ ์กฐ์ •ํ•˜์„ธ์š”.โ€

  • ๋‚˜์จ: โ€œForeign key violation on customer_idโ€

  • ์ข‹์Œ: โ€œ์œ ํšจํ•œ ๊ณ ๊ฐ์„ ์„ ํƒํ•˜์„ธ์š”. ์ƒˆ ๊ณ ๊ฐ์ด๋ผ๋ฉด ๋จผ์ € ๊ณ ๊ฐ์„ ์ƒ์„ฑํ•˜์„ธ์š”.โ€

๋ฉ”์‹œ์ง€๋ฅผ ์–ด๋””์— ํ‘œ์‹œํ•˜๋А๋ƒ๋Š” ๋ง๋ณด๋‹ค ์ค‘์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹จ์ผ ํ•„๋“œ ์˜ค๋ฅ˜๋Š” ํ•ด๋‹น ํ•„๋“œ ์˜†์— ํ‘œ์‹œํ•˜์„ธ์š”. ๊ต์ฐจ ํ•„๋“œ ๊ทœ์น™(์˜ˆ: "์ข…๋ฃŒ์ผ์€ ์‹œ์ž‘์ผ ์ดํ›„์—ฌ์•ผ ํ•œ๋‹ค")์—๋Š” ํผ ์ˆ˜์ค€ ๋ฐฐ๋„ˆ๊ฐ€ ๋” ๋ช…ํ™•ํ•ฉ๋‹ˆ๋‹ค.

๋ฉ”์‹œ์ง€ ์Šคํƒ€์ผ์„ ์ž‘๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”. ๋Œ€๋ถ€๋ถ„์˜ ๋ฌธ์ œ๋Š” ์ธ๋ผ์ธ ํ•„๋“œ ํ…์ŠคํŠธ, ๊ต์ฐจ ํ•„๋“œ ๊ทœ์น™์€ ์ž‘์€ ๋ฐฐ๋„ˆ, ์งง์€ ํ™•์ธ์—๋Š” ํ† ์ŠคํŠธ๋ฅผ ์“ฐ๋Š” ์ •๋„๋ฉด ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

์›น๊ณผ ๋ชจ๋ฐ”์ผ ์ „๋ฐ˜์— ๊ฑธ์ณ ๋ฌธ๊ตฌ๋ฅผ ์ผ๊ด€๋˜๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”. ์›น ํผ์— "์œ ํšจํ•œ ๊ณ ๊ฐ์„ ์„ ํƒํ•˜์„ธ์š”"๋ผ๊ณ  ์ ์—ˆ๋‹ค๋ฉด ๋ชจ๋ฐ”์ผ ์•ฑ์— "Invalid FK" ๊ฐ™์€ ๋ฌธ๊ตฌ๋ฅผ ์“ฐ์ง€ ๋งˆ์„ธ์š”. ๊ฐ™์€ ์งง์€ ๋™์‚ฌ(โ€œ์„ ํƒโ€, โ€œ์ž…๋ ฅโ€, โ€œ์ œ๊ฑฐโ€)์™€ ๋™์ผํ•œ ํ†ค์„ ์‚ฌ์šฉํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ๋ฌด์—‡์„ ๊ธฐ๋Œ€ํ•ด์•ผ ํ• ์ง€ ํ•™์Šตํ•˜๋„๋ก ๋งŒ๋“œ์„ธ์š”.

AppMaster์—์„œ ๋นŒ๋“œํ•˜๋Š” ๊ฒฝ์šฐ, ์ด ๋งคํ•‘์€ ์˜๋„์ ์œผ๋กœ ์„ค๊ณ„ํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์—„๊ฒฉํ•˜๊ฒŒ ์œ ์ง€ํ•˜๊ณ  UI ๋กœ์ง์€ ์‹คํŒจ๋ฅผ ์ฐจ๋ถ„ํ•˜๊ณ  ๊ตฌ์ฒด์ ์ธ ์•ˆ๋‚ด๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค.

๋‹จ๊ณ„๋ณ„: ๋จผ์ € ๊ทœ์น™์„ ๋งŒ๋“ค๊ณ  ๊ทธ๋‹ค์Œ ํผ์„ ๋งŒ๋“ค๊ธฐ

ํผ์„ ๋จผ์ € ์„ค๊ณ„ํ•˜๋ฉด ๋์—†๋Š” ๋ชจ์„œ๋ฆฌ ์ผ€์ด์Šค๋ฅผ ์ซ“์•„๊ฐ€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๊ทœ์น™์„ ๋จผ์ € ์„ค๊ณ„ํ•˜๋ฉด UI๋Š” ์ด๋ฏธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์กด์žฌํ•˜๋Š” ๊ทœ์น™์„ ๋ฐ˜์˜ํ•˜๋ฏ€๋กœ ๋” ๋‹จ์ˆœํ•ด์ง‘๋‹ˆ๋‹ค.

์‹ค์šฉ์ ์ธ ๋นŒ๋“œ ์ˆœ์„œ:

  1. ์ •๋ง ์ค‘์š”ํ•œ ๋ช‡๋ช‡ ํ•„๋“œ๋ฅผ ์ ์–ด๋‘์„ธ์š”. ํ‰๋ฒ”ํ•œ ๋ง๋กœ โ€œ์œ ํšจโ€๋ฅผ ์ •์˜ํ•˜์„ธ์š”. ์˜ˆ: โ€œ์ด๋ฉ”์ผ์€ ๊ณ ์œ ํ•ด์•ผ ํ•œ๋‹คโ€, โ€œ์ˆ˜๋Ÿ‰์€ 1 ์ด์ƒ์ด์–ด์•ผ ํ•œ๋‹คโ€, โ€œ๋ชจ๋“  ์ฃผ๋ฌธ์€ ๊ณ ๊ฐ์— ์†ํ•ด์•ผ ํ•œ๋‹คโ€.
  2. ํ…Œ์ด๋ธ”๊ณผ ๊ด€๊ณ„๋ฅผ ๋ชจ๋ธ๋งํ•˜์„ธ์š”. ํ™”๋ฉด์„ ๊ทธ๋ฆฌ๊ธฐ ์ „์— ๋ฌด์—‡์ด ๋ฌด์—‡์— ์†ํ•˜๋Š”์ง€ ๊ฒฐ์ •ํ•˜์„ธ์š”.
  3. ๋น„ํ˜‘์ƒ ๊ทœ์น™์— ์ œ์•ฝ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”. ์ค‘๋ณต์—๋Š” ๊ณ ์œ  ์ œ์•ฝ, ํ•ญ์ƒ ์ฐธ์ด์–ด์•ผ ํ•˜๋Š” ๊ทœ์น™์—๋Š” ์ฒดํฌ ์ œ์•ฝ, ๊ด€๊ณ„์—๋Š” ์™ธ๋ž˜ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.
  4. ์ œ์•ฝ๊ณผ ์ผ์น˜ํ•˜๋„๋ก UI๋ฅผ ๋งŒ๋“œ์„ธ์š”. ํ•„์ˆ˜ ํ•„๋“œ๋ฅผ ํ‘œ์‹œํ•˜๊ณ , ์ ์ ˆํ•œ ์ž…๋ ฅ ์œ ํ˜•์„ ์‚ฌ์šฉํ•˜๋ฉฐ ๊ฐ„๋‹จํ•œ ํžŒํŠธ๋ฅผ ์ถ”๊ฐ€ํ•˜์„ธ์š”. UI๋Š” ์‚ฌ๋žŒ์„ ์•ˆ๋‚ดํ•ด์•ผ ํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ตœ์ข… ๊ด€๋ฌธ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  5. ์˜๋„์ ์œผ๋กœ ๊นจ๋ณด์„ธ์š”. ์ง€์ €๋ถ„ํ•œ ๊ฐ’์„ ๋ถ™์—ฌ๋„ฃ๊ณ , ์ค‘๋ณต์„ ์‹œ๋„ํ•˜๊ณ , ๋ˆ„๋ฝ๋œ ๊ด€๋ จ ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•ด๋ณด์„ธ์š”. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ ˆ์ด๋ธ”๊ณผ ์˜ค๋ฅ˜ ๋ฌธ๊ตฌ๋ฅผ ๊ฐœ์„ ํ•ด ๋ฌด์—‡์„ ๊ณ ์ณ์•ผ ํ• ์ง€ ๋ช…๋ฐฑํ•˜๊ฒŒ ํ•˜์„ธ์š”.

๋น ๋ฅธ ์˜ˆ์‹œ

๋‚ด๋ถ€์˜ "New Order" ํผ์„ ๋งŒ๋“ ๋‹ค๊ณ  ํ•ด๋ด…์‹œ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๊ณ ๊ฐ ์ด๋ฆ„์œผ๋กœ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์‹ค์ œ Customer ID(์™ธ๋ž˜ ํ‚ค)๋งŒ ๋ฐ›์•„๋“ค์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. UI์—์„œ๋Š” ์ด๊ฒŒ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•œ ํ”ฝ์ปค๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๊ณ ๊ฐ์„ ์„ ํƒํ•˜์ง€ ์•Š๊ณ  ์ œ์ถœํ•˜๋ฉด ๋ฉ”์‹œ์ง€๋Š” ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ์ €์žฅ ์˜ค๋ฅ˜ ๋Œ€์‹  ๋‹จ์ˆœํžˆ โ€œ๊ณ ๊ฐ์„ ์„ ํƒํ•˜์„ธ์š”โ€๋ผ๊ณ  ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์›น๊ณผ ๋ชจ๋ฐ”์ผ ํผ ์ „๋ฐ˜์— ๊ฑธ์ณ ๊ทœ์น™์„ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š๊ณ ๋„ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹ค์ œ ์‚ฌ๋žŒ๋“ค์ด ๋งŒ๋“œ๋Š” ์ค‘๋ณต์„ ๋ง‰๋Š” ๊ณ ์œ  ์ œ์•ฝ

์‹ค์ œ ๊ฐ€๋“œ๋ ˆ์ผ์„ ๊ฐ–์ถ˜ ํผ ๋งŒ๋“ค๊ธฐ
ํ™”๋ฉด์„ ๋งŒ๋“ค๊ธฐ ์ „์— ํ…Œ์ด๋ธ”์„ ์„ค๊ณ„ํ•˜๊ณ  ๊ณ ์œ , ์ฒดํฌ, FK ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”.
AppMaster ์‚ฌ์šฉํ•ด๋ณด๊ธฐ

๊ณ ์œ  ์ œ์•ฝ์€ "๋‹ค๋ฅธ ํ˜•ํƒœ์˜ ๊ฐ™์€ ๊ฒƒ"์ด ์Œ“์ด๋Š” ๊ฒƒ์„ ๋ง‰๋Š” ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ํผ์ด ๋†“์น˜๋Š” ์ค‘๋ณต๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ๊ฑฐ๋ถ€ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ๋žŒ๋“ค์ด ์‹ค์ˆ˜๋กœ ๋ฐ˜๋ณตํ•˜๋Š” ๊ฐ’๋“ค์— ๋Œ€ํ•ด ๊ณ ์œ  ์ œ์•ฝ์„ ์‚ฌ์šฉํ•˜์„ธ์š”: ์ด๋ฉ”์ผ, ์‚ฌ์šฉ์ž๋ช…, ์ธ๋ณด์ด์Šค ๋ฒˆํ˜ธ, ์ž์‚ฐ ํƒœ๊ทธ, ์‚ฌ๋ฒˆ, ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ์—์„œ ๋ถ™์—ฌ๋„ฃ์€ ํ‹ฐ์ผ“ ๋ฒˆํ˜ธ ๋“ฑ.

์ฒซ ๋ฒˆ์งธ ๊ฒฐ์ •์€ ๋ฒ”์œ„์ž…๋‹ˆ๋‹ค. ์–ด๋–ค ๊ฐ’์€ ์‹œ์Šคํ…œ ์ „์ฒด์—์„œ ๊ณ ์œ ํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ๊ณ (์‚ฌ์šฉ์ž๋ช…), ์–ด๋–ค ๊ฐ’์€ ๋ถ€๋ชจ ๊ทธ๋ฃน ๋‚ด์—์„œ๋งŒ ๊ณ ์œ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค(์กฐ์ง๋ณ„ ์ธ๋ณด์ด์Šค ๋ฒˆํ˜ธ, ์ฐฝ๊ณ ๋ณ„ ์ž์‚ฐ ํƒœ๊ทธ). ๋ฒ”์œ„๋ฅผ ์˜๋„์ ์œผ๋กœ ์„ ํƒํ•ด ์ •์ƒ์ ์ธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ง‰์ง€ ๋งˆ์„ธ์š”.

์‹ค์šฉ์ ์ธ ์‚ฌ๊ณ  ๋ฐฉ์‹:

  • ์ „์—ญ ๊ณ ์œ : ์‹œ์Šคํ…œ ์–ด๋””์—์„œ๋‚˜ ํ•˜๋‚˜์˜ ๊ฐ’๋งŒ ํ—ˆ์šฉ(์‚ฌ์šฉ์ž๋ช…, ๊ณต๊ฐœ ํ•ธ๋“ค)
  • ์กฐ์ง๋ณ„ ๊ณ ์œ : ํšŒ์‚ฌ/ํŒ€ ๋‚ด์—์„œ๋งŒ ๊ณ ์œ (invoce_number + org_id)
  • ์œ„์น˜๋ณ„ ๊ณ ์œ : ์‚ฌ์ดํŠธ ๋‚ด์—์„œ๋งŒ ๊ณ ์œ (asset_tag + location_id)

์ถฉ๋Œ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์ด ๊ทœ์น™๋งŒํผ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ณ ์œ  ์ œ์•ฝ์ด ์‹คํŒจํ•˜๋ฉด ๋‹จ์ˆœํžˆ โ€œ์ด๋ฏธ ์กด์žฌํ•จโ€์ด๋ผ๊ณ  ํ•˜์ง€ ๋งˆ์„ธ์š”. ๋ฌด์—‡์ด ์ถฉ๋Œํ–ˆ๋Š”์ง€์™€ ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค์Œ์— ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ์„ธ์š”. ์˜ˆ: โ€œ์ธ๋ณด์ด์Šค ๋ฒˆํ˜ธ 1047์ด Acme Co.์— ์ด๋ฏธ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. 1047-2๋ฅผ ์‹œ๋„ํ•˜๊ฑฐ๋‚˜ ๊ธฐ์กด ์ธ๋ณด์ด์Šค๋ฅผ ์—ฌ์„ธ์š”.โ€ UI๊ฐ€ ์•ˆ์ „ํ•˜๊ฒŒ ๊ธฐ์กด ๋ ˆ์ฝ”๋“œ๋ฅผ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ƒ์„ฑ์ผ์ด๋‚˜ ์†Œ์œ ์ž ๊ฐ™์€ ์ž‘์€ ํžŒํŠธ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋…ธ์ถœ๋˜์ง€ ์•Š๋Š” ์ •๋ณด๋ฅผ ๋ณด์ง€ ์•Š๊ณ ๋„ ํšŒ๋ณตํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

์ˆ˜์ • ์ž‘์—…(edit)์—๋Š” ํŠน๋ณ„ํ•œ ์ฃผ์˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ๋ฅผ ์ƒˆ ๋ ˆ์ฝ”๋“œ๋กœ ์ทจ๊ธ‰ํ•ด ์ž๊ธฐ ์ž์‹ ๊ณผ ์ถฉ๋Œ์„ ์ผ์œผํ‚ค๋Š” ์‹ค์ˆ˜๊ฐ€ ํ”ํ•ฉ๋‹ˆ๋‹ค. ์ €์žฅ ๋กœ์ง์ด ํ˜„์žฌ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ธ์ง€ํ•ด ์ž๊ธฐ ์ž์‹ ๊ณผ ๋น„๊ตํ•˜์ง€ ์•Š๋„๋ก ํ•˜์„ธ์š”.

AppMaster์—์„œ๋Š” Data Designer์—์„œ ๋จผ์ € ๊ณ ์œ  ๊ทœ์น™์„ ์ •์˜ํ•˜๊ณ  ํผ์— ์นœ์ ˆํ•œ ๋ฉ”์‹œ์ง€๋กœ ๋ฐ˜์˜ํ•˜์„ธ์š”. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ตœ์ข… ๊ด€๋ฌธ์ด๊ณ  UI๋Š” ์‹ค์ œ ๊ทœ์น™์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

ํ•ญ์ƒ ์ฐธ์ด์–ด์•ผ ํ•˜๋Š” ๊ทœ์น™์„ ์œ„ํ•œ ์ฒดํฌ ์ œ์•ฝ

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

์ข‹์€ ์ฒดํฌ๋Š” ๊ฐ„๋‹จํ•˜๊ณ  ์˜ˆ์ธก ๊ฐ€๋Šฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๊ทœ์น™์„ ์ถ”์ธกํ•  ์ˆ˜ ์—†๋‹ค๋ฉด ๊ณ„์† ์˜ค๋ฅ˜๋ฅผ ๊ฒช๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ฒดํฌ๋Š” ์‚ฌ์‹ค(fact)์— ์ง‘์ค‘ํ•˜๊ณ  ๋ณต์žกํ•œ ์ •์ฑ…์„ ๋„ฃ์ง€ ๋งˆ์„ธ์š”.

์ฆ‰์‹œ ํšจ๊ณผ๋ฅผ ๋ณด๋Š” ์ผ๋ฐ˜์ ์ธ ์ฒดํฌ ์ œ์•ฝ:

  • ๋ฒ”์œ„: ์ˆ˜๋Ÿ‰์€ 11000, ๋‚˜์ด๋Š” 13120
  • ํ—ˆ์šฉ ์ƒํƒœ: status๋Š” Draft, Submitted, Approved, Rejected ์ค‘ ํ•˜๋‚˜์—ฌ์•ผ ํ•จ
  • ์–‘์ˆ˜ ์ˆซ์ž: amount > 0, ํ• ์ธ์€ 0~100 ์‚ฌ์ด
  • ๋‚ ์งœ ์ˆœ์„œ: end_date >= start_date
  • ๋‹จ์ˆœ ๋…ผ๋ฆฌ: status = Approved ์ด๋ฉด approved_at ์€ null์ด ์•„๋‹ˆ์–ด์•ผ ํ•จ

์ฒดํฌ๋ฅผ ์นœ๊ทผํ•˜๊ฒŒ ๋А๋ผ๊ฒŒ ํ•˜๋Š” ์š”๋ น์€ UI ๋ฌธ๊ตฌ์ž…๋‹ˆ๋‹ค. ์ œ์•ฝ ์ด๋ฆ„์„ ๊ทธ๋Œ€๋กœ ๋ฐ˜๋ณตํ•˜์ง€ ๋ง๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ๋ฌด์—‡์„ ๋ฐ”๊ฟ”์•ผ ํ• ์ง€ ์•Œ๋ ค์ฃผ์„ธ์š”.

์ข‹์€ ํŒจํ„ด:

  • โ€œ์ˆ˜๋Ÿ‰์€ 1์—์„œ 1000 ์‚ฌ์ด์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.โ€
  • โ€œ์ƒํƒœ๋ฅผ ์„ ํƒํ•˜์„ธ์š”: Draft, Submitted, Approved, ๋˜๋Š” Rejected.โ€
  • โ€œ์ข…๋ฃŒ์ผ์€ ์‹œ์ž‘์ผ๊ณผ ๊ฐ™๊ฑฐ๋‚˜ ์ดํ›„์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.โ€
  • โ€œ๊ธˆ์•ก์€ 0๋ณด๋‹ค ์ปค์•ผ ํ•ฉ๋‹ˆ๋‹ค.โ€

๋…ธ์ฝ”๋“œ ๋นŒ๋”์ธ AppMaster์—์„œ๋Š” ์ฆ‰์‹œ ํ”ผ๋“œ๋ฐฑ์„ ์œ„ํ•ด ํผ์—์„œ ๊ฐ™์€ ์ฒดํฌ๋ฅผ ๋ฏธ๋Ÿฌ๋งํ•ด๋„ ๊ดœ์ฐฎ์ง€๋งŒ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ฒดํฌ ์ œ์•ฝ์„ ์ตœ์ข… ๊ฐ€๋“œ๋ ˆ์ผ๋กœ ์œ ์ง€ํ•˜์„ธ์š”. ๋‚˜์ค‘์— ์ƒˆ๋กœ์šด ํ™”๋ฉด์ด ์ถ”๊ฐ€๋˜์–ด๋„ ๊ทœ์น™์€ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

๊ด€๊ณ„๋ฅผ ์‹ค์ฒด๋กœ ๋งŒ๋“œ๋Š” ์™ธ๋ž˜ ํ‚ค

๋ชจ๋ธ์— ๋งž๊ฒŒ ํผ ์„ค๊ณ„ํ•˜๊ธฐ
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ทœ์น™๊ณผ ์ผ์น˜ํ•˜๋Š” ํ”ฝ์ปค์™€ ํ•„์ˆ˜ ํ•„๋“œ๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ์„ค๊ณ„ํ•˜์„ธ์š”.
UI ๋ฐ”๋กœ ๋งŒ๋“ค๊ธฐ

์™ธ๋ž˜ ํ‚ค(FK)๋Š” ๋‹จ์ˆœํ•œ ์•ฝ์†์„ ๊ฐ•์ œํ•ฉ๋‹ˆ๋‹ค: ํ•„๋“œ๊ฐ€ ๋‹ค๋ฅธ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฐ€๋ฆฌํ‚จ๋‹ค๋ฉด ๊ทธ ๋ ˆ์ฝ”๋“œ๋Š” ์‹ค์ œ๋กœ ์กด์žฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Order๊ฐ€ CustomerId๋ฅผ ๊ฐ€์ง„๋‹ค๋ฉด, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” Customers ํ…Œ์ด๋ธ”์— ์—†๋Š” ๊ณ ๊ฐ์„ ์ฐธ์กฐํ•˜๋Š” ์ฃผ๋ฌธ์„ ๊ฑฐ๋ถ€ํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ์ค‘์š”ํ•œ ์ด์œ ๋Š” ๊ด€๊ณ„ ํ•„๋“œ๊ฐ€ '๊ฑฐ์˜ ๋งž์Œ' ๋ฐ์ดํ„ฐ๊ฐ€ ๋“œ๋Ÿฌ๋‚˜๋Š” ์ง€์ ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€ ๊ณ ๊ฐ ์ด๋ฆ„์„ ์•ฝ๊ฐ„ ์ž˜๋ชป ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜ ์˜ค๋ž˜๋œ ID๋ฅผ ๋ถ™์—ฌ๋„ฃ๊ฑฐ๋‚˜ ์–ด์ œ ์‚ญ์ œ๋œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. FK๊ฐ€ ์—†์œผ๋ฉด ๊ทธ๋Ÿฐ ์‹ค์ˆ˜๋Š” ๋ณด๊ณ ์„œ๋‚˜ ์ธ๋ณด์ด์Šค, ์ง€์› ์ž‘์—…์—์„œ ๋ฌธ์ œ๊ฐ€ ๋  ๋•Œ๊นŒ์ง€ ๋“œ๋Ÿฌ๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

UI ํŒจํ„ด์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค: ์ž์œ  ํ…์ŠคํŠธ ๋Œ€์‹  ์•ˆ์ „ํ•œ ์„ ํƒ์ง€๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. "Customer"์— ํ…์ŠคํŠธ ์ž…๋ ฅ์„ ๋‘์ง€ ๋ง๊ณ , ์„ ํƒ(select), ๊ฒ€์ƒ‰, ์ž๋™์™„์„ฑ ๋“ฑ์„ ์‚ฌ์šฉํ•ด ์‹ค์ œ ๊ณ ๊ฐ์˜ ID๋ฅผ ๋’ค์—์„œ ์ €์žฅํ•˜์„ธ์š”. ๋…ธ์ฝ”๋“œ ๋นŒ๋”(์˜ˆ: AppMaster UI ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ชจ๋ธ์— ๋ฐ”์ธ๋”ฉ)์—์„œ๋Š” ๋“œ๋กญ๋‹ค์šด์ด๋‚˜ ๊ฒ€์ƒ‰ ๋ฆฌ์ŠคํŠธ๋ฅผ Customers ํ…Œ์ด๋ธ”์— ๋ฐ”์ธ๋”ฉํ•˜๊ณ  ์„ ํƒ๋œ ๋ ˆ์ฝ”๋“œ ์ฐธ์กฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์‹์ž…๋‹ˆ๋‹ค.

์ฐธ์กฐ๋œ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์—†๊ฑฐ๋‚˜ ์‚ญ์ œ๋œ ๊ฒฝ์šฐ์˜ ๋™์ž‘์„ ๋ฏธ๋ฆฌ ๊ฒฐ์ •ํ•˜์„ธ์š”. ๋Œ€๋ถ€๋ถ„ ํŒ€์€ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜๋ฅผ ํƒํ•ฉ๋‹ˆ๋‹ค:

  • ๊ด€๋ จ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์žˆ์„ ๋•Œ ์‚ญ์ œ๋ฅผ ๊ธˆ์ง€(๊ณ ๊ฐ, ์ œํ’ˆ, ๋ถ€์„œ์— ํ”ํ•จ)
  • ์‚ญ์ œ ๋Œ€์‹  ๋ณด๊ด€(์•„์นด์ด๋ธŒ)ํ•ด ๊ธฐ๋ก์„ ๋ณด์กดํ•˜๋ฉด์„œ ๊ด€๊ณ„๊ฐ€ ๊นจ์ง€์ง€ ์•Š๊ฒŒ ํ•จ
  • ์ •๋ง ์•ˆ์ „ํ•œ ๊ฒฝ์šฐ์—๋งŒ cascade delete ์ ์šฉ(๋น„์ฆˆ๋‹ˆ์Šค ๋ฐ์ดํ„ฐ์—์„œ๋Š” ๋“œ๋ฌพ)
  • ๊ด€๊ณ„๊ฐ€ ์„ ํƒ์‚ฌํ•ญ์ด๋ฉด ์ฐธ์กฐ๋ฅผ ๋นˆ ๊ฐ’์œผ๋กœ ์„ค์ •

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

FK๊ฐ€ ์‹คํŒจํ•˜๋ฉด ์›์‹œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด์—ฌ์ฃผ์ง€ ๋งˆ์„ธ์š”. ๋ฌด์Šจ ์ผ์ด ์žˆ์—ˆ๋Š”์ง€ ํ‰๋ฒ”ํ•œ ๋ฌธ์žฅ์œผ๋กœ ์•Œ๋ ค์ฃผ์„ธ์š”: โ€œ์„ ํƒํ•œ ๊ณ ๊ฐ์ด ๋” ์ด์ƒ ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์œ ํšจํ•œ ๊ณ ๊ฐ์„ ์„ ํƒํ•˜์„ธ์š”.โ€ ์ด ํ•œ ๋ฌธ์žฅ์ด ๊นจ์ง„ ๊ด€๊ณ„๊ฐ€ ํผ์ง€๋Š” ๊ฒƒ์„ ๋ง‰์Šต๋‹ˆ๋‹ค.

UI ํ๋ฆ„์—์„œ ์ œ์•ฝ ์‹คํŒจ ์ฒ˜๋ฆฌํ•˜๊ธฐ

์‚ฌ๋žŒ์ด ์ดํ•ดํ•˜๋Š” ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€ ํ‘œ์‹œ
์ œ์•ฝ ์‹คํŒจ๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ๋น ๋ฅด๊ฒŒ ๊ณ ์น  ์ˆ˜ ์žˆ๋Š” ์ฐจ๋ถ„ํ•œ ํ•„๋“œ ์˜ค๋ฅ˜๋กœ ๋ฐ”๊พธ์„ธ์š”.
์˜ค๋ฅ˜ ๋งคํ•‘

์ข‹์€ ํผ์€ ์‹ค์ˆ˜๋ฅผ ์กฐ๊ธฐ์— ์žก์ง€๋งŒ ์ž์ฒด๊ฐ€ ์ตœ์ข… ์‹ฌ์‚ฌ๊ด€์ธ ๊ฒƒ์ฒ˜๋Ÿผ ๊ตด์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. UI๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋” ๋น ๋ฅด๊ฒŒ ์ž‘์—…ํ•˜๋„๋ก ๋„์™€์ฃผ๊ณ , ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ €์žฅ๋˜์ง€ ์•Š๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ ์ธก ๊ฒ€์‚ฌ๋Š” ๋ช…๋ฐฑํ•œ ๊ฒƒ๋“ค์„ ์žก์Šต๋‹ˆ๋‹ค: ํ•„์ˆ˜ ํ•„๋“œ๊ฐ€ ๋น„์–ด ์žˆ๊ฑฐ๋‚˜ ์ด๋ฉ”์ผ์— @๊ฐ€ ์—†๊ฑฐ๋‚˜ ์ˆซ์ž๊ฐ€ ๋ฒ”์œ„๋ฅผ ํฌ๊ฒŒ ๋ฒ—์–ด๋‚˜๋Š” ๊ฒฝ์šฐ. ์ฆ‰์‹œ ๋ณด์—ฌ์ฃผ๋ฉด ํผ์ด ๋ฐ˜์‘์„ฑ์ด ์ข‹์•„ ๋ณด์ด๊ณ  ์‹คํŒจ ์ œ์ถœ์„ ์ค„์ž…๋‹ˆ๋‹ค.

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

์ œ์•ฝ ์˜ค๋ฅ˜๊ฐ€ ์„œ๋ฒ„์—์„œ ๋Œ์•„์˜ฌ ๋•Œ๋Š” ์‘๋‹ต์„ ์˜ˆ์ธก ๊ฐ€๋Šฅํ•˜๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”:

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

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

์‹œ๊ฐ„์ด ์ง€๋‚˜๋„ ๊นจ๋—ํ•œ ๋‚ด๋ถ€ ์ฃผ๋ฌธ ํผ ์˜ˆ์‹œ

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

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

Order ํ…Œ์ด๋ธ”์—์„œ ๊ฐ•์ œํ•  ํ•ญ๋ชฉ ์˜ˆ:

  • ๊ณ ์œ  ์ฃผ๋ฌธ ๋ฒˆํ˜ธ: ๊ฐ order_number๋Š” ๋‹ฌ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ํ•ญ์ƒ ์ฐธ์ธ ๊ทœ์น™์„ ์œ„ํ•œ ์ฒดํฌ: quantity > 0, unit_price >= 0, ํ•„์š”ํ•˜๋ฉด unit_price <= 100000 ๊ฐ™์€ ์ œ์•ฝ.
  • Customer๋กœ์˜ ์™ธ๋ž˜ ํ‚ค: ๋ชจ๋“  ์ฃผ๋ฌธ์€ ์‹ค์ œ ๊ณ ๊ฐ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฐ€๋ฆฌ์ผœ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‹ค์‚ฌ์šฉ์—์„œ ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๋Š”์ง€ ๋ณด์„ธ์š”.

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

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

์ด ํŒจํ„ด์€ ์‹œ๊ฐ„์ด ์ง€๋‚˜๋„ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋งค์ผ ์กฐ์‹ฌํ•˜๋ผ๊ณ  ์˜์กดํ•˜์ง€ ์•Š๊ณ  ์ฃผ๋ฌธ์„ ์ผ๊ด€๋˜๊ฒŒ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.

ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ์˜ค๋ฅ˜์™€ ๋”๋Ÿฌ์šด ๋ฐ์ดํ„ฐ๋ฅผ ๋งŒ๋“œ๋Š” ํ”ํ•œ ์‹ค์ˆ˜

๊ฐ„๋‹จํ•œ ์ฒดํฌ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธ
์ˆ˜๋Ÿ‰ > 0, ์‹œ์ž‘์ผ์ด ์ข…๋ฃŒ์ผ ์ด์ „ ๊ฐ™์€ ํ•ญ์ƒ ์ฐธ์ธ ๊ทœ์น™์„ ๊ฐ•์ œํ•˜์„ธ์š”.
์ฒดํฌ ์ถ”๊ฐ€

๊ฐ€์žฅ ๋น ๋ฅด๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์—‰๋ง์œผ๋กœ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์€ UI ์ „์šฉ ๊ทœ์น™์—๋งŒ ์˜์กดํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํผ์˜ ํ•„์ˆ˜ ํ•„๋“œ๋Š” ๋„์›€์ด ๋˜์ง€๋งŒ ์ž„ํฌํŠธ, ํ†ตํ•ฉ, ๊ด€๋ฆฌ์ž ํŽธ์ง‘, ๋˜๋Š” ๊ฐ™์€ ํ…Œ์ด๋ธ”์„ ์“ฐ๋Š” ๋‹ค๋ฅธ ํ™”๋ฉด์—๋Š” ๋ณดํ˜ธ๊ฐ€ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ž˜๋ชป๋œ ๊ฐ’์„ ํ—ˆ์šฉํ•˜๋ฉด ๋‚˜์ค‘์— ์–ด๋””์„œ๋“  ๋ณด์ž…๋‹ˆ๋‹ค.

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

์—…๋ฐ์ดํŠธ๋Š” ์ž์ฃผ ๊ฐ„๊ณผ๋ฉ๋‹ˆ๋‹ค. ํŽธ์ง‘ ์‹œ ์ž๊ธฐ ์ž์‹ ๊ณผ์˜ ์ค‘๋ณต ์ถฉ๋Œ์€ ๊ณ ์ „์  ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค: ์‚ฌ์šฉ์ž๊ฐ€ ๋ ˆ์ฝ”๋“œ๋ฅผ ์—ด์–ด ๊ด€๋ จ ์—†๋Š” ํ•„๋“œ๋ฅผ ๋ฐ”๊พธ์—ˆ๋Š”๋ฐ ์ €์žฅ์ด ์‹คํŒจํ•˜๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. ์ƒํƒœ ์ „ํ™˜๋„ ํ•จ์ •์ž…๋‹ˆ๋‹ค. ๋ ˆ์ฝ”๋“œ๊ฐ€ Draft โ†’ Approved โ†’ Cancelled๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ฒดํฌ๊ฐ€ ์ „์ฒด ๊ฒฝ๋กœ๋ฅผ ํ—ˆ์šฉํ•˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

์™ธ๋ž˜ ํ‚ค ์‹คํŒจ๋Š” ๊ฐ€์žฅ ํ”ผํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค: ์‚ฌ๋žŒ๋“ค์ด ID๋ฅผ ์ง์ ‘ ํƒ€์ดํ•‘ํ•˜๋„๋ก ํ—ˆ์šฉํ•˜๋Š” ๊ฒƒ. ๊ด€๊ณ„ ํ•„๋“œ๋ฅผ ์ž์œ  ํ…์ŠคํŠธ๋กœ ๋‘๋ฉด ๊นจ์ง„ ๊ด€๊ณ„๊ฐ€ ์ƒ๊น๋‹ˆ๋‹ค. ๊ธฐ์กด ๋ ˆ์ฝ”๋“œ์— ๋ฐ”์ธ๋”ฉ๋œ ์„ ํƒ๊ธฐ๋ฅผ ์„ ํ˜ธํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์„ ๋ฐฑ์Šคํƒ‘์œผ๋กœ ์œ ์ง€ํ•˜์„ธ์š”.

๋งˆ์ง€๋ง‰์œผ๋กœ ์›์‹œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์˜ค๋ฅ˜๋Š” ํŒจ๋‹‰๊ณผ ์ง€์› ํ‹ฐ์ผ“์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์—„๊ฒฉํ•œ ์ œ์•ฝ์„ ์œ ์ง€ํ•˜๋ฉด์„œ๋„ ์‚ฌ๋žŒ ์นœํ™”์  ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ„๋‹จํ•œ ์ˆ˜์ • ๋ชฉ๋ก:

  • ์ œ์•ฝ์„ ๋‹จ์ˆœํ•œ ํผ ๊ทœ์น™์ด ์•„๋‹Œ ์ง„์‹ค์˜ ์ถœ์ฒ˜๋กœ ์œ ์ง€ํ•˜์„ธ์š”
  • ์‹ค์ œ ์›Œํฌํ”Œ๋กœ(์˜ˆ์™ธ ํฌํ•จ)๋ฅผ ๊ณ ๋ คํ•ด ์ฒดํฌ๋ฅผ ์„ค๊ณ„ํ•˜์„ธ์š”
  • ์ƒ์„ฑ๋ฟ ์•„๋‹ˆ๋ผ ์ˆ˜์ •๊ณผ ์ƒํƒœ ์ „ํ™˜๋„ ์ฒ˜๋ฆฌํ•˜์„ธ์š”
  • ๊ด€๊ณ„์—๋Š” ์‹๋ณ„์ž ์ž…๋ ฅ ๋Œ€์‹  ํ”ฝ์ปค๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”
  • ์ œ์•ฝ ์‹คํŒจ๋ฅผ ํ•„๋“œ ์ˆ˜์ค€์˜ ์นœ์ ˆํ•œ ๋ฉ”์‹œ์ง€๋กœ ๋งคํ•‘ํ•˜์„ธ์š”

๋…ธ์ฝ”๋“œ ํŒ€์„ ์œ„ํ•œ ๋น ๋ฅธ ์ฒดํฌ๋ฆฌ์ŠคํŠธ์™€ ๋‹ค์Œ ๋‹จ๊ณ„

ํผ์„ ๋ฐฐํฌํ•˜๊ธฐ ์ „์— ๊ธ‰ํ•˜๊ฒŒ, ๊ธฐ๋ถ„ ๋‚˜์œ ๋‚ , ๋ณต์‚ฌ๋œ ๋ฐ์ดํ„ฐ๋กœ ์‚ฌ์šฉ๋  ๊ฒƒ์„ ๊ฐ€์ •ํ•˜์„ธ์š”. ๊ฐ€์žฅ ์•ˆ์ „ํ•œ ์ ‘๊ทผ์€ ํผ ๊ฒ€์ฆ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์„ ๋‘์–ด UI๊ฐ€ ๋†“์ณ๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ง„์‹ค์„ ๊ฐ•์ œํ•˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ถœ์‹œ ์ „ ๋น ๋ฅธ ์ ๊ฒ€

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์“ฐ๋Š” ๋ชจ๋“  ํผ์—์„œ ๋‹ค์Œ์„ ํ™•์ธํ•˜์„ธ์š”:

  • ์ค‘๋ณต: ๊ณ ์œ ํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ์„ ์‹๋ณ„(์ด๋ฉ”์ผ, ์ฃผ๋ฌธ ๋ฒˆํ˜ธ, ์™ธ๋ถ€ ID)ํ•˜๊ณ  ๊ณ ์œ  ๊ทœ์น™์ด ์žˆ๋Š”์ง€ ํ™•์ธ
  • ๋ˆ„๋ฝ๋œ ๊ด€๊ณ„: ํ•„์š”ํ•œ ๋ชจ๋“  ๊ด€๊ณ„๊ฐ€ ๊ฐ•์ œ๋˜๋Š”์ง€ ํ™•์ธ(์˜ˆ: ์ฃผ๋ฌธ์€ ๊ณ ๊ฐ์„ ๊ฐ€์ ธ์•ผ ํ•จ)
  • ์ž˜๋ชป๋œ ๋ฒ”์œ„: ๋ฐ˜๋“œ์‹œ ๋ฒ”์œ„ ๋‚ด์— ์žˆ์–ด์•ผ ํ•˜๋Š” ๊ฐ’์— ์ฒดํฌ ์ถ”๊ฐ€(quantity > 0, discount 0~100 ๋“ฑ)
  • ํ•„์ˆ˜ ํ•„๋“œ: ํ•„์ˆ˜ ๋ฐ์ดํ„ฐ๋Š” UI ํ•„์ˆ˜ ํ‘œ์‹œ ๋ฟ ์•„๋‹ˆ๋ผ DB ๋ ˆ๋ฒจ์—์„œ๋„ ๊ฐ•์ œ
  • ์•ˆ์ „ํ•œ ๊ธฐ๋ณธ๊ฐ’: ์ž๋™ ์ฑ„์šธ ๊ฐ’์„ ๊ฒฐ์ •(status = "Draft" ๋“ฑ)ํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ถ”์ธกํ•˜์ง€ ์•Š๊ฒŒ ํ•จ

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

AppMaster์—์„œ์˜ ๋‹ค์Œ ๋‹จ๊ณ„

AppMaster์—์„œ ๋นŒ๋“œ ์ค‘์ด๋ผ๋ฉด(Data Designer์—์„œ) ๋จผ์ € ๊ทœ์น™์„ ๋ชจ๋ธ๋ง(unique, check, foreign keys)ํ•œ ๋’ค ์›น ๋˜๋Š” ๋ชจ๋ฐ”์ผ UI ๋นŒ๋”์—์„œ ํผ์„ ๋งŒ๋“ค๊ณ  Business Process Editor์— ์ €์žฅ ๋กœ์ง์„ ์—ฐ๊ฒฐํ•˜์„ธ์š”. ์ œ์•ฝ์ด ์‹คํŒจํ•˜๋ฉด ์˜ค๋ฅ˜๋ฅผ ์žก์•„ ํ•œ ๊ฐ€์ง€ ๋ช…ํ™•ํ•œ ํ–‰๋™(๋ฌด์—‡์„ ๋ฐ”๊ฟ€์ง€, ์–ด๋””์—์„œ ๋ฐ”๊ฟ€์ง€)์„ ์ œ์•ˆํ•˜๋„๋ก ๋งคํ•‘ํ•˜์„ธ์š”.

์˜ค๋ฅ˜ ๋ฌธ๊ตฌ๋Š” ์ฐจ๋ถ„ํ•˜๊ณ  ์ผ๊ด€๋˜๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”. ๋น„๋‚œํ•˜๋Š” ์–ด์กฐ๋ฅผ ํ”ผํ•˜์„ธ์š”. โ€œ์ด๋ฉ”์ผ์ด ์œ ํšจํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹คโ€๋ณด๋‹ค๋Š” โ€œ๊ณ ์œ ํ•œ ์ด๋ฉ”์ผ์„ ์‚ฌ์šฉํ•˜์„ธ์š”โ€ ๊ฐ™์€ ๋ฌธ๊ตฌ๋ฅผ ์„ ํ˜ธํ•˜์„ธ์š”. ๊ฐ€๋Šฅํ•˜๋ฉด ์ถฉ๋Œํ•œ ๊ฐ’์ด๋‚˜ ์š”๊ตฌ ๋ฒ”์œ„๋ฅผ ๋ณด์—ฌ์ค˜์„œ ๊ณ ์น˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“œ์„ธ์š”.

ํ•˜๋‚˜์˜ ์‹ค์ œ ํผ(์˜ˆ: "Create Customer" ๋˜๋Š” "New Order")์„ ์„ ํƒํ•ด ์—”๋“œํˆฌ์—”๋“œ๋กœ ๋งŒ๋“ค๊ณ  ํŒ€์˜ ์‹ค์ œ ๊ทธ๋‚ ๊ทธ๋‚  ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ด ์—‰๋ง์œผ๋กœ ๋งŒ๋“ค์–ด ๋ณด๋ฉฐ ๊ฒ€์ฆํ•˜์„ธ์š”.

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

ํผ UI ๋Œ€์‹  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์œ ํšจ์„ฑ์„ ๊ฐ•์ œํ•ด์•ผ ํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

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

์ผ๋ฐ˜์ ์ธ ๋น„์ฆˆ๋‹ˆ์Šค ํผ์—์„œ ์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์ด ๊ฐ€์žฅ ์ค‘์š”ํ•œ๊ฐ€์š”?

์‹ค์ œ ๋น„์ฆˆ๋‹ˆ์Šค ๋ฐ์ดํ„ฐ๋ฅผ ๋ง๊ฐ€๋œจ๋ฆฌ๋Š” ๋Œ€๋ถ€๋ถ„์˜ ๋ฌธ์ œ๋ฅผ ๋ง‰๋Š” ๊ธฐ๋ณธ์— ์ง‘์ค‘ํ•˜์„ธ์š”: ๊ณ ์œ (Unique) ๋Š” ์ค‘๋ณต์„ ๋ง‰๊ณ , ์ฒดํฌ(Check) ๋Š” ํ•ญ์ƒ ์ฐธ์ด์–ด์•ผ ํ•˜๋Š” ๊ทœ์น™์„ ๋ณด์žฅํ•˜๋ฉฐ, ์™ธ๋ž˜ ํ‚ค(Foreign keys) ๋Š” ๊ด€๊ณ„์˜ ์‹ค์ฒด์„ฑ์„ ์ง€ํ‚ต๋‹ˆ๋‹ค. ์ž„ํฌํŠธ๋‚˜ ์˜ˆ์™ธ ์ƒํ™ฉ๊นŒ์ง€ ๊ณ ๋ คํ•ด ์ ˆ๋Œ€ ์œ„๋ฐ˜๋˜๋ฉด ์•ˆ ๋˜๋Š” ๊ทœ์น™๋งŒ ์ถ”๊ฐ€ํ•˜์„ธ์š”.

์–ธ์ œ ๊ณ ์œ  ์ œ์•ฝ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๊ณ , ์ ์ ˆํ•œ ๋ฒ”์œ„๋Š” ์–ด๋–ป๊ฒŒ ์ •ํ•˜๋‚˜์š”?

๊ฐ’์ด ํŠน์ • ๋ฒ”์œ„์—์„œ ํ•œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์‹๋ณ„ํ•ด์•ผ ํ•  ๋•Œ ๊ณ ์œ  ์ œ์•ฝ์„ ์‚ฌ์šฉํ•˜์„ธ์š”. ์ด๋ฉ”์ผ, ์ธ๋ณด์ด์Šค ๋ฒˆํ˜ธ, ์‚ฌ๋ฒˆ์ฒ˜๋Ÿผ ๊ธฐ๋ก์„ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. ๋จผ์ € ๋ฒ”์œ„(scope)๋ฅผ ์ •ํ•˜์„ธ์š”(์ „์—ญ vs ์กฐ์ง๋ณ„/์œ„์น˜๋ณ„) โ€” ๊ทธ๋ž˜์•ผ ์ •์ƒ์  ๋ฐ˜๋ณต์„ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ๋ง‰์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž๋ฅผ ์งœ์ฆ๋‚˜๊ฒŒ ํ•˜์ง€ ์•Š๋Š” ์ข‹์€ ์ฒดํฌ ์ œ์•ฝ์€ ์–ด๋–ค ๋ชจ์Šต์ธ๊ฐ€์š”?

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

์™ธ๋ž˜ ํ‚ค๋Š” ์–ด๋–ป๊ฒŒ ๋„์›€์ด ๋˜๋ฉฐ UI๋Š” ๋ฌด์—‡์„ ๋‹ค๋ฅด๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”?

์™ธ๋ž˜ ํ‚ค๋Š” โ€˜๊ฑฐ์˜ ๋งž๋Š”โ€™ ์ฐธ์กฐ๋ฅผ ๋ง‰์•„์ค๋‹ˆ๋‹ค. ์ฃผ๋ฌธ์ด ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๊ณ ๊ฐ์„ ๊ฐ€๋ฆฌํ‚ค๋ฉด ์•ˆ ๋ฉ๋‹ˆ๋‹ค. UI์—์„œ๋Š” ์ž์œ  ์ž…๋ ฅ ๋Œ€์‹  ํ”ฝ์ปค, ๊ฒ€์ƒ‰, ์ž๋™์™„์„ฑ ๊ฐ™์€ ์•ˆ์ „ํ•œ ์„ ํƒ์ง€๋ฅผ ์‚ฌ์šฉํ•ด ๋ ˆ์ด๋ธ”์ด ์•„๋‹Œ ๊ณ ๊ฐ์˜ ID๋ฅผ ์ €์žฅํ•˜์„ธ์š”.

์›์‹œ ์ œ์•ฝ ์˜ค๋ฅ˜๋ฅผ ๋ช…ํ™•ํ•œ ์‚ฌ๋žŒ ์นœํ™”์  ๋ฉ”์‹œ์ง€๋กœ ๋ฐ”๊พธ๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ• ๊นŒ์š”?

๊ฐ ์ œ์•ฝ์„ โ€˜์˜ค๋ฅ˜ ๊ณ„์•ฝโ€™์ฒ˜๋Ÿผ ๋‹ค๋ฃจ์„ธ์š”: ๊ธฐ์ˆ ์  ์‹คํŒจ๋ฅผ ๋ฌด์Šจ ์ผ์ด์—ˆ๊ณ  ์–ด๋–ป๊ฒŒ ๊ณ ์น˜๋Š”์ง€ ์•Œ๋ ค์ฃผ๋Š” ๋ฌธ์žฅ์œผ๋กœ ๋ฐ”๊พธ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์›์‹œ ๊ณ ์œ  ์œ„๋ฐ˜์„ โ€œ์ด ์ด๋ฉ”์ผ์€ ์ด๋ฏธ ์‚ฌ์šฉ ์ค‘์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์ด๋ฉ”์ผ์„ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๋กœ๊ทธ์ธํ•˜์„ธ์š”.โ€ ์ฒ˜๋Ÿผ ๋ฐ”๊ฟ” ๋ณด์—ฌ์ฃผ์„ธ์š”.

ํผ์—์„œ ์ œ์•ฝ ๊ด€๋ จ ์˜ค๋ฅ˜๋Š” ์–ด๋””์— ํ‘œ์‹œํ•ด์•ผ ํ•˜๋‚˜์š”?

๋‹จ์ผ ํ•„๋“œ ๊ด€๋ จ ์˜ค๋ฅ˜๋Š” ํ•ด๋‹น ํ•„๋“œ ์˜†์— ๋ฐ”๋กœ ๋ณด์—ฌ์ฃผ๊ณ , ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์€ ๊ทธ๋Œ€๋กœ ์œ ์ง€ํ•˜์„ธ์š”. ๊ต์ฐจ ํ•„๋“œ ๊ทœ์น™(์˜ˆ: ์‹œ์ž‘/์ข…๋ฃŒ์ผ)์€ ํผ ์ƒ๋‹จ์˜ ๋ฐฐ๋„ˆ๋กœ ๊ฐ„๋‹จํžˆ ์•Œ๋ฆฌ๊ณ  ๊ฐ€์žฅ ๊ด€๋ จ ์žˆ๋Š” ํ•„๋“œ๋ฅผ ์—ฌ์ „ํžˆ ๊ฐ•์กฐํ•˜๋ฉด ๊ณ ์น˜๊ธฐ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์ด ์žˆ๋Š”๋ฐ๋„ ํด๋ผ์ด์–ธํŠธ์ธก ๊ฒ€์‚ฌ๊ฐ€ ํ•„์š”ํ•œ๊ฐ€์š”?

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

ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ์˜ค๋ฅ˜๋‚˜ ๋”๋Ÿฌ์šด ๋ฐ์ดํ„ฐ๋ฅผ ์ดˆ๋ž˜ํ•˜๋Š” ํ”ํ•œ ์‹ค์ˆ˜๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

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

์ด ์ ‘๊ทผ๋ฒ•์„ AppMaster์—์„œ ๊ณผ๋„ํ•˜๊ฒŒ ๋ณต์žกํ•˜๊ฒŒ ๋งŒ๋“ค์ง€ ์•Š๊ณ  ์ ์šฉํ•˜๋ ค๋ฉด?

๋จผ์ € Data Designer์—์„œ ๋ฐ์ดํ„ฐ์™€ ์ œ์•ฝ์„ ๋ชจ๋ธ๋งํ•œ ๋’ค ํผ์„ ๋งŒ๋“ค๊ณ , ์ œ์•ฝ ์‹คํŒจ๋ฅผ UI์—์„œ ์•Œ์•„๋ณด๊ธฐ ์‰ฌ์šด ๋ฉ”์‹œ์ง€๋กœ ๋งคํ•‘ํ•˜์„ธ์š”. AppMaster์—์„œ๋Š” ๋ชจ๋ธ์— unique/check/FK๋ฅผ ์ •์˜ํ•˜๊ณ  Business Process Editor์—์„œ ์ €์žฅ ๋กœ์ง์„ ์—ฐ๊ฒฐํ•œ ๋‹ค์Œ, ์‹คํŒจ ์‹œ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฌด์—‡์„ ํ•ด์•ผ ํ• ์ง€ ํ•œ ๊ฐ€์ง€ ๋ช…ํ™•ํ•œ ํ–‰๋™์„ ์ œ์•ˆํ•˜๋Š” ํ๋ฆ„์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ž…๋‹ˆ๋‹ค.

์‰ฌ์šด ์‹œ์ž‘
๋ฉ‹์ง„๋งŒ๋“ค๊ธฐ

๋ฌด๋ฃŒ ์š”๊ธˆ์ œ๋กœ AppMaster๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”.
์ค€๋น„๊ฐ€ ๋˜๋ฉด ์ ์ ˆํ•œ ๊ตฌ๋…์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๋‹ค
๋…ธ์ฝ”๋“œ ์•ฑ์—์„œ ํผ ๊ฒ€์ฆ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์กฐ๊ฑด | AppMaster