データベース3パターンの詳細(データベース設計)


        

1.           
 1NF-    
         。

 2NF-    
                     。

E.g.
                                    
       +   

                        ,                +   
       ,            ,             ,       。

 3NF-    
                  。
                                  

     ,        ,   ,           。                   ,        。

2.     (2NF):         

                             (                                ),                        。
             SelectCourse(  ,   ,   ,     ,   ,   ),         (  ,     ),          :
     (  ,     ) → (  ,   ,   ,   )
                  ,          :
     (    ) → (  )
     (  ) → (  ,   )
                     。
          2NF,              :
     (1)     :
           n     ,"  "   n-1 ;        m   ,         m-1 。
     (2)     :
                ,        "  "     ,                 。
     (3)     :
                ,        。  ,     "  "   ,                。
     (4)     :
                    ,                 。  ,    ,              。   ,         。 
           SelectCourse       :
       :Student(  ,   ,   );
       :Course(    ,   );
         :SelectCourse(  ,     ,   )。
                    ,       、    、         。
       ,                  ,            。

3. 3NF-    
         ,                                     。        ,       "A → B → C"     , C       A。  ,                      :
          →      x →      y
http://www.blogjava.net/hijackwust/archive/2007/10/21/154793.html


4.     --very good!!!!!!!!
    

                 ,     :

  (1)   :   ,email,  ,  ,    

  (2)   :    ,    ,    ,    

                   :

    email                               


              ,                       ,                     。      "  ID"、"  ID"  ,      :


    email              ID             ID          


            (   ,  ID,  ID)     :

  (   ,  ID,  ID) → (email,  ,  ,    ,    ,    ,    ,    )

    ,            ,          :

  (   ) → (email,  ,  ,    )

  (  ID) → (    ,    )

  (  ID) → (    ,    )

                     ,   ,                   。

            (         ):

  (1)     :   ,email,  ,  ,    

  (2)     :  ID,  ,  

  (3)     :  ID,  ,  

  (4)   :   ,  ID

  (5)   :  ID,  ID
-----------------------------------------------------------------------------------
{fzq  :}
      ,        --  、  、  ,           ,   ?
 :               ,     
(6)     :   、  id
    ,   (4)、(5)    (6)
-----------------------------------------------------------------------------------

           1、2、3   BCNF     ,              ?

     。

      , 4 "  "  "   " "  ID"   1:N   ,       "  "    2  "    " ; 5 "  "   "  ID" "  ID"    1:N   ,       "  "    3  "    " 。              ,     :

  (1)     :   ,email,  ,  ,    

  (2)     :   ,  ID,  ,  

  (3)     :  ID,  ID,  ,  

      1           ;

      2        "  "、"  "     "  ID"       ,           ,                    ;

      3         "  "、"  "     "  ID"       ,           ,       2  ,                  。

        ,              ,  1:N  , 1      N    ,N             ,           !

    M:N   ,   M   N         ,            ,             。 
  1:1   ,        1     1       ,           ,                。

    

                    ,              。                     ,        1:1 1:N           ,                  。

             ,            。
-------------------------------------------------------------------
{fzq  :}
         ,         ,                  ,         !
-------------------------------------------------------------------

5. BCNF        
3NF    :    2NF       ,              。   
    
 BCNF    :               !   
    
    ,    BCNF   ,   3NF         。   
    
            ,      ,  4NF,5NF     ,       ,        ,    ,        。