¹ØÏµÊý¾ÝÄ£ÐÍ ¹ØÏµµÄµÈ¼Û±íʾ·¨
¸Ä±äÁдÎÐò£¬²»¸Ä±ä¹ØÏµµÄº¬Òå¡£ ¸Ä±äÐдÎÐò£¬²»¸Ä±ä¹ØÏµµÄº¬Òå¡£
´ÓE/Rͼµ½¹ØÏµÉè¼Æ ʵÌ弯µ½¹ØÏµµÄת»» E/RÁªÏµµ½¹ØÏµµÄת»» ´¦ÀíÈõʵÌ弯 º¯ÊýÒÀÀµ
º¯ÊýÒÀÀµÊÇÈçºÎ¶¨ÒåµÄ£¿
Èô¹ØÏµRµÄÈÎÒâÁ½¸öÔª×éÔÚÊôÐÔA1¡¢A2¡¢¡¡¢AnÉÏÒ»ÖÂ(¼´ÓÐÏàͬ·ÖÁ¿Öµ)£¬ÔòÕâÁ½¸öÔª×éÔÚÊôÐÔBÉÏÒ²Ò»Ö£¬Ôò³ÆÊôÐÔA1A2¡Anº¯Êý¾ö¶¨B£¬»ò³ÆBº¯ÊýÒÀÀµÓÚA1A2¡An¡£ ÅжϺ¯ÊýÒÀÀµµÄÈýÖÖÇéÐÎ
Èç¹ûÈÎÒâÁ½Ôª×éÔÚÊôÐÔAÉÏÒ»Ö£¬ÔÚBÉÏÒ²Ò»Ö£¬ÔòÓÐA ¡ú B³ÉÁ¢¡£ Èç¹ûÈÎÒâÁ½Ôª×éÔÚÊôÐÔAÉÏÒ»Ö£¬ÔÚBÉϲ»Ò»Ö£¬ÔòA ¡ú B²»³ÉÁ¢¡£
Èç¹ûÈÎÒâÁ½Ôª×éÔÚÊôÐÔAÉϲ»¿ÉÄÜÒ»Ö£¬Ôò²»¹ÜÔÚBÉÏÊÇ·ñÒ»Ö£¬ÓÐA ¡ú B³ÉÁ¢¡£ ¹ØÏµµÄ¼ü
ÈçºÎÓú¯ÊýÒÀÀµ¶¨Òå¼ükey£¿
¶¨Ò壺¶ÔÓÚ¹ØÏµR£¬ÈôÊôÐÔ¼¯ºÏ{A1,A2,¡,An}Âú×ãÏÂÁÐÌõ¼þ£¬Ôò¸ÃÊôÐÔ¼¯ºÏÊÇRµÄÒ»¸ö¼ükey: 1£®A1,A2,¡,Anº¯Êý¾ö¶¨RÖÐËùÓÐÆäËûÊôÐÔ¡£(³¬¼ü)
2£®{A1,A2,¡,An}µÄÈκÎÕæ×Ó¼¯¶¼²»Äܺ¯Êý¾ö¶¨RÖÐËùÓÐÆäËûÊôÐÔ¡£(×îС»¯) ³¬¼ü
ʲôÊdz¬¼üsuper key?
¼üµÄ³¬¼¯superset of key¡£¼´°üº¬¼üµÄÊôÐÔ¼¯ºÏ¡£ ¿Éº¯Êý¾ö¶¨¹ØÏµÖÐËùÓÐÊôÐÔµÄÊôÐÔ¼¯ºÏ¡£
ÿ¸ö¼ü¶¼Êdz¬¼ü¡£
13
Ò»¸ö¹ØÏµµÄÊôÐÔÈ«¼¯³¬¼ü¡£ ÿ¸ö³¬¼ü¶¼ÊǼüÂ𣿲»ÊÇ¡£ º¯ÊýÒÀÀµ¹æÔò
ÓÐÄÄÐ©ÖØÒªµÄº¯ÊýÒÀÀµ¹æÔò£¿ ·Ö½â£¯ºÏ²¢(Splitting/combining)¹æÔò ƽ·²ÒÀÀµ(Trivial Dependance)¹æÔò ´«µÝ(Transitivy)¹æÔò ¼ÆËãÊôÐԵıհü ÈçºÎ¼ÆËãÊôÐԵıհü£¿
¸ø¶¨º¯ÊýÒÀÀµ¼¯SºÍÊôÐÔ¼¯A={A1,A2,¡An}£¬ÈçºÎ¼ÆËãA+£¿ 1 ½«X³õʼ»¯Îª{A1,A2,¡,An}£¬±Õ°ü×îС¼¯ºÏ¡£
2 ±éÀúSÖеÄÿ¸öº¯ÊýÒÀÀµ£¬¶ÔÓÚÿ¸öÒÀÀµÊ½£ºB1B2¡Bm ¡ú C
Èç¹ûB1¡¢B2¡¢¡¡¢Bm¶¼ÔÚXÖУ¬¶øC²»ÔÚXÖУ¬Ôò°ÑC¼ÓÈëXÖС£
3 ÖØ¸´µÚ2²½£¬Ö±µ½±éÀúÍêSÖÐËùÓк¯ÊýÒÀÀµ£¬¶øÃ»ÓÐÐÂÊôÐÔÄܼÓÈëµ½XÖС£ 4 ×îÖÕÊôÐÔ¼¯X¼´ÎªÊôÐÔ¼¯AÔÚº¯ÊýÒÀÀµ¼¯SϵıհüA+¡£
Àý3.28£ºP90 ÉèÓйØÏµR(A, B, C, D, E, F)Ó뺯ÊýÒÀÀµ¼¯
S£º{AB ¡ú C£¬BC ¡ú AD£¬D ¡ú E£¬CF ¡ú B}
Çó£º{A£¬B}+
½â£ºX(1)={A,B}, ÓÉAB ¡ú C£¬µÃ£º
X(2)={A,B,C}, ÓÉBC ¡ú AD£¬µÃ£º
X(3)={A,B,C,D}, ÓÉD ¡ú E£¬µÃ£º X(4)={A,B,C,D,E}={A£¬B}+ ÊôÐÔ±Õ°ü¼ÆËãÓкÎÓÃ;£¿
¼ÙÉè¹ØÏµRÉÏÒÑÓÐÒ»¸öÒÀÀµ¼¯S£¬ÁíÓÐÒ»¸öº¯ÊýÒÀÀµA1A2¡An ¡ú B£¬¸ÃÒÀÀµÊÇ·ñÔ̺¬ÓÚS£¿ÅжϷ½·¨£º
¼ÆËã{A1,A2,¡,An}+¡£
14
ÈôBÔÚ{A1,A2,¡An}+ÖУ¬Ôòº¯ÊýÒÀÀµA1A2¡An ¡ú BÔ̺¬ÓÚSÖС£ ÈôB²»ÔÚ{A1,A2,¡An}+ÖУ¬Ôòº¯ÊýÒÀÀµA1A2¡An ¡ú B²»Ô̺¬ÓÚSÖС£ ÊôÐԵıհüºÍ¼üÖ®¼äÓкιØÏµ£¿
¶ÔÓÚÒ»¸ö¹ØÏµR£¬µ±ÇÒ½öµ±A1,A2,¡,AnÊÇRµÄ³¬¼üʱ£¬{A1,A2,¡,An}+ÊÇRµÄËùÓÐÊôÐԵļ¯ºÏ¡£ 3.6.1 ÒÑÖª¹ØÏµÄ£Ê½R(A, B, C, D)Óк¯ÊýÒÀÀµAB ¡ú C, C ¡ú D, D ¡ú A (a)ÇóÔ̺¬ÓÚ¸ø¶¨º¯ÊýÒÀÀµµÄËùÓÐÍêÈ«·Çƽ·²º¯ÊýÒÀÀµ¡£ (b)ÇóRµÄËùÓмü¡£
(c)ÇóRµÄËùÓг¬¼ü(²»°üÀ¨¼ü)¡£ ½â£º
(a)¸ù¾ÝËùÓÐÊôÐÔ¼¯ºÏµÄ±Õ°ü£¬¼ÆËãËùÓпÉÄܵĺ¯ÊýÒÀÀµ¡£ {A}+={A} {B}+={B} {C}+={C, D, A}
C ¡ú AD
{D}+={D, A}
{A, B}+={A, B, C, D} AB ¡ú CD {A, C}+={A, C, D} AC ¡ú D
{A, D}+={A, D} {B, C}+={B, C, D, A} BC ¡ú AD {B, D}+={B, D, A, C} BD ¡ú AC {C, D}+={C, D, A}
CD ¡ú A {A, B, C}+={A, B, C, D} ABC ¡ú D {A, B, D}+={A, B, D, C}
ABD ¡ú C {A, C, D}+={A, C, D} {B, C, D}+={B, C, D, A}
BCD ¡ú A
(b)ËùÓеļü£º{A, B}, {B, C}, {B, D}
(c)ËùÓеij¬¼ü(²»°üÀ¨¼ü)£º{A,B,C}, {A,B,D}, {B,C,D}, {A,B,C,D}
15
¹ØÏµÊý¾Ý¿âģʽÉè¼Æ BC·¶Ê½
Èô¹ØÏµÄ£Ê½RµÄÿ¸ö·ÖÁ¿¾ùÊDz»¿ÉÔÙ·ÖµÄÊý¾ÝÏÔòRÂú×ãµÚÒ»·¶Ê½£¬ÓÖ¼Ç×÷£ºR ¡Ê 1NF¡£ BC·¶Ê½ÈçºÎ¶¨Ò壿
¹ØÏµÄ£Ê½RÂú×ãBC·¶Ê½£¬µ±ÇÒ½öµ±Èô·Çƽ·²º¯ÊýÒÀÀµA1A2¡An ¡ú B1B2¡BmÔÚ¹ØÏµRÖгÉÁ¢£¬Ôò{A1,A2,¡,An}ÊÇRµÄ³¬¼ü¡£ ¹ØÏµRÂú×ãBC·¶Ê½µÄÁ½ÖÖÇéÐÎ
¹ØÏµRÖв»´æÔÚ·ÇÆ½·²º¯ÊýÒÀÀµ¡£(Ö»ÓÐÆ½·²º¯ÊýÒÀÀµ) ÿ¸ö·Çƽ·²º¯ÊýÒÀÀµµÄ×óÃæ°üº¬Ä³¸ö¼ü(¼´×óÃæÊdz¬¼ü)¡£ ¹ØÏµRÎ¥±³BC·¶Ê½µÄΨһÇéÐÎ
¹ØÏµRÖÐÖÁÉÙ´æÔÚÒ»¸ö·Çƽ·²º¯ÊýÒÀÀµ£¬Æä×óÃæ²»Êdz¬¼ü¡£ ·Ö½âΪBC·¶Ê½
·Ö½â²ßÂÔ£ºÏû³ýÎ¥±³BCNFµÄº¯ÊýÒÀÀµ
1 ÕÒÒ»¸öÎ¥±³BCNFµÄ·Çƽ·²º¯ÊýÒÀÀµA1A2¡An ¡ú B1B2¡Bm¡£ 2 °Ñ¹ØÏµR·Ö½â³ÉÁ½¸ö¹ØÏµ£º
R1(A1,A2,¡,An, B1,B2,¡,Bm)¡£
R2(A1,A2,¡,An, ËùÓÐÆäËüÊôÐÔ)£¬Èô²»Âú×ãBC·¶Ê½£¬ÔòÔٷֽ⡣
ÀýÈ磺R(ѧºÅ, ¿ÎºÅ, ³É¼¨, ϵºÅ, ϵÖ÷ÈÎ) ²»Âú×ãBCNF¡£ 1 ·Çƽ·²º¯ÊýÒÀÀµ£ºÑ§ºÅ ¡ú ϵºÅ,ϵÖ÷ÈÎ ³ÉÁ¢ 2 R·Ö½âΪ£ºR1(ѧºÅ, ϵºÅ, ϵÖ÷ÈÎ)
R2(ѧºÅ, ¿ÎºÅ, ³É¼¨)
3 ·Çƽ·²º¯ÊýÒÀÀµ£ºÏµºÅ ¡ú ϵÖ÷ÈÎ ³ÉÁ¢ 4 R1¼ÌÐø·Ö½âΪ£ºR11(ϵºÅ, ϵÖ÷ÈÎ)
R12(ѧºÅ, ϵºÅ)
µÚÈý·¶Ê½
¹ØÏµÄ£Ê½RÂú×ã3NF£¬µ±ÇÒ½öµ±Èô·Çƽ·²º¯ÊýÒÀÀµA1A2¡An ¡ú BÔÚ¹ØÏµRÖгÉÁ¢£¬Ôò
16