Tạo cơ sở dữ liệu Quản lý sinh viên: QL_SINH_VIEN.MDB Cấu trúc các bảng Các Field được gạch dưới và in đậm là khóa chính của bảng KHOA – Danh sách khoa Field Name Field Type Field Size
Trang 1227 Nguyễn Văn Cừ - Quận 5- Tp.Hồ Chí Minh
Tel: 8351056 – Fax 8324466 – Email: ttth@hcmuns.edu.vn
BÀI TẬP
CHỨNG CHỈ C Microsoft Access 3
Trang 2BÀI 1: TẠO CƠ SỞ DỮ LIỆU
Tạo cơ sở dữ liệu Microsoft Access sử dụng cho các bài tập
1 Tạo cơ sở dữ liệu Quản lý sinh viên: QL_SINH_VIEN.MDB
Cấu trúc các bảng
Các Field được gạch dưới và in đậm là khóa chính của bảng
KHOA – Danh sách khoa
Field Name Field Type Field Size Format Caption Description
MAKH Text 2 Mã khoa Mã khoa
TENKH Text 30 Tên khoa Tên khoa
MONHOC – Danh sách môn học
Field Name Field Type Field Size Format Caption Description
MAMH Text 2 Mã môn học Mã môn học
TENMH Text 25 Tên môn học Tên môn học
SOTIET Number Byte Số tiết Số tiết
SINHVIEN – Danh sách sinh viên
Field Name Field
Type
Field Size Format Caption Description
MASV Text 3 Mã sinh viên Mã sinh viên
HOSV Text 15 Họ sinh viên Họ sinh viên
TENSV Text 7 Tên sinh viên Tên sinh viên
PHAI Yes/No Phái Phai:Yes Nam; No
Nữ NGAYSINH Date/Time dd/mm/yyyy Ngày sinh Ngày sinh
NOISINH Text 15 Nơi sinh Nơi sinh
MAKH Text 2 Mã khoa Mã khoa
HOCBONG Number Double Học bổng Học bổng
KETQUA – Kết quả học tập
Field Name Field Type Field Size Format Caption Description
MASV Text 3 Mã sinh viên Mã sinh viên
MAMH Text 2 Mã môn học Mã môn học
DIEM Number Single Điểm Điểm
Quan hệ giữa các bảng
Trang 3
Nhập dữ liệu thử cho các bảng
SINHVIEN MASV HOSV TENSV PHAI NGAYSINH NOISINH MAKH HOCBONG A01 Nguyễn Thu Hải No 23/02/1980 TP.HCM AV 100,000 A02 Trần Văn Chính Yes 24/12/1982 TP.HCM TH 100,000 A03 Lê Thu Bạch Yến No 21/02/1982 Hà Nội AV 140,000 A04 Trần Anh Tuấn Yes 08/12/1984 Long An LS 80,000 A05 Trần Thanh Triều Yes 01/02/1980 Hà Nội VL 80,000 B01 Trần Thanh Mai No 20/12/1981 Bến Tre TR 200,000 B02 Trần Thị Thu Thủy No 13/02/1982 TP.HCM TH 30,000 B03 Trần Thị Thanh No 31/12/1982 TP.HCM TH 50,000
KETQUA MONHOC
MASV MAMH DIEM MAMH TENMH SOTIET
A01 01 10 01 Nhập môn máy tính 18
A01 02 4 02 Trí tuệ nhân tạo 45
A01 05 9 03 Truyền tin 45
A01 06 3 04 Đồ họa 50
A02 01 5 05 Văn phạm 40
A03 02 5 06 Đàm thoại 30
A03 04 10 07 Vật lý nguyên tử 18
A03 06 1
A04 02 4 KHOA
A04 04 6 MAKH TENKHOA
B01 01 0 AV Anh Văn
B01 04 8 LS Lịch sử
B02 03 6 TH Tin học
B02 04 8 TR Triết
B03 02 10 VL Vật lý
B03 03 9 SH Sinh học
Trang 4BÀI 2: TẠO CÁC ĐIỀU KHIỂN CƠ SỞ
Giúp học viên sử dụng thành thạo các điều khiển cơ sở trong quá trình thiết kế các màn hình trên môi trường Microsoft Access
Các màn hình không sử dụng nguồn dữ liệu
1 Màn hình chào hỏi
Yêu cầu:
Sử dụng công cụ Design View của Access để tạo màn hình Chào hỏi cho phép nhập vào họ tên
Nhấn nút Xuất lời chào: Hiển thị hộp thoại thông báo lời chào theo họ tên nhập vào như hình sau
Nhấn nút Thoát: Đóng màn hình chào hỏi
2 Màn hình hồ sơ sinh viên
Yêu cầu:
Sử dụng công cụ Design View của Access để tạo màn hình cho phép nhập vào thông tin của một sinh viên
Trang 5
Giới tính: Là ComboBox liệt kê hai giá trị Nam và Nữ
Nhấn nút Xuất thông tin: Hiển thị hộp thoại thông báo thông tin của sinh viên như hình sau
Nhấn nút Thoát: Đóng màn hình chào hỏi
Nhấn nút Tiếp tục: Xóa dữ liệu trên các điều khiển nhập liệu và đưa con trỏ vào TextBox Họ tên sinh viên
3 Màn hình thông tin sinh viên
Yêu cầu:
Sử dụng công cụ Design View của Access để tạo màn hình cho phép nhập vào thông tin của sinh viên
Khi mới mở màn hình:
o Khởi tạo danh sách các sinh viên trong ListBox như hình trên
o Thông tin của sinh viên đầu tiên sẽ được hiển thị trên Hồ sơ sinh viên
Khi chọn một sinh viên trong ListBox thì thông tin về họ tên và ngày sinh của sinh viên đó sẽ hiển thị trên Hồ sơ sinh viên
Nhấn nút Thêm vào danh sách: Thêm sinh viên mới với Họ tên và Ngày sinh được nhập trong các TextBox vào ListBox
Nhấn nút Hủy sinh viên khỏi danh sách: Xóa thông tin của sinh viên đang được chọn trên ListBox
Nhấn nút Thoát: Đóng màn hình Danh sách sinh viên
Trang 64 Màn hình Danh sách sinh viên
(hình a)
Yêu cầu:
Sử dụng công cụ Design View của Access để tạo màn hình liệt kê danh sách các sinh viên
Khi mới mở màn hình:
o Khởi tạo danh sách các sinh viên trong ListBox như hình a
Nhấn nút Thêm sinh viên mới: Mở màn hình Thêm thông tin sinh viên (hình b)
Nhấn nút Hủy sinh viên: Xóa thông tin của sinh viên đang được chọn trên ListBox
Nhấn nút Thoát: Đóng màn hình Danh sách sinh viên
Tính tổng số sinh viên hiện có trong ListBox
(hình b)
Giới tính: Là ComboBox liệt kê hai giá trị Nam và Nữ
Nhấn nút Ghi nhận: Ghi nhận thông tin của sinh viên được nhập trên màn hình vào ListBox Danh sách sinh viên (hình a)
Nhấn nút Không ghi: Đóng màn hình Cập nhật sinh viên
Trang 7BÀI 3: BỘ LỆNH DOCMD CƠ BẢN
Giúp học viên sử dụng thành thạo các thao tác cơ bản thông qua bộ lệnh DoCmd trong môi trường Microsoft Access
Sử dụng CSDL QL_SINH_VIEN.MDB ở bài 1 để xây dựng các màn hình sau
1 Màn hình danh mục môn học
Yêu cầu:
Sử dụng công cụ Design View của Access để tạo màn hình hiển thị và cập nhật thông tin cho các môn học thông qua bộ lệnh DoCmd
Bộ nút Di chuyển (|<, <, >, >|): Dùng để di chuyển về mẩu tin đầu tiên, mẩu tin phía trước, mẩu tin phía sau và mẩu tin cuối cùng so với mẩu tin hiện hành
Hiển thị vị trí của mẩu tin hiện hành trên tổng số mẩu tin, giá trị này sẽ thay đổi khi di chuyển mẩu tin
Nút Thêm: Thực hiện xóa dữ liệu trên các điều khiển nhập liệu và đưa con trỏ vào TextBox Mã môn học
Nút Xóa: Xóa thông tin của môn học hiện hành Xử lý xuất thông báo cụ thể nếu không xóa được
Nút Thoát: Đóng màn hình Danh mục môn học
Nút : Mở báo cáo Danh sách môn học (R_DS_MH) ra màn hình
Không yêu cầu kiểm tra tính hợp lệ của dữ liệu
Trang 8
2 Màn hình hồ sơ sinh viên (làm thêm)
Yêu cầu thiết kế:
Sử dụng công cụ Design View của Access để tạo màn hình hiển thị và cập nhật thông tin cho các sinh viên thông qua bộ lệnh DoCmd có dạng 2 trang như sau:
Trang Cập nhật thông tin sinh viên
(Trang Cập nhật thông tin sinh viên)
Trang Liệt kê danh sách sinh viên
(Trang Liệt kê danh sách sinh viên)
Yêu cầu cài đặt:
Bộ nút Di chuyển (< và >): Dùng để di chuyển về mẩu tin phía trước và mẩu tin phía sau so với mẩu tin hiện hành
Hiển thị vị trí của mẩu tin hiện hành trên tổng số mẩu tin, giá trị này sẽ thay đổi khi di chuyển mẩu tin
Khoa đăng ký: Là ComboBox liệt kê tên của tất cả các khoa có trong bảng KHOA
Trang 9Nút Thêm: thêm dữ liệu trên các điều khiển nhập liệu và đưa con trỏ vào TextBox Mã sinh viên
Nút Xóa: Xóa thông tin của sinh viên hiện hành Xử lý xuất thông báo cụ thể nếu không xóa được
Nút Thoát: Đóng màn hình hồ sơ sinh viên
Nút : Mở báo cáo Điểm thi của sinh viên hiện hành (R_KETQUA_SV) ra màn hình
Tính tổng số sinh viên hiện có trong danh sách
Xử lý đồng bộ dữ liệu khi di chuyển qua lại giữa 2 trang (ví dụ: Bên trang Cập nhập thông tin sinh viên đang hiển thị thông tin của sinh viên A02, khi di chuyển qua trang Liệt kê danh sách sinh viên thì dòng dữ liệu A02 trên ListBox phải được bôi đen và ngược lại)
Không yêu cầu kiểm tra tính hợp lệ của dữ liệu
3 Màn hình Tìm kiếm – Lọc – Sắp xếp dữ liệu
Yêu cầu:
Thiết kế màn hình cho phép thực hiện các thao tác Tìm kiếm, Lọc và Sắp xếp dữ liệu dựa trên bảng SINHVIEN (sử dụng bộ lệnh DoCmd)
Nút Lọc: Lọc dữ liệu theo giá trị Mã khoa được nhập trong TextBox
Nút Hủy Lọc: Hủy bỏ chế độ lọc dữ liệu
Nút Sắp xếp: Thực hiện sắp xếp dữ liệu theo tên tên sinh viên và theo giá trị tăng hoặc giảm đang chọn
Nút Hủy sắp xếp: Hủy bỏ chế độ sắp xếp dữ liệu
Nút Tìm kiếm: Thực hiện tìm kiếm mẩu tin đầu tiên theo Tên sinh viên được nhập trong TextBox
Nút Thoát: Đóng màn hình
Trang 11BÀI 4: NGÔN NGỮ LẬP TRÌNH VBA
Giúp học viên sử dụng thành thạo ngôn ngữ lập trình VBA trong Microsoft Access
Xây dựng các màn hình không có nguồn dữ liệu
1 Màn hình Xếp loại học tập cho sinh viên
Mục tiêu:
Sử dụng cấu trúc rẽ nhánh IF … ELSE… để so sánh điều kiện
Yêu cầu:
Sử dụng công cụ Design View của Access để xây dựng màn hình xếp loại học tập cho sinh viên Màn hình ch phép nhập vào Họ tên sinh viên, Điểm trung bình học kỳ 1 và Điểm trung bình học kỳ 2
TextBox Điểm trung bình cả năm, Xếp loại và Kết quả không cho phép chỉnh sửa
Nhấn nút Xếp loại: Thực hiện:
o Hiển thị Xếp loại cho sinh viên được nhập trong TextBox Họ tên
o Tính điểm trung bình cả năm theo công thức:
Trung bình cả năm = (TBHK1 + TBHK2 * 2)/3
o Xếp loại học tập cho sinh viên dựa vào điểm trung bình cả năm với quy ước:
Nếu Điểm TBCN >=8: Loại giỏi
Nếu Điểm TBCN >= 6.5 và Điểm TBCN < 8: Loại khá
Nếu Điểm TBCN >= 5 và Điểm TBCN < 6.5: Loại trung bình
Nếu Điểm TBCN < 5: Loại yếu
Trang 12
o Xét kết quả cho sinh viên “Được lên lớp” hay “Lưu ban” dựa vào điểm TBCN
Nhấn nút Tiếp tục: Xóa dữ liệu trong các TextBox và đưa con trỏ vào TextBox họ tên
Nhấn nút Thoát: Đóng màn hình Xếp loại học tập
2 Màn hình tính tiền Karaoke
Mục tiêu:
Sử dụng cấu trúc IF… ELSE… để phối hợp kiểm tra nhiều điều kiện
Yêu cầu:
Sử dụng công cụ Design View của Access để xây dựng màn tính tiền Karaoke như hình trên
Nhấn nút Tính tiền: Thực hiện mờ nút Tính tiền và tính số tiền phải thanh toán theo quy cách sau:
Nhấn nút Tiếp tục: Xóa giá trị trong các TextBox và đưa con trỏ vào TextBox Giờ bắt đầu, sáng nút lệnh Tính tiền và mờ nút Tiếp tục
Nhấn nút Thoát: Xuất thông báo hỏi người dùng có đồng ý đóng màn hình không, thực hiện đóng màn hình khi người dùng trả lời đồng ý
3 Màn hình đổi năm dương lịch sang âm lịch
Mục tiêu:
Sử dụng cấu trúc SELECT CASE để lựa chọn giá trị
Yêu cầu:
Trang 13Năm âm lịch được ghép lại từ Can và Chi Có 10 Can và 12 Chi Can có được khi ta lấy năm dương lịch chia cho 10 và lấy phần dư Chi có được khi ta lấy năm dương lịch chia cho 12 và lấy phần dư Những phần dư này là chỉ số tương ứng trong hai bảng Can, Chi dưới đây:
CAN Giáp Ất Bính Đinh Mậu Kỷ Canh Tân Nhâm Quí Năm dương lịch Mod 10 4 5 6 7 8 9 0 1 2 3
CHI Tí Sửu Dần Mẹo Thìn Tị Ngọ Mùi Thân Dậu Tuất Hợi Năm dương lịch Mod 12 4 5 6 7 8 9 10 11 0 1 2 3
4 Màn hình kiểm tra số nguyên tố và tìm ước số
Mục tiêu:
Sử dụng cấu trúc FOR… NEXT để thực hiện tính toán
Yêu cầu:
Thiết kế màn hình cho phép nhập vào một số nguyên dương N , N > 0 và <= 30
Nhấn nút Kiểm tra: kiểm tra số N nhập vào có phải là số nguyên tố hay không
Nhấn nút Tìm ước: Tìm tất cả các ước số của N
Nhấn nút Tổng: Tính tổng của tất cả các ước số
5 Màn hình in bảng cửu chương
Trang 14Mục tiêu:
Sử dụng cấu trúc FOR… NEXT để thực hiện tính toán
Yêu cầu:
Thiết kế màn hình cho phép nhập số cửu chương cần in
Nhấn nút In bảng cửu chương: In bảng cửu chương ứng với số cửu chương được nhập như hình
Trang 15BÀI 5: KỸ THUẬT LẬP TRÌNH ADO
Giúp học viên sử dụng thành thạo đối tượng Connection và Recordset trong thư viện ADO của Microsoft Access để thực hiện các thao tác cập nhập, tìm kiếm, sắp xếp, lọc dữ liệu…
Xây dựng các màn hình không có nguồn dữ liệu (không khai báo nguồn dữ liệu của Form trong Record Source)
1 Màn hình danh mục môn học
Yêu cầu:
Thiết kế màn hình cho phép cập nhật thông tin cho các môn học (sử dụng thư viện ADO)
Khi mới mở màn hình, hiển thị thông tin của môn học đầu tiên lên các điều khiển trên màn hình
Bộ nút Di chuyển (|<, <, >, >|): Dùng để di chuyển về mẩu tin đầu tiên, mẩu tin phía trước, mẩu tin phía sau và mẩu tin cuối cùng so với mẩu tin hiện hành
Hiển thị vị trí của mẩu tin hiện hành trên tổng số mẩu tin, giá trị này sẽ thay đổi khi di chuyển mẩu tin
Nút Thêm: Thực hiện xóa dữ liệu trên các điều khiển nhập liệu và đưa con trỏ vào TextBox Mã môn học
Nút Xóa: Xóa thông tin của môn học hiện hành Xử lý xuất thông báo cụ thể nếu không xóa được
Nút Ghi: Ghi nhận thông tin của môn học hiện hành xuống bảng MONHOC Lưu ý ghi nhận cho mẩu tin mới và mẩu tin được sửa đổi
Nút Không: Phục hồi lại dữ liệu của môn học hiện hành
Nút Thoát: Đóng màn hình Danh mục môn học Trước khi đóng xuất thông báo hỏi lại người dùng có đồng ý đóng hay không
Yêu cầu kiểm tra:
Mã môn học và Tên môn học phải khác rỗng
Mã môn học và Tên môn học phải duy nhất
Số tiết phải là số nguyên dương (>0)
Trang 16
2 Màn hình Tìm kiếm – Lọc – Sắp xếp dữ liệu
Yêu cầu:
Thiết kế màn hình cho phép thực hiện các thao tác Tìm kiếm, Lọc và Sắp xếp dữ liệu (sử dụng thư viện ADO)
Khi mới mở màn hình, đọc và hiển thị danh sách của các sinh viên có trong bảng SINHVIEN lên điều khiển ListBox gồm các cột Mã sinh viên, Họ tên sinh viên, Ngày sinh, Học bổng và Mã khoa
ComboBox Khoa: Liệt kê danh sách các khoa có trong bảng KHOA
ComboBox Sắp xếp: Liệt kê tên các Field được hiển thị trong ListBox
ComboBox Tìm kiếm: Liệt kê tên các Field được hiển thị trong ListBox
Nút Lọc: Lọc dữ liệu theo giá trị được chọn trong ComboBox Khoa, và hiển thị kết quả lên ListBox
Nút Hủy Lọc: Hủy bỏ chế độ lọc dữ liệu
Nút Sắp xếp: Thực hiện sắp xếp dữ liệu theo tên field được chọn trong ComboBox Sắp xếp và theo giá trị tăng hoặc giảm đang chọn, sau đó hiển thị kết quả lên ListBox
Nút Hủy sắp xếp: Hủy bỏ chế độ sắp xếp dữ liệu
Nút Tìm: Thực hiện tìm kiếm mẩu tin đầu tiên thỏa giá trị nhập vào TextBox giá trị ứng với tên field được chọn trong ComboBox Tìm kiếm
o Nếu tìm thấy, dòng tương ứng với mẩu tin tìm thấy trên ListBox sẽ được tô đen
o Nếu không tìm thấy, xuất thông báo không tìm thấy cho người sử dụng biết
Nút Thoát: Đóng màn hình Trước khi đóng xuất thông báo hỏi lại người dùng có đồng ý đóng hay không
Trang 17BÀI 6: THIẾT KẾ CÁC BÁO CÁO
Cung cấp cho học viên các báo cáo để thực hiện các chức năng in báo cáo trong các màn hình
Phần báo cáo này sẽ do giáo viên cung cấp cho học viên
1 Danh sách môn học (R_DS_MH)
2 Báo cáo danh sách sinh viên (R_DS_SV)
3 Báo cáo điểm thi của từng sinh viên (R_KETQUA_SV)
Trang 18
(Tiếp tục cho các sinh viên khác…)
Lưu ý: Ngắt trang cho từng sinh viên
4 Báo cáo điểm thi theo môn (R_KETQUA_MON)
(Tiếp tục cho các môn học khác…)
Qui định về sinh viên đậu:
Nếu điểm thi của môn >= 5 thì sinh viên thi đậu, ngược lại là rớt