{"id":591,"date":"2010-08-24T13:44:00","date_gmt":"2010-08-24T05:44:00","guid":{"rendered":"http:\/\/note.systw.net\/note\/?p=591"},"modified":"2023-11-04T13:47:04","modified_gmt":"2023-11-04T05:47:04","slug":"%e6%ad%a3%e8%a6%8f%e5%8c%96","status":"publish","type":"post","link":"https:\/\/systw.net\/note\/archives\/591","title":{"rendered":"\u6b63\u898f\u5316"},"content":{"rendered":"\n<p><strong>\u6b63\u898f\u5316<\/strong><br>\u76ee\u7684:\u53bb\u9664\u95dc\u806f\u7570\u52d5\u7684\u7570\u5e38\u73fe\u8c61<\/p>\n\n\n\n<p><strong>\u6b63\u898f\u5316\u904e\u7a0b<\/strong><br>1NF &gt; 2NF &gt; 3NF &gt; BCNF &gt; 4NF &gt; 5NF<br>1-3NF\u70ba\u4e09\u6b63\u898f\u5316,\u7531codd\u65bc1977\u5e74\u63d0\u51fa,\u4e5f\u662f\u6700\u5e38\u7528\u7684<br>ps:<br>BCNF\u70ba\u4e09\u6b63\u898f\u5316\u52a0\u5f37\u578b,\u7531boyce,codd\u63d0\u51fa<br>4NF,\u4f9d\u64daMulti-Valued Dependency(\u591a\u91cd\u503c\u76f8\u4f9d\u6027\u7406\u8ad6)\u6240\u63d0\u51fa<br>5NF,\u4f9d\u64daJoin Dependency(\u5408\u4f75\u76f8\u4f9d\u6027\u7406\u8ad6)\u6240\u63d0\u51fa<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..<\/p>\n\n\n\n<p><strong>\u6b63\u898f\u5316\u6703\u4f7f\u7528\u7684\u7279\u6027<\/strong><br>F.D(full functional dependency,\u5b8c\u5168\u529f\u80fd\u76f8\u4f9d)<br>P.D(partial functional dependency,\u90e8\u4efd\u529f\u80fd\u76f8\u4f9d)<br>T.D(Transitive Functional Dependency,\u905e\u79fb\u76f8\u4f9d\u6027)<\/p>\n\n\n\n<p><strong>Functional Dependence(\u529f\u80fd\u76f8\u4f9d\u6027)<\/strong><br>\u82e5\u6b04\u4f4da\u53ef\u4ee5\u6c7a\u5b9a\u6b04\u4f4db,\u4e5f\u5c31\u662f\u6b04\u4f4db\u76f8\u4f9d\u65bc\u6b04\u4f4da<br>\u8868\u793a\u6cd5\u70baa-&gt;b<br>ex<br><strong>\u5b78\u751f(<u>\u5b78\u865f<\/u>,\u59d3\u540d,\u8840\u578b)<\/strong><br>\u5b78\u865f\u53ef\u6c7a\u5b9a\u59d3\u540d,\u8868\u793a\u6cd5\u70ba \u5b78\u865f&gt;\u59d3\u540d<br>\u5b78\u865f\u53ef\u6c7a\u5b9a\u8840\u578b,\u8868\u793a\u6cd5\u70ba \u5b78\u865f&gt;\u8840\u578b<br>ex:<br><strong>\u5546\u54c1(<u>\u8a02\u55ae\u7de8\u865f<\/u>,\u8a02\u8ca8\u65e5\u671f,\u5ba2\u6236,<u>\u7522\u54c1\u4ee3\u865f<\/u>,\u7522\u54c1\u540d\u7a31,\u55ae\u50f9,\u6578\u91cf)<\/strong><br>\u8a02\u55ae\u7de8\u865f\u53ef\u4ee5\u6c7a\u5b9a\u8a02\u8ca8\u65e5\u671f,\u5ba2\u6236,\u7522\u54c1\u4ee3\u865f,\u7522\u54c1\u540d\u7a31,\u55ae\u50f9<br>\u3000\u8868\u793a\u6cd5\u70ba \u8a02\u55ae\u7de8\u865f&gt;\u8a02\u55ae\u65e5\u671f.\u5ba2\u6236.\u7522\u54c1\u4ee3\u865f.\u7522\u54c1\u540d\u7a31.\u55ae\u50f9<br>\u7522\u54c1\u4ee3\u865f\u53ef\u4ee5\u6c7a\u5b9a\u7522\u54c1\u540d\u7a31,\u55ae\u50f9<br>\u3000\u8868\u793a\u6cd5\u70ba \u7522\u54c1\u4ee3\u865f&gt;\u7522\u54c1\u540d\u7a31,\u55ae\u50f9<br>\u8a02\u55ae\u7de8\u865f,\u7522\u54c1\u4ee3\u865f\u53ef\u4ee5\u6c7a\u5b9a\u6578\u91cf<br>\u3000\u8868\u793a\u6cd5\u70ba \u8a02\u55ae\u7de8\u865f,\u7522\u54c1\u4ee3\u865f&gt;\u6578\u91cf<\/p>\n\n\n\n<p><strong>\u529f\u80fd\u76f8\u4f9d\u5206\u70ba<\/strong><br>\u5b8c\u5168\u529f\u80fd\u76f8\u4f9d<br>\u90e8\u4efd\u529f\u80fd\u76f8\u4f9d<\/p>\n\n\n\n<p><strong>F.D(full functional dependency,\u5b8c\u5168\u529f\u80fd\u76f8\u4f9d)<\/strong><br>\u82e5x&gt;y , \u5247x\u6703\u7528\u5230\u6240\u6709KEY<br>ex<br>(a,b,c)\u3000a-&gt;b,c \u5c6c\u65bcF.D<br>(a,b,c)\u3000a,b-&gt;c \u5c6c\u65bcF.D<br>(a,b,c)\u3000a-&gt;b\u5c6c\u65bcF.D<\/p>\n\n\n\n<p><strong>P.D(partial functional dependency,\u90e8\u4efd\u529f\u80fd\u76f8\u4f9d)<\/strong><br>\u82e5 x&gt;y ,\u5247x\u53ea\u7528\u90e8\u4efdKEY<br>ex:<br>(a,b,c)\u3000a-&gt;c \u5c6c\u65bcP.D<br>(a,b,c,d)\u3000a-&gt;b,d \u5c6c\u65bcP.D<\/p>\n\n\n\n<p><strong>T.D(Transitive Functional Dependency,\u905e\u79fb\u76f8\u4f9d\u6027)<\/strong><br>\u7528\u7684\u4e0d\u662fKEY<br>ex:<br>(a,b,c)\u3000b-&gt;c\u5c6c\u65bcT.D<\/p>\n\n\n\n<p><br>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..<\/p>\n\n\n\n<p><br><strong>1NF(first normal form,\u7b2c\u4e00\u6b63\u898f\u5316)<\/strong><br>\u53bb\u9664\u91cd\u8907\u7fa4\u7d44<br>ps:\u91cd\u8907\u7fa4\u7d44\u8207multi attribute(\u591a\u91cd\u503c\u5c6c\u6027)\u53cacomposite attribute(\u8907\u5408\u578b\u5c6c\u6027)\u662f\u4e0d\u540c\u7684<br>ps:\u6b64\u968e\u6bb5\u50c5\u50c5\u628a\u8cc7\u6599\u586b\u6eff,\u9084\u672a\u6298\u8868\u683c<br>ex:<br>\u5c07\u5177\u6709a,b,c,d,e\u5c6c\u6027\u7684\u8cc7\u6599\u8f49\u63db\u6210\u4ee5\u4e0b\u683c\u5f0f<br><strong>(<u>a<\/u>,b,<u>c<\/u>,d,e)<\/strong><br>a,c-&gt;b,d,e F.D<br>a-&gt;b P.D<br>c-&gt;d P.D<\/p>\n\n\n\n<p><strong>2NF(second normal form,\u7b2c\u4e8c\u6b63\u898f\u5316)<\/strong><br>\u5206\u96e2\u90e8\u4efd\u76f8\u4f9d\u6027<br>\u6240\u6709\u7684\u5c6c\u6027,\u5b8c\u5168\u529f\u80fd\u76f8\u4f9d\u65bcprimary key<br>ps:\u4e5f\u5c31\u662f\u53ea\u53ef\u4ee5\u6709\u5b8c\u5168\u76f8\u4f9d\u6027<br>ex:<br>\u4ee51NF\u7684(a,b,c,d,e)\u70baexample,2NF\u5982\u4e0b<br><strong>(a,<u>c<\/u>,e)<\/strong>&nbsp;a,c-&gt;e F.D<br><strong>(<u>a<\/u>,b)<\/strong>&nbsp;a-&gt;b F.D<br><strong>(<u>c<\/u>,d)<\/strong>&nbsp;c-&gt;d F.D<\/p>\n\n\n\n<p><strong>3NF(third normal form,\u7b2c\u4e09\u6b63\u898f\u5316)<\/strong><br>\u5206\u96e2\u905e\u79fb\u76f8\u4f9d\u6027<br>ex:<br>\u5047\u59821NF\u5982\u4e0b<br><strong>(<u>a<\/u>,b,c,d)<\/strong><br>a-&gt;b,c,d F.D<br>b-&gt;c,d T.D<br>\u52473NF\u5982\u4e0b<br><strong>(<u>b<\/u>,c,d)<\/strong>&nbsp;b-&gt;c,d F.D<br><strong>(<u>a<\/u>,b)<\/strong>&nbsp;a-&gt;b F.D<\/p>\n\n\n\n<p><strong>BCNF<\/strong><br>\u539f\u672c(a,b,c,d) \u76f8\u4f9d\u95dc\u4fc2\u70ba a,b-&gt;c,d FD \u548c c-&gt;b PD(\u7279\u6b8aTD)<br>\u63a8\u5c0e\u5982\u4e0b<br>\u3000step1, a,b-&gt;c,d = a,b-&gt;b,c,d<br>\u3000step2, \u56e0c-&gt;b ,\u6240\u4ee5\u53ef\u4ee5\u6539\u6210 a,c -&gt; b,c,d<br>\u3000step3, a,c -&gt; b,c,d = a,c -&gt; b,d<br>\u56e0\u6b64\u7d50\u8ad6\u70baa,b-&gt;c,d \u548c c-&gt;b = a,c-&gt;b,d \u548c c-&gt;b<br>ex:<br><strong><u>(stu_id<\/u>,<u>staff_id<\/u>,class_code,grade)<\/strong><br>stu_id,staff_id-&gt;class_code,grade FD<br>class_code-&gt;staff_id PD(\u7279\u6b8aTD)<br>\u8f49\u63dbBCNF\u5982\u4e0b<br><strong>(<u>stu_id<\/u>,class_code,grade)<\/strong>&nbsp;stu_id,class_code-&gt;,grade<br><strong>(<u>class_code<\/u>,staff_id)<\/strong>&nbsp;class_code-&gt;staff_id<\/p>\n\n\n\n<p><strong>4NF<\/strong><br>\u53bb\u9664\u591a\u503c\u5c6c\u6027<br>ps:\u5e38\u898b\u7684\u591a\u503c\u5c6c\u6027\u6709\u5b78\u6b77,\u7d93\u6b77,\u96fb\u8a71,&#8230;\u7b49<br>ex<br>\u4ee5\u4e0b\u8cc7\u6599\u8868\u7684\u5b78\u6b77\u548c\u7d93\u6b77\u70ba\u591a\u503c\u5c6c\u6027<br><strong>(<u>\u5b78\u865f<\/u>,\u5b78\u6b77,\u7d93\u6b77)<\/strong>&nbsp;\u5b78\u865f-&gt;&gt;\u5b78\u6b77,&gt;\u7d93\u6b77<br>99001 \u548c\u5e73\u570b\u5c0f,\u548c\u5e73\u570b\u4e2d,\u548c\u5e73\u9ad8\u4e2d \u548c\u5e73\u516c\u53f8,\u548c\u5e73\u5de5\u5ee0<br>99002 \u5e0c\u671b\u570b\u5c0f,\u5e0c\u671b\u570b\u4e2d \u5e0c\u671b\u4f01\u696d<br>\u8f49\u63db4NF\u5982\u4e0b,\u53bb\u9664\u591a\u503c\u5c6c\u6027<br><strong>(<u>\u5b78\u865f<\/u>,\u5b78\u6b77)<\/strong>&nbsp;\u5b78\u865f-&gt;\u5b78\u6b77<br>99001 \u548c\u5e73\u570b\u5c0f<br>99001 \u548c\u5e73\u570b\u4e2d<br>99001 \u548c\u5e73\u9ad8\u4e2d<br>99002 \u5e0c\u671b\u570b\u5c0f<br>99002 \u5e0c\u671b\u570b\u4e2d<br><strong>(<u>\u5b78\u865f<\/u>,\u7d93\u6b77)<\/strong>&nbsp;\u5b78\u865f-&gt;\u7d93\u6b77<br>99001 \u548c\u5e73\u516c\u53f8<br>99001 \u548c\u5e73\u5de5\u5ee0<br>99002 \u5e0c\u671b\u4f01\u696d<br>ex:<br>1NF,2NF,3NF,BCNF<br>(a,b,c,d) a-&gt;&gt;b,&gt;c,&gt;d FD<br>\u8f49\u63db4NF\u5982\u4e0b<br><strong>(<u>a<\/u>,b)<\/strong>&nbsp;a-&gt;b<br><strong>(<u>a<\/u>,c)<\/strong>&nbsp;a-&gt;c<br><strong>(<u>a<\/u>,d)<\/strong>&nbsp;a-&gt;d<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;.<\/p>\n\n\n\n<p>1-3NF\u7bc4\u4f8b<\/p>\n\n\n\n<p><strong>1NF<\/strong><br><strong>(<u>proj-num<\/u>,proj-name,<u>emp_num<\/u>,emp_name,job_class,chg_hour,hours)<\/strong><br>proj_num,emp_num-&gt;proj_name,emp_name,job_class,chg_hour,hours FD<br>proj_num-&gt;proj-name PD<br>emp_num -&gt; emp_name,job_class,chg_hour PD<br>job_class -&gt; chg_hour TD<\/p>\n\n\n\n<p><strong>2NF<\/strong><br><strong>(<u>proj_num<\/u>,<u>emp_num<\/u>,hours)<\/strong><br>proj_num,emp_num-&gt;hours FD<br><strong>(<u>proj_num<\/u>,proj-name)<\/strong><br>proj_num-&gt;proj-name FD<br><strong>(<u>emp_num<\/u>,emp_name,job_class,chg_hour )<\/strong><br>emp_num -&gt; emp_name,,job_class,chg_hour FD<br>job_class -&gt; chg_hour TD<\/p>\n\n\n\n<p><strong>3NF<\/strong><br><strong>(<u>proj_num<\/u>,<u>emp_num<\/u>,hours)<\/strong><br>proj_num,emp_num-&gt;hours FD<br><strong>(<u>proj_num<\/u>,proj-name)<\/strong><br>proj_num-&gt;proj-name FD<br><strong>(<u>emp_num<\/u>,emp_name,job_class)<\/strong><br>emp_num -&gt; emp_name,,job_class FD<br><strong>(<u>job_class<\/u>,chg_hour)<\/strong><br>job_class -&gt; chg_hour FD<\/p>\n\n\n\n<p><strong>\u5be6\u505a<\/strong><br>assign(proj_num.fk,emp_num.fk,hours)<br>project(proj_num,proj-name)<br>employee(emp_num,emp_name,job_class.fk)<br>salary(job_class,chg_hour)<br><strong>\u722a\u5716\u8868\u793a\u6cd5<\/strong><br>project(proj_num,proj-name)1&#8212;&#8212;&lt; assign(proj_num.fk,emp_num.fk,hours)<br>assign(proj_num.fk,emp_num.fk,hours) &gt;&#8212;&#8212; 1employee(emp_num,emp_name,job_class.fk)<br>employee(emp_num,emp_name,job_class.fk)&gt;&#8212;&#8212;-1salary(job_class,chg_hour)<\/p>\n\n\n\n<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..<\/p>\n\n\n\n<p>1-4NF\u7bc4\u4f8b<\/p>\n\n\n\n<p><strong>1NF<\/strong><br><strong>(<u>a<\/u>,b,<u>c<\/u>,d,<u>e<\/u>,f,g,h,i, j)<\/strong><br>a,c,e-&gt;b,d,f,g,h,&gt;i,&gt;j FD<br>a,c-&gt;b PD<br>c,e-&gt;f,g PD<br>f-&gt;e PD(\u7279\u6b8aTD)<br>c-&gt;d PD<br>g-&gt;h TD<\/p>\n\n\n\n<p><strong>2NF<\/strong><br><strong>(<u>a<\/u>,b,<u>c<\/u>)<\/strong>&nbsp;a,c-&gt;b FD<br><strong>(<u>c<\/u>,d)<\/strong>&nbsp;c-&gt;d<br><strong>(<u>c<\/u>,<u>e<\/u>,f,g,h)<\/strong><br>c,e-&gt;f,g FD<br>f-&gt;e PD(\u7279\u6b8aTD)<br>g-&gt;h TD<br><strong>(<u>a<\/u>,<u>c<\/u>,<u>e<\/u>,i,j)<\/strong>&nbsp;a,c,f-&gt;&gt;i,&gt;j<\/p>\n\n\n\n<p><strong>3NF<\/strong><br><strong>(<u>a<\/u>,b,<u>c<\/u>)<\/strong>&nbsp;a,c-&gt;b FD<br><strong>(<u>c<\/u>,d)<\/strong>&nbsp;c-&gt;d<br><strong>(<u>g<\/u>,h)<\/strong>&nbsp;g-&gt;h FD<br><strong>(<u>c<\/u>,<u>e<\/u>,f,g)<\/strong><br>c,e-&gt;f,g FD<br>f-&gt;e PD(\u7279\u6b8aTD)<br><strong>(<u>a<\/u>,<u>c<\/u>,<u>e<\/u>,i,j)<\/strong>&nbsp;a,c,f-&gt;&gt;i,&gt;j<\/p>\n\n\n\n<p><strong>BCNF<\/strong><br><strong>(<u>a<\/u>,b,<u>c<\/u>)<\/strong>&nbsp;a,c-&gt;b FD<br><strong>(<u>c<\/u>,d)<\/strong>&nbsp;c-&gt;d<br><strong>(<u>g<\/u>,h)<\/strong>&nbsp;g-&gt;h<br><strong>(<u>c<\/u>,<u>f<\/u>,g)<\/strong>&nbsp;c,f-&gt;g<br><strong>(<u>f<\/u>,e)<\/strong>&nbsp;f-&gt;e<br><strong>(<u>a<\/u>,<u>c<\/u>,<u>e<\/u>,i,j)<\/strong>&nbsp;a,c,f-&gt;&gt;i,&gt;j<\/p>\n\n\n\n<p><strong>4NF<\/strong><br><strong>(<u>a<\/u>,b,<u>c<\/u>)<\/strong>&nbsp;a,c-&gt;b<br><strong>(<u>c<\/u>,d)<\/strong>&nbsp;c-&gt;d<br><strong>(<u>g<\/u>,h)<\/strong>&nbsp;g-&gt;h<br><strong>(<u>c<\/u>,<u>f<\/u>,g)<\/strong>&nbsp;c,f-&gt;g<br><strong>(<u>f<\/u>,e)<\/strong>&nbsp;f-&gt;e<br><strong>(<u>a<\/u>,<u>c<\/u>,<u>f<\/u>,i)<\/strong>&nbsp;a,c,f-&gt;i<br><strong>(<u>a<\/u>,<u>c<\/u>,<u>f<\/u>,j)<\/strong>&nbsp;a,c,f-&gt;j<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6b63\u898f\u5316\u76ee\u7684:\u53bb\u9664\u95dc\u806f\u7570\u52d5\u7684\u7570\u5e38\u73fe\u8c61 \u6b63\u898f\u5316\u904e\u7a0b1NF &#038;gt &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[16],"tags":[],"class_list":["post-591","post","type-post","status-publish","format-standard","hentry","category-database"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts\/591","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/comments?post=591"}],"version-history":[{"count":0,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts\/591\/revisions"}],"wp:attachment":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/media?parent=591"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/categories?post=591"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/tags?post=591"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}