Mục lục
Mục lục.................................................................................................................................... 1
Truy vấn cơ sở dữ liệu quản lý điểm của sinh viên trên Access..............................................3
Bước 1: Đặt bài toán............................................................................................................... 3
1.1 Mô tả bài toán................................................................................................................ 3
1.2Các truy vấn thực hiện:...................................................................................................3
Bước 2 : Xây dựng mô hình thực thể liên kết ER....................................................................3
2.1 Xác định các thực thể và thuộc tính của chúng.............................................................3
2.2 Xác định các liên kết......................................................................................................4
................................................................................................................................................ 5
Bước 3: Chuyển đổi ra mô hình quan hệ................................................................................6
4.1 Thao tác tạo CSDL trên access.....................................................................................9
4.2 Tạo bảng dữ liệu trên ACCESS...................................................................................11
4.4 Nhập dữ liệu:............................................................................................................... 12
4.5 Thực hiện truy vấn:......................................................................................................14
Bước 5: Truy vấn trong hệ quản trị CSDL đó ( dùng ĐSQH và ngôn ngữ SQL)....................22
1
Lời mở đầu
Hiện nay với sự phát triển không ngừng của công nghệ thông tin, cơ sở
dữ liệu ngày càng quan trọng trong cuộc sống. Để có thể tạo ra và phát triển một
chương trình quản lý điểm hoàn hảo, khắc phục đến mức thấp nhất các nhược
điểm, khai thác tối đa các ưu điểm của chương trình đó là việc rất khó khăn do
đó chúng ta cần đến cơ sở dữ liệu để lưu trữ và truy xuất. Một hệ thống quản lý
điểm trong các trường học hiện nay tỏ ra rất quan trọng. Để quản lý điểm trong
một trường từ trước đến nay phải quản lý trên giấy tờ nên có nhiều hạn chế.
Những thông tin về điểm của sinh viên luôn thay đổi từng năm, điều đó thật là
khó và rất dễ sai sót cũng như thất lạc những giấy tờ liên quan.
Với xu thế hội nhập như hiện nay thì trình trạng làm việc thủ công như
vậy phải loại bỏ gấp, nếu không dẫn đến tình trạng lạc hậu cũng như không đi
kịp với xu thế của thời đại.
Vì thế, một xu hướng cho việc quản lý điểm trong các trường học hiện
nay là dùng các hệ thống cơ sở dữ liệu để tin học hóa công việc. Điều này sẽ
giúp bạn lấy thông tin một cách nhanh chóng, chính xác và tránh nhầm lẫn.
Rất mong nhận được những ý kiến đóng góp của quý thầy cô và các bạn.
Chúng tôi xin cảm ơn giảng viên Nghiêm Thị Lịch đã hướng dẫn chúng
tôi hoàn thành đề tài này
2
Nội dung
Truy vấn cơ sở dữ liệu quản lý điểm của sinh viên trên Access
Bước 1: Đặt bài toán
1.1 Mô tả bài toán
Một lớp hành chính có nhiều sinh viên
Mỗi sinh viên có một mã nhân viên, Họ tên, Ngày sinh, Giới tính
Nhiều sinh viên có thể cùng thuộc một lớp hành chính
Sinh viên sẽ theo học các lớp học phần. Mỗi lớp học phần có một mã
số( duy nhất), Tên học phần, Số tín chỉ, Giảng viên giảng dạy
Khi các sinh viên thi hết học phần, điểm sẽ được thống kê vào bảng
điểm này
Bảng điểm này sẽ bao gồm: Mã lớp học phần, Điểm quá trình trên lớp,
Điểm thi
1.2 Các truy vấn thực hiện:
Câu 1: Đưa ra thông tin của sinh viên thuộc lớp hành chính 50S2
Câu 2: Đưa ra thông tin của sinh viên học học phần mã 1607
Câu 3: Thông kê số sinh viên có điểm quá trình=8 và học lớp hành chính
50S2
Câu 4: Đưa ra họ tên của sinh viên có điểm thi >5 và mã học phần 1607
Câu 5: Đưa ra họ tên của sinh viên có điểm thi cao nhất và mã học phần
1607
Câu 6: Đưa ra số sinh viên lớp hành chính 50S2 và mã học phần 1607
Câu 7: Thống kê điểm thi trung bình của học phần mã 1607
Câu 8: Với mỗi lớp hành chính hãy thống kê số sinh viên có điểm thi >5
và học phần mã 1607
Bước 2 : Xây dựng mô hình thực thể liên kết ER
2.1 Xác định các thực thể và thuộc tính của chúng
SINHVIEN (MaSV, Hoten, MaLHC, NgS, GT)
LHC (MaLHC, Khoa)
3
LHP (MaLHP, TenHP, SoTC, GV)
DIEM (MaLHP, Diemqt, Diemthi)
2.2 Xác định các liên kết
SINHVIEN
SINHVIEN
DIEM
(n, 1)
(1, n)
(n, 1)
Thuộc
Có
Của
4
(n, 1)
LHC
(1, n)
(n, 1)
DIEM
LHP
2.3 Xác định mô hình liên kết
Trên cơ sở thiết lập các mối liên kết và mối liên hệ giữa các thực thể ở trên,
chúng ta tiến hành xây dựng mô hình thực thể liên kết cho cơ sở dữ liệu quản lý
điểm
MaLHC
Khoa
LHC
MaLHC
MaSV
NgS
GT
Thuộc
HoTen
SINHVIEN
MaLHP
Diemqt
Có
Diemthi
DIEM
TenHP
MaLHP
GV
Của
SoTC
LHP
5
Bước 3: Chuyển đổi ra mô hình quan hệ
Chuyển đổi mối quan hệ “một – nhiều”
Quy tắc : Đưa khóa chính của bảng phía 1 sang làm khóa ngoại của bảng phía
nhiều.
SINHVIEN - THUỘC - LHC: Mỗi sinh viên thuộc ít nhất 1 lớp hành
chính và nhiều nhất 1 lớp hành chính. Mỗi lớp hành chính có ít nhất 1
sinh viên và nhiều nhất là N sinh viên.
Cách chuyển : thêm khóa “ MaLHC” vào bảng “ SINHVIEN”
NgS
MaSV
MaLHC
SINHVIEN
Khoa
HoTen
MaLHC
LHC
Thuộc
(n,1)
(n,1)
SINHVIEN
MaSV
HoTen
LHC
MaLHC
….
MaLHC
6
Khoa
SINHVIEN - CÓ - DIEM: Mỗi sinh viên có ít nhất 1 điểm và nhiều nhất N
điểm của N học phần. Điểm ít nhất cho 1 sinh viên của 1 học phần, 1 học phần
nhiều nhất 1 điểm cho 1 sinh viên
Cách chuyển : thêm khóa “ MaSV” vào bảng “ DIEM”
Diemqt
MaSV
NgS
HoTen
Diemthi
MaLHP
MaLHC
SINHVIEN
(1,n)
(1,n)
SINHVIEN
MaSV
HoTen
DIEM
Có
DIEM
….
MaLHP
7
Diemqt
MaSV
….
DIEM – CỦA - LHP: Mỗi sinh viên thuộc ít nhất 1 lớp hành chính và
nhiều nhất 1 lớp hành chính. Mỗi lớp hành chính có ít nhất 1 sinh viên và
nhiều nhất là N sinh viên.
Cách chuyển : thêm khóa “ MaLHC” vào bảng “ SINHVIEN”
Diemt
hi
Diemqt
TenHP
SoTC
MaLHP
MaSV
MaLHP
GV
DIEM
LHP
Của
(1,n)
(1,n)
SINHVIEN
MaSV
Diemqt
LHC
MaSV
Diemthi
8
MaLHP
TenHP
MaSV
Bước 4: Tạo lập CSDL trên Hệ quản trị CSDL ACCESS
Sử dụng Hệ Quản Trị Cơ Sở Dữ Liệu Access 2010 thiết kế cơ sở dữ liệu.
4.1 Thao tác tạo CSDL trên access
Mở Access hiện giao diện
Chọn “Blank database”
Nhấn Ctrl-S để lưu và đổi tên bảng
9
Đổi tên bảng thành “SINHVIEN” ta được bảng sau:
10
4.2 Tạo bảng dữ liệu trên ACCESS
Chọn design view
Thêm vào các trường ở cột “field name”, “data type” và “description” ta
được các bảng:
1. SINHVIEN
2. LHC
3. LHP
4. DIEM
11
4.3 Tạo quan hệ trong access
Tắt hết tất cả các table đang bật
Chọn “Database Tools” rồi chọn “reationships”
Chọn tất cả các bảng rồi liên kết các bảng
4.4 Nhập dữ liệu:
•
SINHVIEN
12
•
LHC
•
LHP
•
DIEM
13
4.5 Thực hiện truy vấn:
Truy vấn sử dụng Query trong CSDL Access 2010.
Câu 1: Đưa ra thông tin của sinh viên thuộc lớp hành chính 50S2 và có
giới tính nữ
Cách làm trên access:
B1: tạo các bảng cần thiết cho việc quản lý điểm sinh viên như trên
B2: chọn “Create” chọn “Query Design” rồi chọn bảng cần thiết cho quá
trình truy vấn ( bảng SINHVIEN)
Sau khi chọn xong đóng cửa sổ “show table”
B3: Ở dòng “Field”, “Table” ta chọn các thuộc tính tương ứng
B4: điều kiện truy vấn: sinh viên có MaLHC=”50S2” và GT=”Nữ”
Tại dòng Criteria của cột “MaLHC” gõ cú pháp ”50S2”
Tại dòng Criteria của cột “GT” gõ cú pháp: “Nữ”
14
B5: Chọn Run
Kết quả truy vấn:
Câu 2: Đưa ra thông tin của sinh viên học học phần mã 1607
Thực hiện trong access:
15
Thực hiện các như câu trên:
Kết quả truy vấn:
16
Câu 3: Thống kê số sinh viên có điểm quá trình = 8 và lớp hành chính 50S2
Thực hiện trong access:
Thực hiện các như câu trên:
Kết quả truy vấn:
17
Câu 4: Đưa ra họ tên của sinh viên có điểm thi >5 và mã học phần 1607
Thực hiện trong access:
Thực hiện các như câu trên:
Kết quả truy vấn:
18
Câu 5: Đưa ra họ tên của sinh viên có điểm thi cao nhất và mã học phần
1607
Kết quả truy vấn:
Câu 6: Đưa ra số sinh viên lớp hành chính 50S2 và mã học phần 1607
Thực hiện trong access:
Thực hiện các bước như câu trên:
19
Kết quả truy vấn:
Câu 7: Thống kê điểm thi trung bình của học phần mã 1607
Thực hiện trong access:
Thực hiện các như câu trên:
Kết quả truy vấn:
20
Câu 8: Với mỗi lớp hành chính hãy thống kê số sinh viên có điểm thi >5
và học phần mã 1607
Thực hiện trong access:
Thực hiện các như câu 1:
Kết quả truy vấn:
21
Bước 5: Truy vấn trong hệ quản trị CSDL đó ( dùng ĐSQH và ngôn ngữ
SQL)
Câu 1: Đưa ra thông tin của sinh viên thuộc lớp hành chính 50S2 và giới tính nữ
SELECT *
FROM SINHVIEN
WHERE MaLHC=”50S2” AND GT = “ Nữ “ AND
LHC.MaSV=SINHVIEN.MaSV;
Câu 2: Đưa ra thông tin của sinh viên học học phần mã 1607
SELECT MaSV, Hoten, MaLHC, NgS, GT
FROM
DIEM , SINH VIEN
WHERE Ma LHP = “ 1607 “ AND DIEM.MaSV = SINH VIEN.MaSV;
Câu 3: Thông kê số sinh viên có điểm quá trình=8 và học lớp hành chính 50S2
)
SELECT COUNT ( Ma SV ) as So SV
FROM
DIEM , SINH VIEN
WHERE Diemqt=8 AND MaLHC = “ 50S2 “ AND DIEM.MaSV =
SINHVIEN.MaSV;
Câu 4: Đưa ra họ tên của sinh viên có điểm thi >5 và mã học phần 1607
)
SELECT Hoten
22
FROM
SINHVIEN, DIEM
WHERE Diemthi > 5 AND MaLHP = “1607 “ AND DIEM.MaSV =
SINHVIEN.MaSV;
Câu 5: Đưa ra họ tên của sinh viên có điểm thi cao nhất và mã học phần 1607
SELECT Hoten, MAX(Diemthi)
FROM
SINHVIEN, DIEM
WHERE Diemthi = (SELECT MAX(Diemthi) FROM DIEM WHERE
MaLHP=1607) AND DIEM.MaSV = SINHVIEN.MaSV;
Câu 6: Đưa ra số sinh viên lớp hành chính 50S2 và mã học phần 1607
)
SELECT COUNT(MaSV), MaLHC, MaLHP
FROM
DIEM, SINH VIEN
WHERE MaLHC = “ 50S2 “ AND MaLHP = “ 1607 “ AND DIEM.MaSV =
SINHVIEN.MaSV ;
Câu 7: Thống kê điểm thi trung bình của học phần mã 1607
)
SELECT AVG(Diemthi)
FROM DIEM
WHERE MaLHP =1607;
23
24
Câu 8: Với mỗi lớp hành chính hãy thống kê số sinh viên có điểm thi >5 và học
phần mã 1607
)
SELECT COUNT (MaSV) as SoSV
FROM
DIEM, SINH VIEN
WHERE Diemthi > 5 AND MaLHP “ 1607 “ AND DIEM.MaSV =
SINHVIEN.MaSV
GROUP BY MaLHC;
25