Bài giảng Thiết kế cơ sở dữ liệu: Chương 2 - GV. Dương Khai Phong
lượt xem 22
download
Trong chương 2 Mô hình dữ liệu và các phụ thuộc dữ liệu thuộc bài giảng thiết kế cơ sở dữ liệu nhằm trình bày về các nội dung: các khái niệm mô hình dữ liệu, phụ thuộc hàm, hệ tiên đề Amstrong, bài toán tìm khóa và, bài toán PTH.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Thiết kế cơ sở dữ liệu: Chương 2 - GV. Dương Khai Phong
- ĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong Số tiết lý thuyết: 45 tiết Số tiết thực hành: 30 tiết GVHD: Dương Khai Phong – Email khaiphong@gmail.com 1
- http://sites.google.com/site/khaiphong Nội dung môn học: Chương 1: Giới thiệu tổng quan Chương 2: Mô hình dữ liệu và các phụ thuộc dữ liệu Chương 3: Phương pháp chuẩn hóa Lược đồ CSDL Chương 4: Lý thuyết đồ thị quan hệ Chương 5: Thiết kế CSDL ở mức vật lý 2
- http://sites.google.com/site/khaiphong Chương 2: Mô hình dữ liệu Các phụ thuộc dữ liệu Các khái niệm mô hình dữ liệu (ôn) Phụ thuộc hàm Hệ tiên đề Amstrong Bài toán tìm khóa và Bài toán PTH 3
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Các khái niệm mô hình dữ liệu Xét bài toán: quản lý lịch dạy của các giáo viên và lịch học của các lớp, một trường tổ chức như sau: Mỗi giáo viên có một mã số duy nhất, trường sẽ tổ chức lưu thông tin các giáo viên bao gồm: họ và tên giáo viên, số điện thoại gồm 10 số. Mỗi giáo viên có thể dạy nhiều môn cho nhiều khoa nhưng chỉ thuộc sự quản lý hành chánh của một khoa nào đó. 1. Thuộc tính? 2. Quan hệ? 3. Khóa? 4. Bộ - Phép chiếu? 4
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Các khái niệm mô hình dữ liệu 1. Thuộc tính 3. Khóa 2. Quan hệ 4. Bộ - Phép chiếu 5
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Các khái niệm mô hình dữ liệu Xét bài toán: quản lý lịch dạy của các giáo viên và lịch học của các lớp, một trường tổ chức như sau: Mỗi giáo viên có một mã số duy nhất, trường sẽ tổ chức lưu thông tin các giáo viên bao gồm: họ và tên giáo viên, số điện thoại gồm 10 số. Mỗi giáo viên có thể dạy nhiều môn cho nhiều khoa nhưng chỉ thuộc sự quản lý hành chánh của một khoa nào đó. Thuộc tính GIAOVIEN o o MAGV HO Characters (4) Characters (50) Quan hệ o TEN Characters (20) o SODIENTHOAI Characters (10) o TENMONHOC Characters (50) o TENKHOA Characters (50) 6
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Các khái niệm mô hình dữ liệu GIAOVIEN MAGV HO TEN SODT TENMH TENKHOA o MAGV Characters (4) GV01 Nguyen A 123 CSDL HTTT o HO Characters (50) o TEN Characters (20) GV02 Tran B 456 THĐC CNPM o SODIENTHOAI Characters (10) GV02 Le C 789 Mạng MMT o TENMONHOC Characters (50) o TENKHOA Characters (50) GV01 Nguyen A 123 TKCSDL HTTT 1. Thuộc tính (Attribute) là thông tin đặc thù của mỗi đối tượng được quản lý - Thuộc tính đươc xác đỉnh bởi: - Tên gọi (ví dụ TenSV, TenGV,..) - Kiểu dữ liệu (Type): số, văn bản, Boolean... - Miền giá trị (Domain): Ký hiệu MGT(A) 7
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Các khái niệm mô hình dữ liệu GIAOVIEN MAGV HO TEN SODT TENMH TENKHOA o MAGV Characters (4) GV01 Nguyen A 123 CSDL HTTT o HO Characters (50) o TEN Characters (20) GV02 Tran B 456 THĐC CNPM o SODIENTHOAI Characters (10) GV02 Le C 789 Mạng MMT o TENMONHOC Characters (50) o TENKHOA Characters (50) GV01 Nguyen A 123 TKCSDL HTTT 2. Quan hệ (Relation) Một quan hệ Q được định nghĩa trên một tập thuộc tính {A1, A2, .. , An} là một sự biểu diễn tập đối tượng cớ chung các thuộc tính. - Ký hiệu: Q(A1, A2, .. , An) - Ký hiệu: Q+ dùng biểu diễn tập thuộc tính {A1, A2, .. , An} - Mỗi quan hệ Q đều kèm theo một tân từ IIQII dùng để mô tả mối liên hệ ngữ nghĩa của các thuộc tính trong Q. Ví du: KetOuaHTYMSSV. MSMon. HocKy, DiemLl, DiemL2) Tân từ: Mỗi môn học (MSMon) trong một học kỳ (HocKy) sinh viên (MSSV) được thi tối đa 2 lần (DiemLl, DiemL2). 8
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Các khái niệm mô hình dữ liệu GIAOVIEN MAGV HO TEN SODT TENMH TENKHOA o MAGV Characters (4) GV01 Nguyen A 123 CSDL HTTT o HO Characters (50) o TEN Characters (20) GV02 Tran B 456 THĐC CNPM o SODIENTHOAI Characters (10) GV02 Le C 789 Mạng MMT o TENMONHOC Characters (50) o TENKHOA Characters (50) GV01 Nguyen A 123 TKCSDL HTTT 3. Bộ (Tuple) Một bộ q của quan hệ Q(A1, A2,..,An) là một tổ hợp giá trị (a1, a2,..,an) thoả 2 điều kiện: (1) Ai Q+, ai MGT(Ai) (2) Tân từ IIQ(a1, a2,..,an) II phải được thoả Ví dụ: quan hệ GIAOVIEN thì có các bộ q1=(GV01, Nguyen, A, 123, CSDL, HTTT) * Thể hiện (instance) của quan hệ Q, ký hiệu TQ, là một tập các bộ của Q TQ = { q= (a1, a2,..,an) / ai MGT(Ai), IIQ(q)ll = TRUE } 9
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Các khái niệm mô hình dữ liệu GIAOVIEN MAGV HO TEN SODT TENMH TENKHOA o MAGV Characters (4) GV01 Nguyen A 123 CSDL HTTT o HO Characters (50) o TEN Characters (20) GV02 Tran B 456 THĐC CNPM o SODIENTHOAI Characters (10) GV02 Le C 789 Mạng MMT o TENMONHOC Characters (50) o TENKHOA Characters (50) GV01 Nguyen A 123 TKCSDL HTTT 4. Siêu khóa (Super key): siêu khóa trên quan hệ Q là một tập thuộc tính S Q+ nếu mỗi giá trị của S có thể xác định duy nhất một bộ của Q q1, q2 TQ, q1.S = q2.S thì q1 = q2 * Khóa chỉ định (Candidate Key): hay khóa nội của Q là một siêu khóa ít thuộc tính nhất, không chứa bất kỳ một siêu khóa nào. * Thuộc tính khóa và thuộc tính không khóa: các thuộc tính tham gia vào khóa gọi là thuộc tính khóa, các thuộc tính không tham gia vào khóa gọi là các thuộc tính không khóa. 10
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Các khái niệm mô hình dữ liệu GIAOVIEN MAGV HO TEN SODT TENMH TENKHOA o MAGV Characters (4) GV01 Nguyen A 123 CSDL HTTT o HO Characters (50) o TEN Characters (20) GV02 Tran B 456 THĐC CNPM o SODIENTHOAI Characters (10) GV02 Le C 789 Mạng MMT o TENMONHOC Characters (50) o TENKHOA Characters (50) GV01 Nguyen A 123 TKCSDL HTTT 4. Siêu khóa (Super key): siêu khóa trên quan hệ Q là một tập thuộc tính S Q+ nếu mỗi giá trị của S có thể xác định duy nhất một bộ của Q q1, q2 TQ, q1.S = q2.S thì q1 = q2 * Khóa chỉ định (Candidate Key): hay khóa nội của Q là một siêu khóa ít thuộc tính nhất, không chứa bất kỳ một siêu khóa nào. * Thuộc tính khóa và thuộc tính không khóa: các thuộc tính tham gia vào khóa gọi là thuộc tính khóa, các thuộc tính không tham gia vào khóa gọi là các thuộc tính không khóa. 11
- http://sites.google.com/site/khaiphong Chương 2: Mô hình dữ liệu Các phụ thuộc dữ liệu Các khái niệm mô hình dữ liệu (ôn) Phụ thuộc hàm Hệ tiên đề Amstrong Bài toán tìm khóa và Bài toán PTH 13
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Phụ thuộc hàm 1. Xét bài toán: quản lý lịch bay các chuyến bay như sau PhanCong PHICONG MAYBAY NGAYKH GIOKH Quan hệ PhanCong diễn tả phi công Cushing 83 9/8 10:15a nào lái máy bay nào và máy bay Cushing 116 10/8 1:25p khởi hành vào thời gian nào. Không Clark 281 8/8 5:50a phải sự phối hợp bất kỳ nào giừa phi công, máy bay và ngày giờ khởi Clark 301 12/8 6:35p hành cũng đều được chấp nhận mà Clark 83 11/8 10:15a chúng có các điều kiện ràng buộc qui Chin 83 13/8 10:15a định sau: Chin 116 12/8 1:25p + Mỗi máy bay có một giờ khởi hành Copely 281 9/8 5:50a duy nhất. Copely 281 13/8 5:50a + Nếu biết phi công, biết ngày giờ Copely 412 15/8 1:25p khởi hành thì biết được máy bay đo phi công ấy lái. CÁC RÀNG BUỘC NÀY ĐƯỢC GỌI + Nếu biết máy bay, biết ngày khởi LÀ PHỤ THUỘC HÀM hành thì biết phi công lái chuyến bay đó. 14
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Phụ thuộc hàm 1. Xét bài toán: quản lý lịch bay các chuyến bay như sau + Mỗi máy bay có một giờ khởi hành duy nhất. + Nếu biết phi công, biết ngày giờ khởi hành thì biết được máy bay đo phi công ấy lái. + Nếu biết máy bay, biết ngày khởi hành thì biết phi công lái chuyến bay đó. Được phát biểu lại như sau: + MAYBAY xác định GIOKH. + {PHICONG,NGAYKH,GIOKH} xác định MAYBAY. + {MAYBAY,NGAYKH} xác định PHICONG. + GIOKH phụ thuộc hàm vào MAYBAY. + MAYBAY phụ thuộc hàm vào {PHICONG,NGAYKH,GIOKH}. + PHICONG phụ thuộc hàm vào {MAYBAY,NGAYKH}. Và được ký hiệu: + {MAYBAY} GIOKH. + {PHICONG,NGAYKH,GIOKH} MAYBAY. + {MAYBAY,NGAYKH} PHICONG. 15
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Phụ thuộc hàm 2. Định nghĩa: Cho một quan hệ Q(X, Y, Z) với X,Y, Z là các tập thuộc tính con của Q+ và với X,Y khác rỗng. Mọi thể hiện TQ của Q đều thoả phụ thuộc hàm X Y nếu: q1,q2 TQ: q1.x = q2.x thì q1.Y = q2.Y Khi đó ta nói: X xác định hàm Y hay Y phụ thuộc hàm vào X Quy ước: Nếu Y không phụ thuộc hàm vào X thì ta ký hiệu: X Y X Y là phụ thuộc hàm hiển nhiên nếu Y X 16
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Phụ thuộc hàm 2. Định nghĩa: Tập phụ thuộc hàm của một quan hệ: Tập hợp các PTH không hiển nhiên của Q, ký hiệu là FQ FQ = { fi : XY xác định trên Q} Qui ước: chỉ mô tả các phụ thuộc hàm không hiển nhiên trong tập F. Ví dụ: Xét quan hệ Giảng dạy: GD(MsGV, Hoten, MsMH, TenMH, Phòng, Giờ) Tập phụ thuộc hàm của GD được cho như sau: F={f1:MsGVHoten ; f2:MsMHTenMH; f3: Phong,Gio MSMH; f4: MsGV,GiờPhòng} 17
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Phụ thuộc hàm 3. Ý nghĩa của PTH: PTH là công cụ dùng để biểu diễn một cách hình thức mối quan hệ dữ liệu của các thuộc tính bên trong CSDL. Thông qua cách biểu diễn PTH, xác định khóa của quan hệ vai trò quan trọng trong các phương pháp thiết kế một lược đồ quan niệm của CSDL: • Tạo ra những quan hệ độc lập. • Giảm thiểu sự trùng lắp, dư thừa dữ liệu lưu trữ giảm bớt các sai sót khi cập nhật dữ liệu của người sử dụng. Đánh giá chất lượng bản thiết kế CSDL. 18
- ĐH CÔNG NGHỆ THÔNG TIN http://sites.google.com/site/khaiphong 19
- Chương 2: Mô hình dữ liệu – Phụ thuộc dữ liệu http://sites.google.com/site/khaiphong Bài 1 R A B C D Cho quan hệ R (A, B, C, D) như và thể hiện a 1 X 2 R như hình bên, cho biết PTH nào liệt kê dưới a 1 Y 2 đây thỏa quan hệ: b 2 X 1 a) f1: AA b 2 Y 1 b) f2: AB c) f3: AC d) f4: ACC e) f5: AD f) f6: DA 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Thiết kế web với Microsoft FrontPage 2003
107 p | 2468 | 672
-
Bài giảng Thiết kế web bài 5: Bố cục trang cơ bản
36 p | 219 | 52
-
Bài giảng An toàn cơ sở dữ liệu: Chương 3 - Trần Thị Lượng
114 p | 211 | 46
-
Bài giảng Thiết kế cơ sở dữ liệu phân tán - TS. Hồ Bảo Quốc
66 p | 208 | 27
-
Bài giảng Thiết kế cơ sở dữ liệu: Chương 3 - GV. Dương Khai Phong
42 p | 172 | 22
-
Bài giảng Thiết kế phần mềm
10 p | 176 | 14
-
Bài giảng Thiết kế cơ sở dữ liệu: Chương 1 - GV. Dương Khai Phong
54 p | 138 | 13
-
Bài giảng Thiết kế hạ tầng máy tính - Chương 5: Thiết kế Topo mạng
0 p | 114 | 13
-
Bài giảng Thiết kế Web: Tổng quan về thiết kế Web - Phạm Thế Bảo
29 p | 113 | 11
-
Bài giảng Thiết kế hệ thống mạng LAN - Chương 4: Quy trình thiết kế mạng LAN
55 p | 77 | 10
-
Bài giảng Thiết kế cơ sở dữ liệu: Chương 2 - ThS. Trần Quang Hải Bằng
38 p | 84 | 7
-
Bài giảng Thiết kế cơ sở dữ liệu: Chương 1 - ThS. Trần Quang Hải Bằng
33 p | 114 | 7
-
Bài giảng Thiết kế cơ sở dữ liệu quan hệ - Vũ Tuyết Trinh
25 p | 114 | 7
-
Bài giảng Cơ sở dữ liệu: Thiết kế cơ sở dữ liệu - ThS. Trịnh Hoàng Nam
10 p | 88 | 5
-
Bài giảng Cơ sở dữ liệu - Bài 1: Thiết kế Cơ sở dữ liệu với Management Studio
10 p | 62 | 5
-
Bài giảng Thiết kế cơ sở dữ liệu: Chương mở đầu - ThS. Trần Quang Hải Bằng
3 p | 65 | 3
-
Bài giảng Thiết kế số sử dụng VHDL
34 p | 16 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn