Bài thuyết trình Tin học 12 - Bài 10: Cơ sở dữ liệu quan hệ
Bạn đang xem 20 trang mẫu của tài liệu "Bài thuyết trình Tin học 12 - Bài 10: Cơ sở dữ liệu quan hệ", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_thuyet_trinh_tin_hoc_12_bai_10_co_so_du_lieu_quan_he.pptx
Nội dung text: Bài thuyết trình Tin học 12 - Bài 10: Cơ sở dữ liệu quan hệ
- Nhóm 5
- 1. Mô hình dữ liệu quan hệ: Trong lĩnh vực CSDL, người ta dùng mô hình dữ liệu để mô tả dữ liệu ở mức cao, tổng quát, vì vậy mô hình dữ liệu được dùng để thiết kế CSDL. Cấu trúc dữ liệu Vậy khi thiết kế CSDL cần Các thao tác, phép quan tâm những yếu tố nào? toán trên dữ liệu Ràng buộc dữ liệu 2
- 1. Mô hình dữ liệu quan hệ: a. Khái niệm mô hình dữ liệu Mô hình dMôữ lihìnhệu làdữmliộệtutlàậpgìkhái? niệm dùng để mô tả cấu trúc dữ liệu, các thao tác, phép toán trên dữ liệu và các ràng buộc dữ liệu trên một CSDL. VD: Mô hình dữ liệu quan hệ, mô hình dữ liệu hướng đối tượng, mô hình dữ liệu phân cấp, 3
- 1. Mô hình dữ liệu quan hệ: b. Mô hình dữ liệu quan hệ Mô hình dữ liệu quan hệ (gọi tắt là mô hình quan hệ) được E.F.Codd đề xuất năm 1970. Trong 30 năm trở lại đây, các hệ CSDL xây dựng theo mô hình quan hệ được dùng rất phổ biến. Trong mô hình quan hệ: − Về mặt cấu trúc: − V+ề mDặữt lithaoệu đtácượctrênthểdhiữệnliệtrongu: các bảng; − Về mặt các ràng buộc dữ liệu: + MCậỗpi bnhảngật dcóữ nhiliệuề:u thêmcột, ,dòng sửa, xóa=> th1 ểbảhingện Dữ liệu trong các bảng phải thỏa mãn một số thôngghi; tin về 1 chủ thể; ràng buộc ví dụ như: không có hai bộ nào + MKhaiỗi cthácột biểduữthliệịuthu: tìmộc kitínhếmcthôngủa chủquathể ;truy trong một bảng giống nhau hoàn toàn + Mvấỗni, dòngsắp xếbipể, u thị cho một cá thể trong chủ thể. 4
- 1. Mô hình dữ liệu quan hệ: a. Mô hình dữ liệu là gì? b. Mô hình dữ liệu quan hệ 2. CSDL quan hệ: − CSDL quan hệ là CSDL được xây dựng dựa trên mô hình dữ liệu quan hệ. − Hệ QT CSDL quan hệ là hệ QT CSDL dùng để tạo lập, cập nhật và khai thác CSDL quan hệ. − Trong CSDL quan hệ, thuật ngữ: + Quan hệ dùng để chỉ bảng; + Thuộc tính dùng để chỉ cột (trường); + Bộ dùng để chỉ dòng (bản ghi); + Miền giá trị dùng để chỉ kiểu dữ liệu. 5
- Ví dụ: ệ Quan h Thuộc tính Bảng HOC_SINH Ma_hoc_sinh Ho_dem Ten 35103031 Nguyễn Ngọc Nhất Linh 35103023 Phan Văn Huy 35103037 Lê Thị Kim Nga 35103070 Mai Thị Giang Thùy 35103056 Trần Thị Hồng Nhung 35103008 Phùng Đức Bộ Miền giá trị: text 6
- Các đặc trưng của một quan hệ: Trong Access, có thể tạo được 2 bảng: MON_HOC(Ma_mon_hoc,Ten_mon_h oc) và MON_HOC(Ma_mon_hoc,So_tiet) trong cùng CSDL HOC_TAP??? Mỗi quan hệ có tên phân biệt với các quan hệ khác
- Các bộ là phân biệt và thứ tự các bộ không quan trọng 8
- Trong thực tế Trong Acsess, có thể tạo được bảng: MON_HOC(Ma_mon_hoc,Ten_mon_hoc, Ma_mon_hoc,Ten_mon_hoc) trong CSDL HOC_TAP??? Mỗi thuộc tính có tên phân biệt và thứ tự các thuộc tính không quan trọng. 9
- Quan hệ không có thuộc tính đa trị hay phức hợp Ma_hoc_sinh Ma_mon_hoc Ngay_kiem_tra Diem_so 1 2 31/12/2012 10 Đa 3 01/01/2013 1 trị 2 2 31/12/2012 9 3 2 31/12/2012 8 Ma_hoc_sinh Ho_ten Phức Ho_dem Ten hợp 1 Nguyễn Văn A 2 Trần Thị B 10
- Các đặc trưng của quan hệ: − Mỗi quan hệ có tên phân biệt; − Mỗi bộ là phân biệt và thứ tự các bộ không quan trọng; − Mỗi thuộc tính có tên phân biệt và thứ tự các thuộc tính không quan trọng; − Quan hệ không có thuộc tính đa trị hay phức hợp. 11
- Bảng Mượn sách Số thẻ Mã sách Thời gian mượn Ngày mượn Ngày trả 1 1 31/12/2012 31/12/2013 2 31/12/2012 01/01/2014 2 3 01/01/2012 30/04/2013 2 4 02/02/2012 01/05/2013 Bảng Người mượn Bảng Sách Số thẻ Họ tên Mã Tên sách Mã Tên sách 1 Lê Văn C sách sách 1 Toán 12 3 Tin 12 1 Lê Văn C 2 Văn 12 4 Lý 12 2 Phan Văn H 12
- 2. CSDL quan hệ: c. Ví dụ về CSDL quan hệ Để quản lí kết quả học tập của học sinh, thông thường phòng học vụ cần quản lý các thông tin sau: Thông tin về Thông tin về Học sinh Môn học Thông tin về Bảng điểm 13
- 2. CSDL quan hệ: c. Ví dụ về CSDL quan hệ Học sinh: có Mã học sinh, họ những thông đệm, tên tin nào? Môn học: gồm những thông tin Mã môn học, tên nào? môn học Bảng điểm: gồm ID, mã học sinh, mã những thông tin môn học, ngày kiểm nào? tra, điểm số 14
- Bảng BANG_DIEM ID Ma_hoc_sinh Ma_mon_hoc Ngay_kiem_tra Diem_so 1 1 1 24/12/2012 9 2 2 1 24/12/2012 9 3 1 2 25/12/2012 8 Bảng HOC_SINH Ma_hoc_sinh Ho_dem Ten 1 Nguyễn Tèo Văn Bảng MON_HOC 2 Đinh Văn Tí Ma_mon_hoc Ten_mon_hoc 1 Toán 2 Tin 15
- Sự xuất hiện lại của thuộc tính Ma_hoc_sinh và Ma_mon_hoc ở bảng BANG_DIEM trong bảng HOC_SINH và MON_HOC thể hiện một sự liên hết giữa học sinh và môn học dự thi. Nhờ liên kết này mà ta biết được nhiều thông tin, chẳng hạn những học sinh thi một môn học nào đó, môn đó do một học sinh nào đó dự thi 16
- 2. CSDL quan hệ: d. Khóa và liên kết giữa các bảng 17
- d. Khóa và liên kết giữa các bảng Hãy cho biết, khóa của một * KHÓA bảng là gì? • Khóa của một bảng là một tập thuộc tính gồm một hay một số thuộc tính của bảng Hãy trình bày tính chất khóa của một bảng. • Không có hai bộ khác nhau trong bảng có giá trị bằng nhau trên khóa. • Không có tập con thực sự nào của tập thuộc tính này có tính chất trên. 18
- Ví dụ Thuộc tính ‘Số thẻ’ là một khóa 19
- Nếu không ghi mĐộtịatrongchỉ nghaiười gửi: khóa địa chỉ thì điều gì sẽ xảy ra? * Vậy địa chỉ người nhận phải bắt buộc ghi → khóa chính Địa chỉKhóangườchínhi nhận: khóa 20
- * KHÓA CHÍNH • Một bảng có thể có nhiều khóa. • Trong các khóa của một bảng, ta chọn (chỉ định) một khóa làm khóa chính. • Khi nhập dữ liệu cho một bảng, dữ liệu tại các cột khóa chính không được để trống • Mỗi bảng có ít nhất một khóa. • Việc xác định khóa phụ thuộc vào quan hệ logic của các dữ liệu chứ không phụ thuộc vào giá trị dữ liệu. • Nên chọn khóa chính là khóa có ít thuộc tính nhất. 21
- d. Khóa và liên kết giữa các bảng * LIÊN KẾT • Việc xác định khóa của một bảng là để thiết lập sự liên kết giữa các bảng. 22