Tải bản đầy đủ (.pdf) (72 trang)

BÀI GIẢNG HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU CHƯƠNG 6

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.43 MB, 72 trang )


LOGO
!"#$%&'#()*#+,# #/0#12"%##
!"#$%&Nguyễn'Trường'Sơn'
1"
&
Chương'5:&
'(&#)&*+,&$-,.&
"/0#
Nội dung chi tiết
!  !121&34156&
!  7489&3:;4&;<&=4>=&?&9@A&9@4BC&
!  D1E9&FG1&HC9@&IJ1&HK&L6C9&45&
!  $K1&M6&4NC&;8O&3P6O&QR9&
!  S2;&TMU9@&V:;4&34M2;&;8O&3P6O&QR9&
!  74>3&H194&QW&34X;&341&YZ&T594&
[&
Giới thiệu
!  '\3&4C1&]6C9&45&-&QW&^&946&HC6&%&
_  -`ab&Db&*c&
_  ^`*b&db&ec&
!  '\3&;86&3P6O&QR9&HC6&F8O&3Pf9&-&QC&^&
&
!  04g9&h\3&&
_  ij3&;86&3P6O&QR9&;N&PR3&941k6&;>;4&34X;&4159&
_  $lO&3PMm9@&4U=&YW&;>;&;>;4&34X;&4159&FMU;&F>94&@1>&TW&3K3&4CO&no&
p&
^e#e*$&-qDb&^qd&
r-si&-b&^&
tue-e&-qav‘;’&a9n&^qev[&a9n&-q*v^q*&
Giới thiệu (tt)


!  'w&Tx&;yC&dDi^&
_  *>;4&z%&
_  *>;4&[%&
_  *>;4&p%&^w&n{9@&;4|&Y{;&3Pf9&-qa&QW&^q*&
}  $~Y&;>;&•j&3P€9@&-&34•C&-qav‘;’&
}  "21&Y‚1&•j&3~Y&34ROb&3~Y&31E=&;>;&•j&3P€9@&^&34•C&-q*v^q*&
}  D•&F1&94A9@&•j&^qe&≠&[&
}  *41E6&3Pf9&346j;&3:94&D&QW&d&
!  dDi^&;4ƒ9&;>;4&9W€&„&
…&
Mục'tiêu'chương%&&
(34#56789#:;<#=>#?@#567A#:B8#CDE#
)/FG-&&
Π
FH/
#I#σ
)JKL‘C’#∧#-JMLN#∧#)J+#L#-J+
#`-=^cO#
Π
FH/
#I#σ
)JKL‘C’
#P)Q######σ
-JMLN
#P^QO#
Giới thiệu (tt)
!  L6O&3P~94&hw&Tx&;86&3P6O&QR9&
†&
RST8#5UCS#CV#4SW4#
XYZ[#56E#89\#89S]E#

^_E#:`#ab89#
FYZ7#aYc8#56<89#
(dY#_7#SeE#
RSW5#fY8S#[g#
(ShC#5SY#[g#
Câu truy vấn
Kết quả truy vấn
Nội dung chi tiết
!  !121&34156&
!  RST8#5UCS#CV#4SW4#i#89\#89S]E#
!  D1E9&FG1&HC9@&IJ1&HK&L6C9&45&
!  $K1&M6&4NC&;8O&3P6O&QR9&
!  S2;&TMU9@&V:;4&34M2;&;8O&3P6O&QR9&
!  74>3&H194&QW&34X;&341&YZ&T594&
‡&
Phân tích cú pháp và ngữ nghĩa
RST8#5UCS#CV#4SW4#
XYZ[#56E#89\#89S]E#
^_E#:`#ab89#
FYZ7#aYc8#56<89#
(dY#_7#SeE#
RSW5#fY8S#[g#
(ShC#5SY#[g#
Câu truy vấn
Kết quả truy vấn
Kiểm'tra'câu'truy'
vấn'có'đúng'cú'pháp'
hay'không'
Kết'quả'cho'ra'là'1'
Cây'phân'tích'

(parse'tree)'
ˆ&
Phân tích cú pháp và ngữ nghĩa (tt)
!  *8O&;<&=4>=%&
‰&
<Query>
<SFW>
SELECT <SelectList> FROM <FromList> WHERE
<Condition>
<Attribute>
<AttributeName>
<Relation>
<TableName>
<Condition> AND <Condition>
<Attribute> = <Attribute>
<Tuple> IN <Query>
<Attribute> LIKE <pattern>

… …
Ví dụ 1
!  '\3&4C1&]6C9&45&HC6&%&
_  *6H3€YŠP`;6H‹db&;6H0Yb&;6H^3PŠŠ3b&;6H*13Oc&
_  a;;€693`C;;‹db&;6H‹db&•CTC9;Šc&
!  "W&;86&3P6O&QR9&
Œ&
^e#e*$&;6H0Y&
r-si&*6H3€YŠP&
tue-e&;6H‹d&‹0&`&
&^e#e*$&;6H‹d&
&r-si&a;;€693&&

&tue-e&•CTC9;Š&v&z••c&
Ví dụ 1 (tt)
z•&
j$7k6Al#
j-mnl#
-M1M+(# Ž^ŠTŠ;3#1H3•& m)oG# ŽrP€Y#1H3•& n!M)M#
Ž*€9n131€9•&
Ža33P1•63Š•& Ž-ŠTC31€9•&
;6H0Y&
*6H3€YŠP&
Ž$6=TŠ•& ‹0& j$7k6Al#
Ža33P1•63Š•&
;6H‹d& j-mnl#
-M1M+(# Ž^ŠTŠ;3#1H3•& m)oG# ŽrP€Y#1H3•& n!M)M#
Ž*€9n131€9•&
Ža33P1•63Š•&
;6H‹d&
Ž-ŠTC31€9•&
a;;€693&
Ža33P1•63Š•&
•CTC9;Š&
v& Ž=C33ŠP9•&
z••&
Ví dụ 2
!  '\3&4C1&]6C9&45&HC6&F8O&%&
_  *6H3€YŠP`;6H‹db&;6H0Yb&;6H^3PŠŠ3b&;6H*13Oc&
_  a;;€693`C;;‹db&;6H‹db&•CTC9;Šc&
!  "W&;86&3P6O&QR9&HC6%&
zz&
^e#e*$&;6H0Y&

r-si&*6H3€YŠPb&a;;€693&
tue-e&*6H3€YŠPq;6H‹d&v&a;;€693q;6H‹d&
a0d&•CTC9;Š&v&z••&
Ví dụ 2 (tt)
z[&
j$7k6Al#
j-mnl#
-M1M+(# Ž^ŠTŠ;3#1H3•& m)oG# ŽrP€Y#1H3•& n!M)M#
Ž*€9n131€9•&
Ža33P1•63Š•&
Ž-ŠTC31€9•&
;6H0Y&
*6H3€YŠP&
Ž-ŠTC31€9•&
a;;€693&
b&
Ž*€9n131€9•& Ž*€9n131€9•&a0d&
Ža33P1•63Š•& Ž7C33ŠP9•&v&Ža33P1•63Š•& Ža33P1•63Š•&v&
*6H3€YŠPq;6H‹d& a;;€693q;6H‹d& •CTC9;Š& z••&
Phân tích cú pháp và ngữ nghĩa
RST8#5UCS#CV#4SW4#
XYZ[#56E#89\#89S]E#
^_E#:`#ab89#
FYZ7#aYc8#56<89#
(dY#_7#SeE#
RSW5#fY8S#[g#
(ShC#5SY#[g#
Câu truy vấn
Kết quả truy vấn
Kiểm tra ngữ nghĩa giữa

Quan hệ trong mệnh đề
From với Thuộc tính trong
các mệnh đề khác
Kiểm tra kiểu dữ liệu có
phù hợp với thuộc tính
hay không. Tên thuộc tính
có nhập nhằng không
zp&
Nội dung chi tiết
!  !121&34156&
!  7489&3:;4&;<&=4>=&?&9@A&9@4BC&
!  FYp8#qrY#fE89#^bY#fd#$7E8#Ss#
!  $K1&M6&4NC&;8O&3P6O&QR9&
!  S2;&TMU9@&V:;4&34M2;&;8O&3P6O&QR9&
!  74>3&H194&QW&34X;&341&YZ&T594&
z…&
Biến đổi sang ĐSQH
RST8#5UCS#CV#4SW4#
XYZ[#56E#89\#89S]E#
^_E#:`#ab89#
FYZ7#aYc8#56<89#
(dY#_7#SeE#
RSW5#fY8S#[g#
(ShC#5SY#[g#
Câu truy vấn
Kết quả truy vấn
Dạng biểu diễn trong :
Chính là Biểu thức Đại số
Quan hệ
Biểu diễn dưới dạng Cây :

Cây Đại số Quan hệ
(logical query plan)
z†&
!  *86&3P6O&QR9&FMU;&=489&PZ&34W94&;>;&]6ŠPO&•T€;V&`LDcq&
_  L6ŠPO&DT€;V&TW&F•9&Q‘&;•&•’9&F“&;N&34“&;46O“9&HC9@&;>;&•1“6&34”;&
I^Lu&QW&3K1&M6&4€>&
_  ij3&LD&;4”C&Yj3&•1“6&34”;&F•9&^e#e*$?&r-si?tue-e?!-s,7&
D.&_&ua"‹0!&
_  *>;&;86&3P6O&QR9&T•9@&3P€9@&z&;86&3P6O&QR9&TW&;>;&LD&Fj;&Tg=q&&
_  *>;&3€>9&3w&@€Y&94NY&`YChb&Y19b&H6Yb&;€693c&FMU;&34“&4159&nl9@&
I^Lu&Yo&Pj9@q&
_  i‚1&;86&3P6O&QR9&FMU;&•1“6&n1–9&HC9@&nJ9@&I^Lu&nJ9@&•1“6&34”;&
4€—;&;8O&3P6O&QR9&`]6ŠPO&3PŠŠc&
z‡&
Biến đổi sang ĐSQH (tt)
!  (67A#:B8#qt8%&&
_  '\3&;86&3P<;&Ž-mn•b&Hw&n{9@&]6O&3˜;&Ž-mn•&
}  $4CO&34E&Žm6<[1Yf5•&34W94&;>;&•1E9&]6C9&45&
_  ^w&n{9@&=4\=&3:;4&;CP3ŠH1C9&`'c&;4€&;>;&•1E9&]6C9&45&
}  $4CO&34E&Ž+<8aY5Y<8•&34W94&=4\=&;4ƒ9&σ
+&
}  $4CO&34E&Ž-k?kC51Yf5•&34W94&=4\=&;41E6&π
1#
_  ™E3&]6’&TW&Yj3&*8O&3P6O&QR9&
zˆ&
R S T

x
σ
C

π
L
Xét ví dụ 2
z‰&
π;6H0Y&
σ*6H3€YŠPq;6H‹dva;;€693q;6H‹d&∧&•CTC9;Švz••&
*6H3€YŠP& a;;€693&
h&
Biến đổi sang ĐSQH (tt)
!  (67A#:B8#?u89%&&
$•9&3J1&;86&3P6O&QR9&;€9&^&3P€9@&Ž*€9n131€9•&
_  š=&n{9@&]61&3˜;&Ž-mn•&;4€&3P6O&QR9&;€9&-#
_  ^w&n{9@&phép'chọn'2'biến'`3›€?CP@6YŠ93&HŠTŠ;31€9c&
}  0<3&TW&=4\=&;4ƒ9&V4œ9@&;N&34CY&HK&
}  04>94&;€9&3P>1&TW&•1E9&]6C9&45&-&
}  04>94&;€9&=4’1&TW&Ž;€9n131€9•&>=&n{9@&;4€&[vY#wx#56<89#)#
zŒ&
σ
&
-& Ž*€9n131€9•&
^&$6=TŠ& s=ŠPC3€P&
*86&3P6O&QR9&;€9&
Xét ví dụ 1 (Lồng phân cấp)
[•&
πC7f'[#
σ&
*6H3€YŠP& Ž;€9n131€9•&
Ž36=TŠ•& ‹0&
π;6H‹d&
ŽC33P1•63Š•&

;6H‹d&
σ•CTC9;Švz••&
a;;€693&
^&
Biến đổi sang ĐSQH (tt)
!  $P6O&QR9&T•9@%&
_  D1E9&FG1&=4\=&;4ƒ9&[&•1E9&&
}  $4CO&34E&Ž*€9n131€9•&••9@&z&;8O&;N&9@ƒ9&TW&^&&
_  0E6&^&;N&;>;&•j&3Pl9@&94C6&34~&=4’1&TMU;&••&•23&•j&3Pl9@&94C6&F1q&^w&n{9@&
=4\=&δ&F“&TMU;&••&`@1K9@&d1H319;3c&
}  $4CO&34E&=4\=&;4ƒ9&[&•1E9&34W94&σ
*&
Q21&*&TW&F1k6&V159&T1f9&VE3&`V4œ9@&
F•9&346ž9&TW&VE3c&-&Q21&^
&
}  σ
*
&TWY&3Pf9&VE3&]6’&;yC&=4\=&;CP3ŠH1C9&;yC&-&QW&^&
[z&
σ
&
-& Ž*€9n131€9•&
^&$6=TŠ& s=ŠPC3€P&
σ
*&
-&
^&
h&
δ&
74\=&&

V4w&3Pl9@&
Xét ví dụ 1 (Lồng phân cấp)
[[&
π;6H0Y&
σ&
*6H3€YŠP& Ž;€9n131€9•&
Ž36=TŠ•& ‹0&
π;6H‹d&
ŽC33P1•63Š•&
;6H‹d&
σ•CTC9;Švz••&
a;;€693&
^&
I1k6&V159&T1f9&
VE3&-&QW&^&
Xét ví dụ 1 (tt)
[p&
π;6H0Y&
σ*6H3€YŠPq;6H‹dva;;€693q;6H‹d&
*6H3€YŠP&
'&
π;6H‹d&
σ•CTC9;Švz••&
a;;€693&
δ&
Lọai'bỏ'bộ'trùng'
(tương'đương'
distinct)'
Tương' đương' phép' kết'
!

'Ta'thay'bằng'phép'kết'
^&
Xét ví dụ 1 (tt)
[…&
πcusNm
*6H3€YŠPq;6H‹dva;;€693q;6H‹d&
*6H3€YŠP&
π;6H‹d&
σ•CTC9;Švz••&
a;;€693&
δ&
Ví dụ 3 (Lồng tương quan)
!  '\3&4C1&]6C9&45&HC6&F8O&%&
_  *6H3€YŠP`;6H‹db&;6H0Yb&;6H^3PŠŠ3b&;6H*13Oc&
_  a;;€693`C;;‹db&;6H‹db&•CTC9;Šc&
!  '\3&;86&3P6O&QR9&HC6&F8O&%&
[†&
^e#e*$&;q;6H0Y&
r-si&*6H3€YŠP&;&
tue-e&z••••&•v&`&
&^e#e*$&^,i`Cq•CTC9;Šc&
&r-si&a;;€693&C&
&tue-e&Cq;6H‹dv;q;6H‹dc&

×