16
SQL Server
6
6.1
6.2
6.3
6.4
6.5
6.6
6.7
SQL Server
SQL Server
S(snosnamesagessexsdeptmnamecnamescore)
1
2
3
4
5
6
7
SQL Server
SQL Server
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
1
2
3
4
5
6
7
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
1
2
3
4
5
6
7
SQL Server
SC(snocnnamescore)
1
2
3
4
5
6
7
SQL Server
SQL Server
SQL Server
Ssnosname
1
2
BCNF
3
4
5
6
7
Ssdeptsno(2006010120060102)(20060101)mnamesnosnoscore
SQL Server
ScnamescoreSnocnamesnoscore
1
2
BCNF
3
4
5
6
7
SQL Server
SQL Server
1
2
BCNF
3
4
5
6
7
R(U)XYU={A1A2…An}rRrXY(rtst[X]=s[X]t[Y]=s[Y])XYYXX→YX(Determinant)Y(Dependent)
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
(1) X→YY XX→Y
(2) X→YY XX→Y
(3) X→YY→XX Y
(4) YXX Y
SQL Server
X→YXX(X X)X→YYXX Y
1
2
BCNF
3
4
5
6
7
R(U)XYZR3X→Y (Y XYX)Y XY→ZZXX Y
Y XY→XX YX→Z
SQL Server
6-1 S(snosnamesagessexsdeptmnamecnamescore)
(1) sno→snamesno→ssex(snocname)→score
(2) cname→snosdept→cnamesno→cname
1
2
BCNF
3
4
5
6
7
(2)snocnamesdeptcname
SQL Server
6
2.
6-2 ()
1
2
BCNF
3
4
5
6
7
SQL Server
SQL Server
6
4.
KR(UF)KKK→UK→U(K U)KR(Candidate Key)
1
2
BCNF
3
4
5
6
7
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
“()”()
1
2
BCNF
3
4
5
6
7
SQL Server
1
2
BCNF
3
4
5
6
7
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
1
2
BCNF
3
4
5
6
7
SQL Server
1
2
BCNF
3
4
5
6
7
SQL Server
1
2
BCNF
3
4
5
6
7
SQL Server
1
2
BCNF
3
4
5
6
7
6-3 S-L-C(UF)
U={SNOSDEPTSLOCCNOSCORE}SNOSDEPTSLOC()CNOSCORE
=(SNOCNO)
F={(SNOCNO)→SCORESNO→SDEPTSNO→SLOCSDEPT→SLOC}
={SDEPTSLOCSCORE}
2NF
SQL Server
(2)
(3) K2K()
SDEPTSLOC
SQL Server
S-L(SNOSDEPTSLOC)
1
2
BCNF
3
4
5
6
7
6-3
SQL Server
1
2
BCNF
3
4
5
6
7
6-3S-L(SNOSDEPTSLOC)SNO→SDEPTSDEPT→SLOCSLOCSNOS-L3NF
S-L
D-L(SDEPTSLOC)={SDEPT} F={SDEPT→SLOC}
S-DD-L3NF
SQL Server
SQL Server
R(UF) 1NFX→YY XXR(UF)∈BCNF
R(UF)R(UF)∈BCNF
1
2
BCNF
3
4
5
6
7
SQL Server
F={(SNOCNO)→SCORE(CNOSCORE)→SNO}
SC(SNOCNO)(CNOSCORE)SC∈BCNF
1
2
BCNF
3
4
5
6
7
6-5 STJ(STJ)STJ
(SJ)(ST)
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
BCNF
(2) 3NF
SQL Server
SQL Server
SQL Server
(1)
(2) “”“”33(0601)(0602)(0603)
(3)
SQL Server
(2)
CTCCourseTeacherClass“”“”“0601”“”“0602”“”“0603”CTC“”TeacherClass
1
2
3
4
5
6
7
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
6
1.
R(U)UXYZUZ=U-X-YR(U)r(XZ)YYXZYXXYX→→Y
R(ABCD)F={A→BC→D}ρ={R1(AB)R2(CD)}R1R2
F1=∏R1(F)={A→B}
F2=∏R2(F)={C→D}
R1=(AB{A→B})
R2=(CD{C→D})
U1-U2=AB
U2-U1=CD
ρ
SQL Server
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
SQL Server
(1)
(2)
(3)
SQL Server
A—B—C—D—E—
R(UF)U={ABCDE}
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
(1) ————AB→C
(2) ————AC→E
(3) ————10AB→D
R(UF)F={AB→CAC→EAB→D}
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
(2)
AB→C
A→CF={AB→CAC→EAB→D}AA+
A+=AF={AB→CAC→EAB→D}A“”AA+AA+=AAB→CB
B→CF={AB→CAC→EAB→D}BB+
B+=BF={AB→CAC→EAB→D}B“”BB+BB+=BAB→CA
AC→EAB→D
F
SQL Server
AB→CF={AC→EAB→D}
{AB}+=ABF={AC→EAB→D}AB→DAB“”D(AB)+=ABD“”(AB)+=ABD
ABDCAB→C
F
SQL Server
LAB
RED
LRR{ABCDE}
F
SQL Server
R
R(ABCDE)R(ABCDE)2NF
R(UF)R(ABCDE)ABCDEF={AB→CAC→EAB→D}R(ABCDE)2NF
CDER(ABCDE)R(ABCDE)3NF
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
R3NFBCNFBCNFBCNF
BCNF()RBCNFF={AB→CAC→EAB→D}AC→EAC ABAC→EBCNFR(ABCDE) BCNF
BCNFAC→ER1(ACE)R2(ACBD)
R1R2RR1()“”R2()“”“”
R(ABCDE)3NF
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
1) R1(ACE)
R1{A}{C}{E}{AC}{AE}{CE}
F={AB→CAC→EAB→D}
{A}A+=A{A}“”
{C}C+=C{C}“”
{E}E+=E{E}“”
{AC}(AC)+=ACE{AC}“”EER1{AC}AC→E
{AE}(AE)+=AE{AE}“”
{CE}(CE)+=CE{CE}“”
R1(ACE)F={AC→E}
R1(ACE)BCNF
SQL Server
2) R2(ABCD)
R2{A}{B}{C}{D}{AB}{AC}{AD}{BC}{BD}{CD}
F={AB→CAC→EAB→D}
{A}A+=A{A}“”
{B}{C}{D}“”
{AB}(AB)+=ABCDE“”CDCDR2{AB}AB→CAB→D
{AC}(AC)+=ACE
{AD}(AD)+=AD
{BC}(BC)+=BC
{BD}(BD)+=BD
{CD}(CD)+=CD
R2(ABCD)F={AB→CAB→D}F={AB→CAB→D}R2(ABCD)ABR2(ABCD)BCNF
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
ISBN 978-7-301-13321-7/TP·0941 2008.2
SQL Server
XYYX