ãªã¬ãŒã·ã§ãã« ããŒã¿ããŒã¹ã«ããã æ£èŠåã¯ãããŒã¿ããŒã¹ã®ã¹ããŒãæ§é ãæé©ãªæ¹æ³ã§ç·šæããããã«äœ¿çšãããäœç³»çãªææ³ã§ããããŒã¿ã®åé·æ§ãäžæŽåæ§ãå埩æ§ãæå°éã«æããªãããããŒã¿ã®æŽåæ§ã確ä¿ããåç §æŽåæ§ã®å¶çŽãé©çšããããšãç®çãšããŠããŸããé©åã«æ£èŠåãããšãåããŒã¿ãæ£ç¢ºã« 1 ãæã«ä¿åãããããããšã©ãŒãææ§ãã軜æžãããŸãããŸããåé·ããŒã¿ãåé€ããé¢é£ããããŒã¿èŠçŽ ãçµ±åãããšã³ãã£ãã£éã®æç¢ºãªé¢ä¿ãæäŸããããšã«ãããããŒã¿ããŒã¹ã®å¹çæ§ãä¿å®æ§ãæè»æ§ãåäžããŸãã
æ£èŠåã¯ããªã¬ãŒã·ã§ãã« ã¢ãã«èªäœãçºæããã®ãšåãã³ã³ãã¥ãŒã¿ãŒç§åŠè ã§ãã EF Codd ã«ãã£ãŠåããŠå°å ¥ãããŸãããæ£èŠåã®äž»ãªç®çã¯ãç°åžžãäŸåé¢ä¿ã®åé¡ãªã©ãæ§é ãäžååãªããŒã¿ããŒã¹èšèšã«ãã£ãŠçºçããå¯èœæ§ã®ããããŸããŸãªåé¡ãé²ãããšã§ããç°åžžãšã¯ãããŒã¿ã®è¿œå ã倿Žãå逿ã«çºçããå¯èœæ§ã®ããäžæŽåã®ããšã§ãããäŸåé¢ä¿ã®åé¡ã«ããããŒã¿ããŒã¹ã®ä¿å®ãå°é£ã«ãªãããšã©ãŒãçºçãããããªããŸãã
æ£èŠåã¯ã第 1 æ£èŠåœ¢ (1NF) ãã第 5 æ£èŠåœ¢ (5NF) ãŸã§ããæ£èŠåœ¢ã(NF) ãšåŒã°ããããŸããŸãªæ®µéã§å®è¡ãããŸãã忣èŠåœ¢ã¯ç¹å®ã®ã¬ãã«ã®æ£èŠåã衚ããåŸç¶ã®åæ£èŠåœ¢ã¯æ¬¡ã®ããã«è¿œå ã¬ãã«ã®æé©åãæäŸããŸãã
1. ç¬¬äžæ£èŠåœ¢ (1NF): 1NF ã§ã¯ãããŒãã«ã«ã¯äž»ããŒãå¿ èŠã§ãå屿§ã«ã¯ã¢ãããã¯å€ã®ã¿ãå«ãŸããŠããå¿ èŠããããŸããã€ãŸããå€ãç¹°ãè¿ããããè€æ°ã®éšåã«åå²ãããããŠã¯ãªããŸãããè€æ°å€å±æ§ãšè€å屿§ã¯åé€ãããå¿ èŠã«å¿ããŠããŒãã«ãè€æ°ã®ããŒãã«ã«åå²ãããŸãããã®æ®µéã§ã¯ãããŒãã«ã®åè¡ãåäžã®ãšã³ãã£ãã£ã«é¢ããåäžã®äºå®ã衚ãããšãä¿èšŒãããŸãã
2. 第 2 æ£èŠåœ¢ (2NF): 2NF ãå®çŸããã«ã¯ãããŒãã«ã 1NF ã«ããããã¹ãŠã®éããŒå±æ§ãäž»ããŒã«å®å šã«äŸåããŠããå¿ èŠããããŸããããŒä»¥å€ã®å±æ§ãäž»ããŒã®äžéšã®ã¿ã«äŸåããŠããå Žåã«çºçããéšåçãªäŸåé¢ä¿ã¯ãããŒãã«ãé©åãªããŒãæã€æ°ããããŒãã«ã«åå²ããããšã«ãã£ãŠåé€ãããŸãã
3. 第 3 æ£èŠåœ¢ (3NF): ããŒãã«ã 3NF ã§ããããã«ã¯ãããŒãã«ã¯ 2NF ã§ãããæšç§»çãªäŸåé¢ä¿ããªãå¿ èŠããããŸããããã¯ãéããŒå±æ§ãä»ã®éããŒå±æ§ã«äŸåããŠã¯ãããªãããšãæå³ããŸãã鿥çã«é¢é£ãã屿§ã«å¯ŸããŠåå¥ã®ããŒãã«ãäœæããå€éšããŒãä»ããŠãããããªã³ã¯ããããšã«ãããæšç§»çãªäŸåé¢ä¿ãæé€ãããŸãã
4. ãã€ã¹ã»ã³ããæ£èŠåœ¢ (BCNF): BCNF 㯠3NF ã®ããå³å¯ãªããŒãžã§ã³ã§ããã¹ãŠã®è¡ååŒ (å¥ã®å±æ§ã決å®ãã屿§ã®ã»ãã) ãåè£ããŒã§ããããšãä¿èšŒããããšã§ãæ®ãã®åé·æ§ããã¹ãŠæé€ããŸãã BCNF èŠä»¶ãæºããããŒãã«ã¯ 3NF ã«ããããŸããããã®éã¯å¿ ãããåœãŠã¯ãŸããŸããã
5. 第 4 æ£èŠåœ¢ (4NF): 4NF ã®ããŒãã«ã¯ BCNF å ã«ååšããè€æ°å€ã®äŸåé¢ä¿ãæããªãå¿ èŠããããŸã (è€æ°ã®ç¬ç«ãã屿§ã»ãããäž»ããŒã«äŸåããå Žå)ããã®ãããªããŒãã«ã¯ãè€æ°ã®å€ã®äŸåé¢ä¿ãæé€ããããã«ãããå°ããªããŒãã«ã«åå²ãããŸãã
6. 第 5 æ£èŠåœ¢ (5NF): 5NF ã«å°éããã«ã¯ãããŒãã«ã 4NF ã«ãããçµåäŸåé¢ä¿ããªãå¿ èŠããããŸã (ããŒãã«ãä»ã®ããŒãã«ãçµåããããšã«ãã£ãŠåæ§ç¯ã§ããå Žå)ãçµåäŸåé¢ä¿ã®ããããŒãã«ã¯ãæ å ±ã倱ãããšãªãå°ããªããŒãã«ã«åè§£ãããŸãã
ãããã¯äž»ãªæ£èŠåœ¢ã§ãããããŒã¿ããŒã¹ã®ç¹å®ã®åé¡ã«å¯ŸåŠãã第 6 æ£èŠåœ¢ (6NF) ããã¡ã€ã³ ããŒæ£èŠåœ¢ (DKNF) ãªã©ã®é«æ¬¡æ£èŠåœ¢ããããŸãããã ããã»ãšãã©ã®å®éçãªã¢ããªã±ãŒã·ã§ã³ã§ã¯ãæå€§ 3NF ãŸã㯠BCNF ãŸã§ã®æ£èŠåã®ã¿ãå¿ èŠã§ãã
AppMasterãã©ãããã©ãŒã ã®ã³ã³ããã¹ãã§æ£èŠåãé©çšããããšã¯ããã©ãããã©ãŒã å ã§äœ¿çšããããªã¬ãŒã·ã§ãã« ããŒã¿ããŒã¹ç®¡çã·ã¹ãã (RDBMS) çšã®æšæºåãããå¹ççãªãµãŒã㌠ããã¯ãšã³ããçæããããã®åºç€ãæäŸãããããéåžžã«éèŠã§ãã AppMaster Postgresql äºæããŒã¿ããŒã¹ããã©ã€ã㪠ããŒã¿ã¹ãã¢ãšããŠå©çšãããããäºææ§ãã¹ã±ãŒã©ããªãã£ãããã³é«ããã©ãŒãã³ã¹ã®ããã«æ£èŠåãããã¹ããŒããå®è£ ããå¿ èŠããããŸãã
ããšãã°ããŠãŒã¶ãŒãè€æ°ã®é¢ä¿ãæã€è€éãªããŒã¿ ã¢ãã«ãæã€ã¢ããªã±ãŒã·ã§ã³ãèšèšããå Žåã AppMasterã®æ£èŠåããã»ã¹ã¯ã¢ãã«ãæé©åããŠåé·æ§ãäžæŽåãé²ããããä¿å®ããããæ§é ãå®çŸããŸãã AppMaster ãèšè𿮵éã§æ£èŠåãæ¡çšããããšã§ãçæãããã¢ããªã±ãŒã·ã§ã³ãå ç¢ã§ã¹ã±ãŒã©ãã«ã§ä¿å®ã容æã§ããããšãä¿èšŒããããŒã¿ããŒã¹èšèšã«ãããŠæ¥çã§èªããããæ £è¡ã«æºæ ããŠããŸãã
çµè«ãšããŠãæ£èŠåã¯ãªã¬ãŒã·ã§ãã« ããŒã¿ããŒã¹ ã¹ããŒããèšèšããã¹ã±ãŒã©ããªãã£ãä¿å®æ§ãããã©ãŒãã³ã¹ã確ä¿ããäžã§éèŠãªããã»ã¹ã§ãã AppMasterno-codeãã©ãããã©ãŒã ã«ãããäžå°äŒæ¥ããå€§äŒæ¥ãŸã§ãããŸããŸãªãŠãŒã¹ã±ãŒã¹ã«å¯Ÿå¿ããã¢ããªã±ãŒã·ã§ã³éçºãå¯èœã«ãªããããæ£èŠåã¯ãæ§é çã«å¥å šã§å¹ççãªãµãŒã㌠ããã¯ãšã³ãã®çæã«ãããŠéèŠãªåœ¹å²ãæãããäœæãããã¢ããªã±ãŒã·ã§ã³ããšã³ã¿ãŒãã©ã€ãº ã¬ãã«ã®æåŸ ã«ç¢ºå®ã«å¿ããããããã«ããŸãããããŠèŠä»¶ã