Với các bài giảng của một số giáo viên trong bộ sưu tập Cơ sở dữ liệu quan hệ - môn Tin học 12 giúp bạn có tài liệu tham khảo để tiết kiệm thời gian chuẩn bị bài. Ngoài ra bộ sưu tập bài giảng này cũng giúp các học sinh có thêm tư liệu tìm hiểu nội dung bài Cơ sở dữ liệu quan hệ để có thể chuẩn bị bài trước khi đến lớp. Các bạn cũng sẽ có nhiều lựa chọn trong việc biên soạn thiết kế bài dạy, để có một tiết học hoàn thiện nhất. Mời các bạn tham khảo bài giảng Cơ sở dữ liệu quan hệ để đem đến cho mình những những bài học hay.
Trang 1BÀI GIẢNG ĐIỆN TỬ
TIN HỌC 12
BÀI GIẢNG ĐIỆN TỬ
TIN HỌC 12
Tiết 1
MÔ HÌNH DỮ LIỆU QUAN HỆ
§ 10 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 2Nội dung tiết 1
2 Đặc trưng của mô hình dữ liệu
Trang 3Việc xây dựng và khai thác một hệ CSDL được tiến hành qua một số bước đó là?
Bước 1: Khảo sát
Tìm hiểu yêu cầu công tác quản lý, xác định dữ liệu cần lưu trữ, phân tích mối liên hệ giữa chúng, phân tích chức năng của hệ thống khai thác thông tin, xác định chức năng của phần cứng, phần mềm có thể khai thác, sử dụng.
Bước 2: Thiết kế
Thiết kế CSDL, lựa chọn hệ QTCSDL để triển khai, Xây dựng hệ thống chương trình ứng dụng
Bước 3: Kiểm thử
Nhập dữ liệu và chạy thử chương trình
Khi xây dựng một CSDL thường có nhiều người tham gia với mức hiểu biết khác nhau
về cơ sở dữ liệu.
§ 10 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 41 Người xây dụng CSDL thường trao đổi với nhau về những yếu tố nào?
2 Mô hình dữ liệu là gì?
3 Mô hình dữ liệu được phân chia như thế nào?
Bài học hôm nay chúng ta sẽ nghiên cứu về “CSDL
quan hệ, để hiểu rõ hơn về CSDL quan hệ chúng ta
cùng nhau thảo luận các câu hỏi sau:
§ 10 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 5Thảo luận theo bàn trong thời gian 5p
Thảo luận
Trang 61 Mô hình dữ liệu quan hệ
Mô hình dữ liệu được phân chia như thế nào?
Theo mức mô tả chi tiết về CSDL,
có thể phân chia các mô hình thành 2
loại.
•Mô hình logic
•Mô hình vật lí
Trang 7- Chủ thể
- Thuộc tính
- Cá thể
Về mặt cấu trúc
1 Mô hình dữ liệu quan hệ
Đặc trưng của mô hình dữ liệu quan hệ
Dư liệu được tổ chức dưới dạng quan
hệ (bảng) Mỗi cột (thuộc tính hoặc trường) thể hiện thông tin về một thuộc tính
Mỗi hàng (bộ - bản ghi) thể hiện thông tin
về một đối tượng
Trang 8Về mặt thao tác trên dữ liệu:
Em hãy trình bày 1 số thao tác trên CSDL đã thực hiện
trong chương II?
- Cập nhật dữ liệu: thêm, sửa, xoá bản ghi trong 1 bảng;
Trang 9Về mặt thao tác trên dữ liệu
1 Cập nhật Thêm, xóa, sửa bản ghi,…
Đặc trưng của mô hình dữ liệu quan hệ
2 Thống kê, truy xuất dl:
Tìm kiếm, lọc, thống kê, báo cáo,…
Trang 10Về mặt các ràng buộc dữ liệu:
Em có nhận xét gì về bảng dữ liệu sau đây?
Có 2 bộ giống nhau hoàn toàn nên việc nhập này không được chấp nhận, máy thông báo lỗi:
Em hãy trình bày cách khắc phục?
Đặc trưng của mô hình dữ liệu quan hệ
Trang 122 Theo em, khi xét một mô hình dữ liệu cần quan tâm những yếu tố nào?
Dựa vào các yếu tố tạo nên mô hình dữ liệu
Củng cố
3 Đặc trưng của mô hình dữ liệu quan hệ
Về mặt thao tác trên dữ liệu:
Về mặt cấu trúc
Về mặt ràng buộc dữ liệu
Trang 13Ghi nhớ
Trong mô hình dl quan hệ
Về mặt cấu trúc: DL được thể hiện dưới dạng quan hệ (bảng), bao gồm:
• Mỗi cột (thuộc tính, trường) thể hiện thông tin về 1 thuộc tính
• Ví dụ: Bảng gồm 10 trường: STT, HOTEN,GIOITINH, NGAY_SINH, TOAN, VAN, LY, HOA, ANH, SINH
• Mỗi hàng (bộ hay bản ghi) thể hiện thông tin về 1 đối tượng Ví dụ thông tin về 1 thí sinh Trần Thị Tình (2, Trần thị Tình, nữ, 20/11/1993, 9, 8, 7, 6,
5, 4) tương ứng với 10 trường trong bảng.
Về mặt thao tác dữ liệu: Có thể xử lí dữ liệu trong bảng như:
• Cập nhật: Thêm, xóa, sửa bản ghi,…
• Thống kê, truy xuất dl: Tìm kiếm, lọc, thống kê, báo cáo,…
Về mặt ràng buộc dữ liệu: dl trong bảng phải thõa mản 1 số ràng buộc Ví dụ: trong bảng không có 2 bộ nào giống nhau hoàn toàn.
Trang 14Tiết 2
CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 15Kiểm tra bài cũ
Câu hỏi: Nêu các đặc điểm của mô hình dữ liệu quan hệ?
Đáp án:
Mô hình dữ liệu quan hệ là mô hình dữ liệu có đặc điểm sau:
Về mặt cấu trúc: Dữ liệu được thể hiện dưới dạng bảng (Mỗi bảng gồm cột và hàng )
Về mặt thao tác trên dữ liệu: có thao tác cập nhật dữ liệu (thêm, xoá, sửa dl trong bảng), các thao tác khai thác dữ liệu khác
Về mặt các ràng buộc: Dữ liệu trong các bảng phải thoả mãn một số ràng buộc nào đó, xác lập mối liên kết giữa các bảng …
Nếu một CSDL được xây dựng dựa trên mô hình dữ liệu quan hệ thì CSDL đó được gọi là CSDL gì?
Trang 16NỘI DUNG TIẾT 2
Trang 172 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 182 CƠ SỞ DỮ LIỆU QUAN HỆ
1 Khái niệm:
Trang 19a Quan hệ: hay còn gọi là bảng mỗi quan hệ có một tên phân biệt với tên các quan hệ khác
2 CƠ SỞ DỮ LIỆU QUAN HỆ
2 Các đặc trưng chính của 1 quan hệ trong CSDL quan hệ
Trang 20b Thuộc tính: là các Cột của Bảng
2 CƠ SỞ DỮ LIỆU QUAN HỆ
2 Các đặc trưng chính của 1 quan hệ trong CSDL quan hệ
Trang 212 CƠ SỞ DỮ LIỆU QUAN HỆ
2 Các đặc trưng chính của 1 quan hệ trong CSDL quan hệ
Trang 23So_the Ma_Sach Ng_muon Ng_tra
TN-104
12/9/2008 15/9/2008
22/9/2008 20/9/2008
23
Tại sao nói Bảng trên có thuộc tính đa trị ?
2 CƠ SỞ DỮ LIỆU QUAN HỆ
2 Các đặc trưng chính của 1 quan hệ trong CSDL quan hệ
Mỗi thuộc tính chỉ cĩ một miền giá trị duy nhất
Trang 24So_the Ma_Sach Ngày
TN-104
12/9/2008 15/9/2008
22/9/2008 20/9/2008
24
Thuộc tính phức hợp là gì?
Tại sao bảng trên cĩ tính phù hợp?
2 CƠ SỞ DỮ LIỆU QUAN HỆ
2 Các đặc trưng chính của 1 quan hệ trong CSDL quan hệ
Trang 26Phức hợp
• Nhận xét: Bảng trên có cột Ngày mượn - trả là cột được tạo ra bởi sự hợp
thành bởi 2 cột là Ngày mượn và Ngày trả
Vậy bảng trên không là một quan hệ
, ta nói cột có tính phức hợp
2 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 27Các đặc trưng chính của một quan hệ trong hệ CSDL quan
hệ:
- Mỗi quan hệ có một tên phân biệt
với tên các quan hệ khác;
- Mỗi thuộc tính có một tên phân biệt,
thứ tự thuộc tính là không quan
- Quan hệ trên có tên là: NGƯỜI MƯỢN
- Có 4 thuộc tính với các tên là: Số thẻ, Họ tên, Ngày Sinh và Lớp
- Có 6 bộ.
Ghi nhớ
Trang 29Có rất nhiều hệ QTCSDL quan hệ như:
Microsoft Access, Foxpro, Oracle…
Như vậy ở chương 2 ta đã được làm việc với một Hệ QTCSDL quan hệ là
Trang 30Để quản lí việc mượn sách ở thư viện của một trường, thông thường thư viện cần quản lí các thông tin sau:
Thông thường để quản lý việc mượn sách ở thư viện của trường học, thư viện cần những thông tin nào???
Ví dụ
Thông tin về Các loại sách
Thông tin về Các loại sách
Thông tin về người mượn sách
Thông tin về người mượn sách
PhamThiQuynhChau_Tin5VT
Tình hình mượn sách
Tình hình mượn sách
30
2 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 31Người mượn sách: có những thông tin nào? ? Số thẻ, họ tên, ngày sinh, lớp
Sách gồm những thông
tin nào?
Mã số sách, tên sách, thể loại, tác giả.
31
2 CƠ SỞ DỮ LIỆU QUAN HỆ
Ví dụ
Trang 32Số thẻ Họ tên Ngày sinh Lớp TV-02 Tiểu Mi 5/9/1990 12A1 TV-04 Trần Cường 12/9/1992 12A2 TV-03 Lê Na 24/9/1990 12B1 TV-01 Nguyễn Ánh 5/10/1991 11B1
32
Số thẻ, họ tên, ngày sinh, lớp.
Bảng Người Mượn
Thẻ thư viện gồm có các thông tin
Thông tin về người mượn sách
Thông tin về người mượn sách
Ví dụ
2 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 33Số thẻ Ms sách Ngày mượn Ngày trả TV-02 TO-012 5/9/2007 30/9/2007 TV-04 TN-103 12/9/2007 15/9/2007 TV-03 TN-102 24/9/2007 5/10/2007 TV-01 TO-013 5/10/2007
Số thẻ, mã số sách,
ngày mượn, ngày trả
Bảng Mượn Sách
Thông tin về tình hình mượn sách
do thư viện quản lí
Mỗi thể mượn sách của hs được thư viện cấp cho một số riêng.
Mỗi thể mượn sách của hs được thư viện cấp cho một số riêng.
Bài 10 : Cơ sở dữ liệu quan hệ
Tình hình mượn sách
Tình hình mượn sách
33
2 CƠ SỞ DỮ LIỆU QUAN HỆ
Ví dụ
Trang 34Mã số sách Tên sách Thể loại Tác giả TN-102 Truyện Kiều Thơ N.Du TN-103 Những điều ky diệu
về máy tính Khoa học Hùng Thế TI-01 Dế mèn phiêu lưu kí Văn học Tô
Hoài TO-102 Sáng tạo Toán học KHTN Polya
Thông tin về các loại sách có trong thư viện:
Ms sách, tên sách, thể loại, tác giả
Trang 35ra nhận xét?
2 CƠ SỞ DỮ LIỆU QUAN HỆ
Ví dụ
Trang 36MƯỢN SÁCH bởi trường Số thẻ
+ Bảng SÁCH liên kết với bảng MƯỢN SÁCH bởi trường Mã số sách
Vậy sự liên kết giữa các bảng như vậy thể hiện sự liên kết giữa Người mượn sách (học sinh) và sách trong thư viện
Nhờ liên kết này mà ta biết được một học sinh nào đó đang mượn những cuốn
sách nào, Cuốn sách nào đó (tên) có những ai mượn …
Ví dụ
Trang 37• Chúng ta đã tìm hiểu CSDL quan hệ về:
Khái niệm
Các thuật ngữ trong CSDL quan hệ
Các đặc trưng của một quan hệ trong CSDL quan hệ.
Giới thiệu tên một số Hệ QTCSDL quan hệ Thấy được các quan hệ, sự thể hiện của liên kết giữa các quan hệ qua ví dụ.
DẶN DÒ
Trang 38CÂU 1: Hãy cho biết bảng sau có phải là một quan hệ không?
Tại sao?
Đáp án: Không, vì bảng trên có cột Điểm các môn là cột phức hợp mà quan hệ thì không có thuộc tính phức hợp
Có thể sửa bảng trên như thế nào để nó có thể là một quan hệ?
Đáp án: Mỗi cột thành phần của cột phức hợp sẽ trở thành một cột của bảng
CỦNG CỐ
Trang 39CÂU 2: Hãy cho biết bảng sau có phải là một quan hệ không? tại
sao?
Đáp án: Không, vì bảng trên xuất hiện ở cột mã môn có dòng có 2 giá trị là Toan và Van ==> đa trị
Có thể sửa bảng trên như thế nào để nó có thể là một quan hệ?
Đáp án: Tách các giá trị ở cột có tính đa trị ra làm các giá trị ở các hàng
khác nhau, những cột có 1 giá trị thì tất cả các hàng mới sẽ nhận các giá trị
đang có tại cột đó (ô đó)
CỦNG CỐ
Trang 40CÂU 3: Hãy cho biết bảng sau có phải là một quan hệ không?
Đáp án: Không, vì bảng trên xuất hiện 2 hàng giống hệ nhau mà trong quan hệ thì các bộ (hàng) phải là phân biệt (Khác nhau)
2 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 41• Đáp án: Tin học 12
CÂU 4 2 CƠ SỞ DỮ LIỆU QUAN HỆ
Trang 42Tiết 3
KHÓA VÀ LIÊN KẾT GiỮA
CÁC BẢNG
Trang 431 Không tồn tại 2 bộ trong bảng
có giá trị bằng nhau trên khóa.
2 Không có tập con nào của tập
thuộc tính thỏa mãn điều kiện 1
Trang 443 KHÓA VÀ LIÊN KẾT GIỮA CÁC BẢNG
Khoá
Dựa vào các thuộc tính nào để
có thể phân biệt các lần mượn
TV-02
5/10/2007 24/9/2007
TN-102 TV-02
15/9/2007 12/9/2007
TN-103 TV-04
30/9/2007 5/9/2007
TO-012 TV-02
Ngày trả Ngày mượn
Mã số sách
Số thẻ
Dựa vào các thuộc tính Số thẻ, Mã số sách, Ngày mượn để phân biệt các lần mượn sách.
Trang 45Dựa vào thuộc tính nào để có thể phân biết người mượn sách ?
Số thẻ Họ Tên Ngày sinh Lớp TV-01 Phạm Châu 10/10/199
0 12A TV-02 Nguyễn Ý 23/02/199
1 11B TV-03 Lê Thanh
Nhàn 21/12/199 0 12B TV-04 Hoàng Quốc
Cường 30/01/199 2 10C
Bảng Người mượn
Dựa vào thuộc tính Số thẻ để phân biệt người mượn sách.
Trong bảng chứa tập thuộc tính vừa đủ để phân biệt các bộ
3 KHÓA VÀ LIÊN KẾT GIỮA CÁC BẢNG
Khoá
Trang 465/10/2007 24/9/2007
TN-102 TV-02
15/9/2007 12/9/2007
TN-103 TV-04
30/9/2007 5/9/2007
TO-012 TV-02
Ngày trả Ngày mượn
Mã số sách
Số thẻ
3 KHÓA VÀ LIÊN KẾT GIỮA CÁC BẢNG
Khoá
Trang 47Hãy nhận xét về vai trò và dữ liệu của thuộc tính Số thẻ ?
Bảng người mượn
– Thuộc tính Số thẻ là khoá
Khoá chính là một khoá trong bảng được người dùng chỉ định, giá trị của mọi bộ
tại khoá chính không được để trống
Mỗi bảng có ít nhất một khoá
Nên chọn khoá chính là một khoá có ít tính phụ thuộc nhất.
- Dữ liệu không được để trống
- Giá trị tại trường khóa chính không giống nhau
Thuộc tính Số thẻ được chọn làm khoá chính
Số thẻ Họ Tên Ngày sinh Lớp
Trang 48Ten_Mat_Hang Don_Gia
T_Hoa_Don So_Hoa_Don
Ma_Khach_Hang Ma_Mat_Hang So_Luong
Ngay_Giao
3 KHÓA VÀ LIÊN KẾT GIỮA CÁC BẢNG
Liên kết giữa các bảng
Trang 49-NGƯỜI MƯỢN: Bảng tham chiếu
Nhờ mối liên kết theo Số thẻ cho biết
các thông tin của Người mượn cuốn
sách có mã số TO-012 vào ngày
5/9/2007? Nêu cách xác định
Trang 503 KHÓA VÀ LIÊN KẾT GIỮA CÁC BẢNG
Liên kết giữa các bảng
B1 Dựa vào bảng chính là bảng Mượn sách
xác định số thẻ của người mượn có mã số
TO-012 vào ngày 5/9/2007?
- Là TV02
B2 Dựa vào bảng tham chiếu là bảng Người
mượn xem thông tin của người mượn có số
thẻ TV02
Trang 51• Ví dụ: Trong bảng NGƯỜI MƯỢN thuôc tính số thẻ
có thể dùng để phân biệt các học sinh vì mỗi hs có 1
số thẻ trong thư viện riêng
Trang 52Ghi nhớ
b Khóa chính
1 bảng có thể có nhiều khóa Ta chọn (chỉ định) một khóa làm khóa chính.
Các ràng buộc đối với khóa chính:
• Thuộc tính làm khóa chính phải đầy đủ dữ liệu
(không được để trống).
• Giá trị tại trường khóa chính không được giống
nhau.
Trang 53Ghi nhớ
Để lấy được dl của nhiều bảng, ta phải tạo liên kết giữa các bảng.
Để tạo liên kết giữa 2 bảng:
Hai bảng phải có thuộc tính chung (gọi là
thuộc tính liên kết);
Sự liên kết giữa các bảng đa số dựa trên thuộc tính khóa;
Khi kết nối từng cặp bảng lại với nhau, ta có
sự liên kết gián tiếp giữa các bảng trong cùng
1 csdl.
Trang 55Bài tập về nhà
Ôn lại bài học hôm nay
Trả lời các câu hỏi và bài tập trong sgk trang 86
Chuẩn bị trước bài tập và thực hành 10
“ Hệ cơ sở dữ liệu quan hệ”
Trang 56Bài tập để cộng thêm điểm
1 Chủ đề 1: Mỗi nhóm 2 thành viên hoàn tất bài tập sau:
-Nhóm đặt tên folder theo Tổ_TenThanhVien1_TenThanhVien2
-Nén lại file rar hoặc file zip
Ví dụ BTTH_Tổ1_PhamThiQuynhChau_NguyenThiNhuY.rar
- Bản phân công công việc nhiệm vụ
•Tạo bảng
•Nhập dữ liệu
•Tạo liên kết giữa các bảng
•Đưa kết quả thi thông báo cho thí sinh
•Đưa ra kết quả thi theo trường;
•Đưa ra kết quả thi của toàn tỉnh theo thứ tự giảm dần của điểm thi.
Lưu ý: Nhập dữ liệu là tên thành viên trong tổ
Upload tại trang http://quynhchaupt.wikispaces.com/space/content
4 Hướng dẫn chi tiết
http://quynhchaupt.wikispaces.com/file/view/handout1.doc
sbdmoi\hương dân bai tâp va thuc hanh 10.doc
Trang 57
Hỗ trợ học tập
Các em có thể trao đổi và thảo luận tại các trang
1 Mô hình dữ liệu quan hệ
2 Cơ sở dữ liệu quan hệ trên wikispace
Để rõ hơn các yêu cầu các em có thể lên trang http://quynhchaupt.wikispaces.com/