Академический Документы
Профессиональный Документы
Культура Документы
! Giới"thiệu"
! Các"khái"niệm"của"mô"hình"quan"hệ"
!
CHƯƠNG'3'
! Một"số"khái"niệm"về"khóa"
! Các"đặc"trưng"của"quan"hệ"
Mô!hình!dữ!liệu!quan!hệ! ! Chuyển"lược"đồ"E/R"sang"thiết"kế"quan"hệ"
Bài$giảng$môn$Cơ$sở$dữ$liệu$$
©"Bộ"môn"Hệ"Thống"Thông"Tin"/"Khoa"Công"Nghệ"Thông"Tin"/"Trường"Đại"học"Khoa"học"Tự"nhiên""" ©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 2$
Giới!thiệu! Nội!dung!chi!3ết!
! Do"tiến"sĩ"E."F."Codd"đưa"ra" ! Giới"thiệu"
- “A"Relation"Model"for"Large"Shared"Data"Banks”," ! Các$khái$niệm$của$mô$hình$quan$hệ$
Communications"of"ACM,"6/1970" - Quan"hệ"(Relation)"
! Cung"cấp"một"cấu"trúc"dữ"liệu"đơn"giản"và"đồng"bộ" - Thuộc"tính"(Attribute)"
- Khái"niệm"Quan"hệ" - Bộ"(Tuple)"
! Có"nền"tảng"lý"thuyết"vững"chắc" - Miền"giá"trị"(Domain)""
- Lý"thuyết"tập"hợp" - Lược"đồ"(Schema)"
! Là"cơ"sở"của"các"HQT"CSDL"thương"mại" ! Một"số"khái"niệm"về"khóa""
- Oracle,"DB2,"SQL"Server…" ! Các"đặc"trưng"của"quan"hệ"
! Chuyển"lược"đồ"E/R"sang"thiết"kế"quan"hệ"
©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 3$ ©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 4$
Quan!hệ! Quan!hệ!(:)!
! Một"quan"hệ"là"một"bảng"(table)"2"chiều:" ! Theo"thuật"ngữ"của"mô"hình"quan"hệ:"
- Mỗi"dòng"(trừ"dòng"đầu"tiên)"gồm"các"giá"trị"thể"hiện"một"thực"thể" - Một"bảng"(như"đã"mô"tả)"gọi"là"một"quan"hệ"(relation)."
hoặc"một"mối"kết"hợp"trong"thực"tế."
- Mỗi"dòng"dữ"liệu"gọi"là"một"bộ"(tuple)."
- Mỗi"tiêu"đề"cột"cho"biết"ý"nghĩa"của"từng"giá"trị"trên"một"dòng."
- Mỗi"tiêu"đề"cột"gọi"là"một"thuộc"tính"(attribute)."
- VD:"Quan"hệ"KHOA,"mỗi"dòng"gồm"các"giá"trị"thể"hiện"một"khoa." - Tập"hợp"các"giá"trị"mà"một"thuộc"tính"có"thể"nhận"lấy,"gọi"là"miền"
giá"trị"(domain)"của"thuộc"tính."
! VD:"Quan"hệ"KHOA"có"4"bộ,"có"7"thuộc"tính."
! Mô"hình"quan"hệ"thể"hiện"một"CSDL"thông"qua"nhiều"quan"hệ." ! Một"bộ"~"Một"thực"thể"hoặc"một"mối"kết"hợp;""
5$
"""""Quan"hệ"~"Tập"thực"thể"hoặc"tập"mối"kết"hợp" 6$
©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" ©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN"
Miền!giá!trị!của!thuộc!Anh! Lược!đồ!quan!hệ!
! Một"miền"giá"trị"D"là"một"tập"hợp"các"giá"trị"nguyên"tố"(atomic" ! Một"lược"đồ"quan"hệ"(relation"schema)"R,""thể"hiện"bởi"R(A1,"
value)." A2,"…,"An),"trong"đó"R"là"tên"lược"đồ"quan"hệ;"A1,"A2,"…,"An"là"
các"thuộc"tính.""
- Giá"trị"nguyên"tố"là"giá"trị"không"thể"chia"nhỏ"hơn."
! Từng"thuộc"tính"Ai"nhận"giá"trị"thuộc"miền"giá"trị"D"tương"ứng,"
! Để"mô"tả"một"miền"giá"trị"D,"người"ta"thường"dùng"kiểu"dữ"liệu" ký"hiệu"là"dom(Ai)."""
và"định"dạng"của"các"giá"trị"trong"D." ! Bậc"(degree)"của"lược"đồ"quan"hệ"là"số"lượng"thuộc"tính"trong"
- Ví"dụ:"" lược"đồ."
" Kiểu"dữ"liệu:"ký"tự,"chuỗi,"số"nguyên,"số"thực,"…"
" Định"dạng:"(chuỗi)"7"ký"số,"(ngày"tháng)"có"dạng"dd/yy."""" ! Ví"dụ:"KHOA$(MÃKHOA,"TÊNKHOA,"NĂMTL,"PHÒNG,"
- Ví"dụ:"Miền"giá"trị"của:" ĐIỆNTHOAI,"TRƯỞNGKHOA,"NGÀYNHẬNCHỨC).""
" TÊNKHOA:"tập"hợp"các"chuỗi"cho"biết"tên"các"khoa"trong"một" - KHOA"là"một"lược"đồ"quan"hệ"bậc"7,"mô"tả"tập"các"thực"thể"
khoa."
trường"đại"học."
- MÃKHOA"là"một"thuộc"tính"có"miền"giá"trị"là"chuỗi."
" MÃSV:"tập"hợp"các"chuỗi"7"ký"số."
- NĂMTL"là"một"thuộc"tính"có"miền"giá"trị"là"số"nguyên."
" ĐIỂM:"số"thực"thuộc"[0,"10]"và"chính"xác"đến"0.5.""
©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 7$ ©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 8$
Quan!hệ! Lược!đồ!CSDL!
! Một"quan"hệ"r"của"lược"đồ"quan"hệ"R(A1,"A2,"…,"An),"ký"hiệu"r(R),"là:" ! Một"lược"đồ"CSDL"gồm"nhiều"lược"đồ"quan"hệ."
- Một"tập"hợp"các"bộ"r"="{t1,"t2,"…,"tm},"mỗi"bộ"t"là"một"danh"sách"có"thứ" ! Ví"dụ:"Lược"đồ"CSDL:""
tự"gồm"n"giá"trị"t"="{v1,"v2,"…,"vn}""
GIÁOVIÊN (MÃGV, HỌTÊN, LƯƠNG, PHÁI, NGÀYSINH, SỐNHÀ, ĐƯỜNG, QUẬN, THÀNHPHỐ, GVQLCM,
- Trong"đó,"mỗi"giá"trị"vi,"1≤"i"≤n,"thuộc"dom(Ai)"hoặc"là"giá"trị"rỗng" MÃBM)
!Quy!ước!cách!ký!hiệu! Nội!dung!chi!3ết!
! Lược"đồ"quan"hệ"R"bậc"n" ! Giới"thiệu"
- R(A1,"A2,"…,"An)" ! Các"khái"niệm"của"mô"hình"quan"hệ$
- R"là"tên"lược"đồ"quan"hệ" ! Một"số"khái"niệm"về"khóa$
! Quan"hệ"(thể"hiện"quan"hệ)" - Siêu"khóa"
- r,"q,"s" - Khóa"
! Bộ" - Khóa"chính"
- t,"u,"v" - Tham"chiếu"
! Miền"giá"trị"của"thuộc"tính"A" - Khóa"ngoại$$
- Dom(A)" ! Các"đặc"trưng"của"quan"hệ"
! Giá"trị"tại"thuộc"tính"A"của"bộ"thứ"t" ! Chuyển"lược"đồ"E/R"sang"thiết"kế"quan"hệ"
- t.A"hay"t[A]"
Khóa!chính!! Tham!chiếu!
! Một"lược"đồ"quan"hệ"có"thể"có"nhiều"khóa." ! Một"bộ"trong"quan"hệ"R,"tại"thuộc"tính"A"nếu"nhận"một"giá"
! Khi"cài"đặt"quan"hệ"thành"bảng"(table)" trị"từ"một"thuộc"tính"B"của"quan"hệ"S,"ta"gọi"R"tham"chiếu"S"
- Chọn"1"khóa"làm"cơ"sở"để"nhận"biết"các"bộ" - Bộ"được"tham"chiếu"phải"tồn"tại"trước"
" Nên"chọn"khóa"có"ít"thuộc"tính"hơn"
TÊNKHOA MÃKHOA
- Khóa"đã"chọn"được"gọi"là"khóa"chính"(PK"/"primary"key)"
CNTT 5
S
- Các"thuộc"tính"khóa"chính"phải"có"giá"trị"khác"null" VL 4
! Thể"hiện"khóa"chính"bằng"cách"gạch"dưới" TOÁN 1
KHOA(MÃKHOA,"TÊNKHOA,"NĂMTL,"PHÒNG,"ĐIỆNTHOẠI,"NGÀYNHẬN"CHỨC)"
MÃBM TÊNBM PHÒNG ĐiỆNTHOẠI MÃKHOA
Khóa chính
Khóa!ngoại!(:)! Nội!dung!chi!3ết!
GIÁOVIÊN
MãGV" HọTên" Lương" Phái" NgàySinh" SốNhà" Đường" Quận" ThànhPhố" GVQL" MãBM" ! Giới"thiệu"
GV_DT ! Các"khái"niệm"của"mô"hình"quan"hệ$
MãGV$ ĐiệnThoại$
! Một"số"khái"niệm"về"khóa$$
BỘMÔN
MãKhoa" TrưởngBM" NgàyNhậnChức" ĐiệnThoại" MãBM$ TênBM" Phòng"
! Các$đặc$trưng$của$quan$hệ"
KHOA ! Chuyển"lược"đồ"E/R"sang"thiết"kế"quan"hệ"
TrưởngKhoa" NgàyNhậnChức" TênKhoa" NămTL" Phòng" ĐiệnThoại" MãKhoa"
ĐỀTÀI
GVCNĐT$ MãĐT$ TênĐT" KinhPhí" CấpQL" NgàyBĐ" NgàyKT" MãCĐ"
CÔNGVIỆC CHỦĐỀ
MãĐT$ STT$ TênCV" NgàyBĐ" NgàyKT" MãCĐ$ TênCĐ"
THAMGIAĐT
MãGV$ MãĐT$ STT$ PhụCấp" KếtQuả"
! Thứ"tự"giữa"các"giá"trị"trong"một"bộ"là"quan"trọng"
khác
Nội!dung!chi!3ết! Tập!thực!thể!
! Giới"thiệu" ! Với"mỗi"tập"thực"thể"(trừ"tập"thực"thể"yếu),"tạo"một"quan"hệ"
! Các"khái"niệm"của"mô"hình"quan"hệ$ tương"ứng:"
! Một"số"khái"niệm"về"khóa$$ - Tên"quan"hệ"là"tên"của"tập"thực"thể"
! Các"đặc"trưng"của"quan"hệ" - (Các)"thuộc"tính"của"quan"hệ"là"(các)"thuộc"tính"đơn"của"tập"
thực"thể"(ngoại"trừ"thuộc"tính"kết"hợp"và"đa"trị)"
! Chuyển$lược$đồ$E/R$sang$thiết$kế$quan$hệ$
- Các"qui"tắc"chuyển"đổi" LƯƠNG HỌTÊN MÃ GV
MÃBM
TÊNBM
PHÒNG
PHÁI NGÀYSINH
ĐIỆNTHOẠI
ĐỊA CHỈ
GIÁOVIÊN (MÃGV, HỌTÊN, LƯƠNG, PHÁI, NGÀYSINH)
SỐNHÀ
THÀNHPHỐ
BỘMÔN (MÃBM, TÊNBM, PHÒNG, ĐIỆNTHOẠI)
ĐƯỜNG
QUẬN
MÃ GV MÃ GV
MÃ GV MÃ GV
HỌTÊN ĐIỆNTHOẠI HỌTÊN ĐIỆNTHOẠI
HỌTÊN ĐIỆNTHOẠI HỌTÊN ĐIỆNTHOẠI
NGÀYSINH NGÀYSINH
NGÀYSINH NGÀYSINH
LƯƠNG LƯƠNG
LƯƠNG LƯƠNG
THÀNHPHỐ
ĐỊA CHỈ ĐỊA CHỈ SỐNHÀ
ĐỊA CHỈ
ĐƯỜNG
THÀNHPHỐ THÀNHPHỐ QUẬN
SỐNHÀ SỐNHÀ
ĐƯỜNG ĐƯỜNG
QUẬN QUẬN
GIÁOVIÊN (MÃGV, HỌTÊN, LƯƠNG, PHÁI, NGÀYSINH, SỐNHÀ, ĐƯỜNG, QUẬN, THÀNHPHỐ)
GIÁOVIÊN (MÃGV, HỌTÊN, LƯƠNG, PHÁI, NGÀYSINH, ĐỊA CHỈ)
©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 25$ ©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 26$
Tập!thực!thể:!Thuộc!Anh!đa!trị! Tập!thực!thể!yếu!
! Với"mỗi"thuộc"tính"đa"trị,"tạo"một"quan"hệ"mới"có"các"thuộc" ! Với"mỗi"tập"thực"thể"yếu,"tạo"một"quan"hệ"tương"ứng"có:"
tính"gồm"thuộc"tính"khóa"chính"của"quan"hệ"và"thuộc"tính" - Tên"trùng"với"tên"của"tập"thực"thể"yếu."
đa"trị"đó."" - Các"thuộc"tính"ứng"với"các"thuộc"tính"đơn"của"tập"thực"thể"yếu."
- Khóa"chính"của"quan"hệ"vừa"tạo:"hoặc"là"thuộc"tính"đa"trị"đó" - Thêm"vào"thuộc"tính"khóa"của"quan"hệ"ứng"với"tập"thực"thể"liên"
hoặc"là"khóa"chính"quan"hệ"và"thuộc"tính"đa"trị." quan."
- Khóa"của"quan"hệ"là"kết"hợp"khóa"yếu"của"tập"thực"thể"yếu"và"khóa"
chính"của"quan"hệ"ứng"với"tập"thực"thể"liên"quan."
MÃ GV
NGÀYKT
hoặc TÊNĐT
NGÀYSINH SốTT NGÀYBĐ
LƯƠNG KINHPHÍ
CẤPQL
ĐIỆNTHOẠI (SốĐT, MÃGV)
GIÁO VIÊN (1,1)
CÔNG VIỆC
NGƯỜITHÂN gồm (0,n) ĐỀ TÀI
!
PHÁI
Thuộc!Anh!riêng!của!tập!mối!kết!hợp!
(trừ!tập!mối!kết!hợp!n]n)! Tập!mối!kết!hợp!n]n!
! Thuộc"tính"riêng"của"tập"mối"kết"hợp"(1/1"hoặc"1/n)"trở"thành" ! Với"mỗi"tập"mối"kết"hợp"n/n,"tạo"một"quan"hệ"mới"có:""
thuộc"tính"của"S." - Tên"quan"hệ"là"tên"của"tập"mối"kết"hợp."
" - Thuộc"tính"gồm"những"thuộc"tính"khóa"của"các"quan"hệ"ứng"với"
LƯƠNG HỌTÊN MÃ GV TÊNBM
MÃBM
PHÒNG
các"tập"thực"thể"liên"quan,"và"thuộc"tính"riêng"của"mối"kết"hợp"
(nếu"có)."
PHÁI NGÀYSINH
ĐIỆNTHOẠI
T GIÁOVIÊN (MÃGV, HỌTÊN, LƯƠNG, PHÁI, NGÀYSINH, SỐNHÀ, ĐƯỜNG, QUẬN, THÀNHPHỐ, MÃBM) PHÁI
(0,n) Tham_gia (0,n)
S BỘMÔN (MÃBM, TÊNBM, PHÒNG, ĐIỆNTHOẠI, TRƯỞNGBM, NGÀYNHẬNCHỨC)
ĐỊA CHỈ
THÀNHPHỐ
CHỦĐỀ (MÃCĐ, TÊNCĐ)
SỐNHÀ
CÔNGVIỆC (MÃĐT, STT, TÊNCV, NGÀYBĐ, NGÀYKT)
ĐƯỜNG
QUẬN THAMGIA(MÃGV, MÃĐT, STT, PHỤCẤP, KẾTQUẢ)
©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 31$ ©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 32$
Bài!tập!! Vĩ tuyến Kinh tuyến Ngày
Thời gian
Giờ
Lịch
NGƯỜITHÂN
sử di chuyển Mã chủ tàu
Họ tên
(1,1)
Chủ tàu
,n) Điện thoại
(1
có
sở hữu
Mã loại Tải trọng
Vỏ tàu
)
Mã tàu (0,n) ,1
(1
) (0
,1 ,n Ngày bắt đầu
(1 )
Ngày kết thúc
Tên biển
(1,1)
©"Bộ"môn"HTTT"/"Khoa"CNTT"/"Trường"ĐH"KHTN" 33$