Đề cương bài giảng Lý thuyết cơ sở dữ liệu
1 Bài1:Cáckháiniệmvềhệcơsởdữliệu
1.1 Các khái niệm cơ bản về hệ cơ sở dữ liệu .1
2 Bài 2: Mô hình thực thể - Liên kết
2.1 Mô hình thực thể - Liên kết .13
3 Bài 3: Tổng kết mô hình thực thể liên kết - Câu hỏi ôn tập
3.1 Tổng kết mô hình thực thể - liên kết và câu hỏi ôn tập .27
4 Bài 4: Mô hình quan hệ, các rằng buộc quan hệ
4.1 Mô hình quan hê, các rằng buộc quan hệ .29
5 Bài 5: Chuyển đổi mô hình ER thành mô hình quan hệ
5.1 Chuyển đổi mô hình ER thành mô hình quan hệ .41
6 Bài 6: Các phép toán đại số quan hệ
6.1 Các phép toán đại số quan hệ .45
7 Bài 7: Các nguyên tắc thiết kế lược đồ quan hệ và phụ thuộc hàm
7.1 Các nguyên tắc thiết kế lược đồ quan hệ và phụ thuộc hàm .61
8 Bài 8: Chuẩn hóa lược đồ quan hệ
8.1 Chuẩn hóa lược đồ quan hệ .71
9 Bài9:Tổngkếtvàkểmtragiữakỳ
9.1 Tổng kết và kiểm tra giữa kỳ .83
10 Bài 10: Giới thiệu ngôn ngữ truy vấn cấu trúc (SQL)
10.1 Giới thiệu ngôn ngữ truy vấn cấu trúc (SQL) .87
11 Bài 11: Thực hành câu lệnh create database, create table, alter table, drop table
11.1 Thực hành câu lệnh create database, create table, alter table, drop table .95
12 Bài 12: Truy vấn dữ liệu
12.1 Truy vấn dữ liệu .101
13 Bài 13: Thực hành truy vấn cơ bản
13.1 Thực hành truy vấn cơ bản .111
14 Bài 14: Phép hợp, toán tử UNION, EXISTS, IN và Truy vấn lồng
14.1 Phép hợp, toán tử UNION, EXISTS, IN và Truy vấn lồng .113
15 Bài 15: Thực hành các phép toán tập hợp và truy vấn lồng
15.1 Thực hành các phép toán tập hợp và truy vấn lồng .119
16 Bài 16: Hàm kết hợp và gom nhóm
16.1 Hàm kết hợp và gom nhóm .123
17 Bài 17: Thực hành hàm kết hợp và gom nhóm
17.1 Thực hành hàm kết hợp và gom nhóm .131
18 Bài 18: Một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu
18.1 Một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu .135
iv
19 Bài 19: Thực hành một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu
19.1 Thực hành một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu .141
20 Tài liệu tham khảo.145
Attributions.146
FROM Person WHERE LastName = ’Rasmussen’ Kết quả sau khi xoá: 138 CHƯƠNG 18. BÀI 18: MỘT SỐ DẠNG TRUY VẤN KHÁC VÀ CÂU LỆNH CẬP NHẬT DỮ LIỆU LastName FirstName Address City Nilsen Fred Kirkegt 56 Stavanger Table 18.8 Xoá tất cả các dòng: Đôi khi ta muốn xoá tất cả dữ liệu trong bảng nhưng vẫn giữ lại bảng cùng với cấu trúc và tất cả các thuộc tính của bảng, ta có thể dùng câu lệnh: DELETE FROM table_name 18.1.3 Các bài tập liên quan đến một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu 1. Hãy viết câu lệnh tạo bảng và chèn dữ liệu cho bảng he_dtao, nganh_hoc, lop_hoc, sinh_vien, mon_hoc, bang_diem với các dữ liệu dưới đây He_dtaoMa_dtaoTen_dtao 1 Hệ đại học 6 Hệ cao đẳng A Hệ trung cấp Nganh_hocMa_nganhTen_nganh 01 Công nghệ 02 Điện – điệ Table 18.9 Lop_hocMa_lop Ten_lop Nkhoa_tu Nkhoa_denMa_dtao Ma_nganh 101031 TK1 2003 2007 1 01 601031 TK33 2003 2006 6 Null 701041 TK34L 2004 2006 7 01 E01061 TK4LT 2006 2009 Null 01 Sinh_vien Ma_sv Ten_sv gtinh namsinh dchi Ma_lop 101031001 Pham Thi Hang Nu 1986 Hung yen 101031 101031002 Pham Lan Anh Nu 1985 Thai binh 101031 101031003 Nguyen Van Nam Nam 1986 Hung yen 101031 101031004 Bui Viet Nam Nam 1985 Hai duong 101031 continued on next page 139 Mon_hoc Ma_mon Ten_mon SoHT 01 Cau truc du lieu 4 02 Co so du lieu 3 03 Lap trinh HDT 5 04 Project1 5 Bang_diem Ma_mon Ma_sv Dieml1 Dieml2 01 101031001 8 02 101031001 6 03 101031001 5 04 101031001 6 01 101031002 3 02 101031002 7 03 101031002 8 04 101031002 4 01 101031003 5 02 101031003 2 03 101031003 6 04 101031003 4 01 101031004 7 02 101031004 8 03 101031004 9 04 101031004 6 Table 18.10 2. Hiển thị thông tin bao gồm Mã lớp, tên lớp, tên nghành và tên hệ đào tạo của tất cả các lớp ( sử dụng phép kết nối bằng – inner join và kết nối ngoài – outer join sau đó so sánh kết quả của hai cách này) 3. Hiển thị thông tin bao gồm: Ma_sv, ten_sv, gtinh, namsinh, dieml1 ứng với môn có tên là Cau truc du lieu của tất cả sinh viên đã học môn đó. 4. Hiển thị thông tin bao gồm: Ma_sv, ten_sv, gtinh, namsinh, điểm trung bình lần 1 của tất cả sinh viên 5. Hiển thị thông tin bao gồm: Ma_sv, ten_sv, gtinh, namsinh, điểm trung bình lần 1 của những sinh viên có điểm trung bình lần 1 lớn hơn 7. 6. Hiển thị thông tin bao gồm: Ma_sv, ten_sv, gtinh, namsinh, ten_lop của những sinh viên chưa phải thi lại môn nào? 7(*). Hiển thị thông tin bao gồm: Ma_sv, ten_sv, gtinh, namsinh, điểm trung bình lần 1 của những sinh viên có điểm trung bình lần 1cao nhất? 140 CHƯƠNG 18. BÀI 18: MỘT SỐ DẠNG TRUY VẤN KHÁC VÀ CÂU LỆNH CẬP NHẬT DỮ LIỆU Chương 19 Bài 19: Thực hành một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu 19.1 Thực hành một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu1 19.1.1 Nhắc lại lý thuyết Câu lệnh INSERT INTO được dùng để chèn dòng mới vào bảng. Cú pháp: INSERT INTO tên_bảng VALUES (giá_trị_1, giá_trị_2,....) Bạn cũng có thể chỉ rõ các cột/trường nào cần chèn dữ liệu: INSERT INTO tên_bảng (cột_1, cột_2,...) VALUES (giá_trị_1, giá_trị_2,....) Câu lệnh UPDATE được sử dụng để cập nhật/sửa đổi dữ liệu đã có trong bảng. Cú pháp: UPDATE tên_bảngSET tên_cột = giá_trị_mớiWHERE tên_cột = giá_trị Câu lệnh DELETE được dùng để xoá các dòng ra khỏi bảng. Cú pháp: DELETE FROM tên_bảngWHERE tên_cột = giá_trị Xoá tất cả các dòng: Đôi khi ta muốn xoá tất cả dữ liệu trong bảng nhưng vẫn giữ lại bảng cùng với cấu trúc và tất cả các thuộc tính của bảng, ta có thể dùng câu lệnh: DELETE FROM table_name 19.1.2 Bài tập mẫu 1. Hãy viết các câu truy vấn SQL thực hiện thêm các bản ghi sau vào bảng tblDauSach. 1This content is available online at . 141 142 CHƯƠNG 19. BÀI 19: THỰC HÀNH MỘT SỐ DẠNG TRUY VẤN KHÁC VÀ CÂU LỆNH CẬP NHẬT DỮ LIỆU Figure 19.1 2. Viết câu truy vấn SQL thực hiện xóa các bản ghi có mã đầu sách kết thúc bằng xâu ‘11’. 3. Viết câu lệnh truy vấn SQL thực hiện sửa năm xuất bản của đầu sách có mã 1010111 thành 1010110. Hướng dẫn Để thực hiện sửa đổi dữ liệu ta thực hiện các câu lệnh: insert into : Thêm một bộ dữ liệu vào CSDL; update: để thay đổi giá trị của một hoặc nhiều trường của một bảng nào đó; delete from: để thực hiện xóa một hoặc nhiều bộ dữ liệu trong một bảng nào đó. - Với mỗi câu lệnh insert into ta chỉ thực hiện thêm được một bộ bản ghi cho mỗi lần thực hiện câu lệnh. Vì vậy cần thêm bao nhiêu bản ghi thì ta cần thực hiện bấy nhiêu câu lệnh. Lời giải: 1. insert into tblDauSach values (‘1010111’, ‘Phương pháp tính’, 2007, ‘111’, ‘Nxb01’, ‘Tg002’); insert into tblDauSach values (‘1011111’, ‘Lập trình hướng đối tượng với C#’, 2008, ‘101’, ‘Nxb02’, ‘Tg001’); insert into tblDauSach values (‘1011112’, ‘Lý thuyết CSDL’, 2004, ‘101’, ‘Nxb03’, ‘Tg003’); insert into tblDauSach values (‘1011113’, ‘Lập trình mạng với C#’, 2007, ‘101’, ‘Nxb02’, ‘Tg004’); 2. delete from tblDauSach where maDS like ‘%11’; 3. update tblDauSach Set maDS =’1010110’ Where maDS = ‘1010111’ ; III. Bài tập thực hành Viết các câu lệnh SQL thực hiện các yêu cầu sau: 1. Thêm các thông tin sau vào bảng tblTacGia 143 Figure 19.2 2. Thêm các thông tin sau vào bảng tblNXB Figure 19.3 3. Thêm các thông tin sau vào bảng tblLinhVuc 144 CHƯƠNG 19. BÀI 19: THỰC HÀNH MỘT SỐ DẠNG TRUY VẤN KHÁC VÀ CÂU LỆNH CẬP NHẬT DỮ LIỆU Figure 19.4 4. Thay đổi mã của tác giả Quách Tuấn Ngọc thành ‘Tg005’ 5. Thay đổi tên tác giả có mã ‘TG007’ thành ‘Đỗ Xuân Lôi’ 6. Thay đổi tên cuốn sách có mã ‘2010111’ thành ‘Kết cấu ô tô’ 7. Xóa tất cả các độc giải có mã bắt đầu bằng chuỗi ‘10103’ 8. Xóa tất cả các đầu sách được nhập vào ngày ‘20/6/2008’ 9. Hiển thị tất cả các tác giả viết sách thuộc về lĩnh vực Công Nghệ Thông Tin. 10. Thực hiện các bài tập trong phần 18.3 Chú ý: Sinh viên hoàn thành các bài tập thực hành, cuối buổi thực hành nộp lại các bài tập 1, 2, 4, 8, 18.3(4, 6, 7) cho giáo viên. Chương 20 Tài liệu tham khảo1 [1]. Raghu Ramakrishnan- Johannes Gehrke, Database Management Systems, 2nd Ed [2]. Elmasri – Navathe, Fundamentals Of Database Systems 3rd Edition, Addison Wesley [3]. Đinh Mạnh Tường, Cơ sở dữ liệu. [4]. Hồ Thuần, Hồ Cẩm Hà, Lý thuyết CSDL, NXB Giáo dục. [5]. Sở BCVT TP Hà nội, Giáo trình Cơ sở dữ liệu, 2005. [6]. Hoàng Trọng Thế , “Đề cương bài giảng nhập môn CSDL quan hệ ”, ĐHSPKT Hưng Yên, 2006. [7]. Đỗ Trung Tuấn, Cơ sở dữ liệu, NXB Đại học Quốc gia Hà nội, 2006. 1This content is available online at . 145 146 Tham gia đóng góp Tham gia đóng góp Tài liệu: Đề cương bài giảng : Lý thuyết cơ sở dữ liệu Biên soạn bởi: Khoa CNTT ĐHSP KT Hưng Yên URL: Giấy phép: Module: "Các khái niệm cơ bản về hệ cơ sở dữ liệu" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 1-11 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Mô hình thực thể - Liên kết" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 13-25 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Tổng kết mô hình thực thể - liên kết và câu hỏi ôn tập" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 27-28 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Mô hình quan hê, các rằng buộc quan hệ" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 29-40 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Chuyển đổi mô hình ER thành mô hình quan hệ" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 41-44 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Các phép toán đại số quan hệ" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 45-60 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Tham gia đóng góp 147 Module: "Các nguyên tắc thiết kế lược đồ quan hệ và phụ thuộc hàm" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 61-70 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Chuẩn hóa lược đồ quan hệ" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 71-82 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Tổng kết và kiểm tra giữa kỳ" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 83-85 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Giới thiệu ngôn ngữ truy vấn cấu trúc (SQL)" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 87-94 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Thực hành câu lệnh create database, create table, alter table, drop table" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 95-99 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Truy vấn dữ liệu" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 101-109 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Thực hành truy vấn cơ bản" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 111-112 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: 148 Tham gia đóng góp Module: "Phép hợp, toán tử UNION, EXISTS, IN và Truy vấn lồng" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 113-117 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Thực hành các phép toán tập hợp và truy vấn lồng" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 119-121 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Hàm kết hợp và gom nhóm" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 123-129 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Thực hành hàm kết hợp và gom nhóm" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 131-133 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 135-139 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Thực hành một số dạng truy vấn khác và câu lệnh cập nhật dữ liệu" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 141-144 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Module: "Tài liệu tham khảo" Tác giả: Khoa CNTT ĐHSP KT Hưng Yên URL: Trang: 145 Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên Giấy phép: Hoc lieu Mo Vietnam - Vietnam Open Educational Resources Học liệu mở Việt Nam là hỗ trợ việc quản lý, tạo, lưu trữ tài liệu giáo dục hiệu quả.
File đính kèm:
- Đề cương bài giảng Lý thuyết cơ sở dữ liệu.pdf