intTypePromotion=1

Bài giảng Thiết kế cơ sở dữ liệu: Chương 3 - GV. Dương Khai Phong

Chia sẻ: Fczxxv Fczxxv | Ngày: | Loại File: PDF | Số trang:42

0
124
lượt xem
18
download

Bài giảng Thiết kế cơ sở dữ liệu: Chương 3 - GV. Dương Khai Phong

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Thiết kế cơ sở dữ liệu: Chương 3 Phương pháp chuẩn hóa Lược đồ cơ sở dữ liệu nhằm trình bày về giới thiệu dạng chuẩn, phân loại dạng chuẩn, phương pháp chuẩn hóa và bài tập chuẩn hóa...cùng tìm hiểu về phương pháp chuẩn hóa qua bài giảng này.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Thiết kế cơ sở dữ liệu: Chương 3 - GV. Dương Khai Phong

  1. Đ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
  2. 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
  3. http://sites.google.com/site/khaiphong  Chương 3: Phương pháp chuẩn hóa lược đồ CSDL 1. Giới thiệu dạng chuẩn 2. Phân loại dạng chuẩn 3. Phương pháp chuẩn hóa 4. Bài tập chuẩn hóa 3
  4.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 1. Giới thiệu dạng chuẩn Xét bài toán 1: Cho thể hiện của một quan hệ sau MASV HO TEN KHOA TÊN_MH DIEM Tin hoc dai cuong 6 9912 Nguyen Thu Cong nghe thong tin Co so du lieu 8 Toan roi rac 4 9903 Nguyen A Kinh te Xac suat thong ke 5 Chọn lược đồ? MASV HO TEN KHOA TÊN_MH DIEM 9912 Nguyen Thu Cong nghe thong tin Tin hoc dai cuong 6 9912 Nguyen Thu Cong nghe thong tin Co so du lieu 8 9912 Nguyen Thu Cong nghe thong tin Toan roi rac 4 9903 Nguyen A Kinh te Xac suat thong ke 5 MASV HO TEN MAKHOA KHOA 9912 Nguyen Thu CNTT Cong nghe thong tin 9903 Nguyen A KT Kinh te MAMH TÊN_MH MAKHOA MASV MAMH DIEM THDC Tin hoc dai cuong CNTT 9912 CNTT 6 CSDL Co so du lieu CNTT 9912 CNTT 8 TRR Toan roi rac CNTT 9912 CNTT 4 XSTK Xac suat thong ke KT 9903 KT 5 4
  5.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 1. Giới thiệu dạng chuẩn Nhận xét bài toán 1:  Sự trùng lắp thông tin: tăng không gian lưu trữ  thông tin bị mâu thuẫn khi cập nhật CSDL.  Chi phí kiểm tra ràng buộc toàn vẹn.  Bảo toàn thông tin.  Bảo toàn qui tắc quản lý tức là bảo toàn các phụ thuộc hàm. 5
  6.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 1. Giới thiệu dạng chuẩn Xét bài toán 2: Cho thể hiện của quan hệ quản lý học tập của sinh viên QLHT(MsSV, Ten, NS, Phai, ĐC, MsLop, TenLop, MsMH, TenMH, Diem) F = { f1:MsSV  Ten, NS, Phai, ĐC, MsLop; f2: MsLop  TenLop; f3: MsMH  TenMH; f4: TenMH  MsMH; f5: MsSV, MsMH  Diem } 6
  7.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 1. Giới thiệu dạng chuẩn Xét bài toán 2: Cho thể hiện của quan hệ quản lý học tập của sinh viên QLHT(MsSV, Ten, NS, Phai, ĐC, MsLop, TenLop, MsMH, TenMH, Diem) F = { f1:MsSV  Ten, NS, Phai, ĐC, MsLop; f2: MsLop  TenLop; f3: MsMH  TenMH; f4: TenMH  MsMH; f5: MsSV, MsMH  Diem }  Sửa đổi: Giả sử có 1 sv thay đổi địa chỉ  duyệt toàn bộ quan hệ để tìm và sửa địa chỉ ở các bộ liên quan đến sv này  thông tin không nhất quán. 7
  8.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 1. Giới thiệu dạng chuẩn Xét bài toán 2: Cho thể hiện của quan hệ quản lý học tập của sinh viên QLHT(MsSV, Ten, NS, Phai, ĐC, MsLop, TenLop, MsMH, TenMH, Diem) F = { f1:MsSV  Ten, NS, Phai, ĐC, MsLop; f2: MsLop  TenLop; f3: MsMH  TenMH; f4: TenMH  MsMH; f5: MsSV, MsMH  Diem }  Xóa: Giả sử sv có mã số 1108 hiện nay chỉ đăng ký học môn CSDL  xóa kết quả điểm môn này  xóa thông tin của sv này. 8
  9.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 1. Giới thiệu dạng chuẩn Xét bài toán 2: Cho thể hiện của quan hệ quản lý học tập của sinh viên QLHT(MsSV, Ten, NS, Phai, ĐC, MsLop, TenLop, MsMH, TenMH, Diem) F = { f1:MsSV  Ten, NS, Phai, ĐC, MsLop; f2: MsLop  TenLop; f3: MsMH  TenMH; f4: TenMH  MsMH; f5: MsSV, MsMH  Diem }  Thêm: vì khóa của quan hệ là {MsSV, MsMH} và {MsSV, TenMH}  không thể thêm 1 sv vào quan hệ nếu sv đó chưa đăng ký học môn nào. 9
  10.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 1 (DC1)  Khái niệm: Một lược đồ Q đạt DC1 nếu toàn bộ các thuộc tính của mọi bộ đều mang giá trị đơn. DC2  Nhận xét: khi xét DC, xem DC đang xét ít nhất đạt DC1. DC3 * Tips: Giá trị đơn là giá trị không phải kết hợp bởi nhiều thông tin có ý nghĩa khác nhau. BCK Ví dụ: giá trị của thuộc tính Bằng cấp: {“Thạc sĩ”,”ĐH CNTT”}: thuộc tính mang giá trị kép. {“Thạc sĩ}: thuộc tính mang giá trị đơn. DC4 10
  11.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 2 (DC2)  Khái niệm: Một lược đồ Q đạt DC2 nếu  Q ở dạng DC1. DC2  Mọi thuộc tính không khóa đều phụ thuộc đầy đủ vào các khóa của Q. DC3 * Tips: Thuộc tính A được gọi là phụ thuộc đầy đủ vào tập thuộc tính X nếu: BCK  A  XF +  X  A là pth nguyên tố. Ví dụ: MsSV, MsMH  TenSV là pth không đầy đủ DC4 do: MsSV  TenSV 11
  12.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 2 (DC2)  Thuật toán kiểm tra DC2:  Input: Q,F DC2  Output: Q đạt DC2?  Thuật toán: B1: Tìm tập các khóa của Q DC3 B2: Với mỗi khóa, tính bao đóng của tất cả các tập con thật sự S của Q. BCK B3: Nếu có bao đóng S+ chứa thuộc tính không khóa thì Q không đạt DC2 (ngược lại đạt). * Tips: Nếu mỗi khóa của quan hệ Q chỉ có một thuộc DC4 tính thì Q hiển nhiên đạt DC2. 12
  13.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 2 (DC2) Ví dụ: Cho Q (A,B,C,D) và F=(ABC;BD;BC A). Hỏi Q đạt DC2? DC2 Giải: B1: tìm tập các khóa N = {B},M= {AC} DC3 AC Ki Ki = N  Ki K+I.F Siêu khóa Khóa 00  B BD BCK 01 C BC BCAD = Q+ BC AB 10 A BA BACD = Q+ AB BC DC4 11 AC BAC BACD = Q+ BAC 13
  14.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 2 (DC2) Ví dụ: Cho Q (A,B,C,D) và F = (ABC ; B D ; BC  A). Hỏi Q đạt DC2? DC2 Giải: B1: tập các khóa {AB},{BC} B2,3: tính bao đóng các tập con của khóa {AB}, {BC} DC3 AB Si (Si)+ Kết luận 00   BCK 01 B BD (BD)+ chứa thuộc tính không khóa D 10 A A DC4 11 AB ABCD  Kết luận: Q không đạt DC2 14
  15.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 3 (DC3)  Khái niệm 1: Một lược đồ Q đạt DC3 nếu DC2  Q đạt dạng DC2.  Mọi thuộc tính không khóa của Q đều không phụ thuộc bắc cầu vào một khóa bất kỳ của Q. DC3 * Tips: Thuộc tính A được gọi là phụ thuộc bắc cầu vào tập thuộc tính X nếu tồn tại nhóm thuộc BCK tính Y  Q+ thỏa các điều kiện sau:  X  Y  F+ và Y  A  F+ YX DC4  A  (X  Y) 15
  16.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 3 (DC3)  Khái niệm 2: Một lược đồ Q đạt DC3 nếu mọi DC2 pth X  A  F+ với A  X đều có  hoặc X là siêu khóa. DC3  hoặc A là thuộc tính khóa. BCK * Tips: thông thường dựa trên khái niệm 2 để giải quyết bài toán kiểm tra lược đồ Q có đạt dạng chuẩn DC4 DC3? 16
  17.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 3 (DC3)  Thuật toán kiểm tra DC2: DC2  Input: Q,F  Output: Q đạt DC3?  Thuật toán: DC3 B1: Tìm tập các khóa của Q B2: Từ F tạo tập pth tương đương Ftt có vế phải 1 thuộc tính. BCK B3: Nếu mọi pth XA Ftt với AX đều có  hoặc X là siêu khóa.  hoặc A là thuộc tính khóa. DC4  Q đạt DC3 hoặc ngược lại. 17
  18.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 3 (DC3) Ví dụ: Cho Q (A,B,C,D) và F = (ABC ; DB ; C DC2  ABD). Hỏi Q đạt DC3? Giải: B1: tìm tập các khóa DC3 N = {},M= {ABCD} (Kẻ bảng xác định tập khóa) BCK  Tập khóa: {AB}, {AD}, {C} DC4 18
  19.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn 3 (DC3) Ví dụ: Cho Q (A,B,C,D) và F = (ABC ; DB ; C DC2  ABD). Hỏi Q đạt DC3? Giải: B1: tập các khóa {AB}, {AD}, {C} DC3 B2,3: tập pth tương đương Ftt của F có VP một thuộc tính: F = (ABC ; DB ; C  ABD) BCK Ftt = (ABC ; DB ; CA ; CB ; CD) Nhận xét: - pth ABC : có C là thuộc tính khóa DC4 - pth DB : có B là thuộc tính khóa - pth CA : có A là thuộc tính khóa Đạt DC3 - pth CB : có B là thuộc tính khóa - pth CD : có D là thuộc tính khóa 19
  20.  Chương 3: Phương pháp chuẩn hóa LĐ CSDL http://sites.google.com/site/khaiphong 2. Phân loại dạng chuẩn DC1 Dạng chuẩn BCK (Boyce-Codd-Kent)  Khái niệm: Một lược đồ Q đạt BCK (còn gọi BC) DC2 nếu mọi pth không hiển nhiên đều có vế trái chứa khóa.  Thuật toán kiểm tra BC: DC3  Input: Q,F  Output: Q đạt BC?  Thuật toán: BCK B1: Tìm tập các khóa của Q B2: Nếu mọi pth XA Ftt với AX đều có X là siêu khóa  Q đạt DC3 hoặc ngược lại. DC4 20
ADSENSE
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2