30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
Bai tap access
1. Bài Tập Thực Hành Access
BÀI 1
TỔNG QUAN
1) Từ màn hình khởi động thực hiện các lệnh sau :
a.Tạo một cơ sở dữ liệu trống tên QLSV.MDB
b.Tạo một cơ sở dữ liệu theo mẫu của Access tên QLBH.MDB
c.Mở lại hai tập tin cơ sở dữ liệu trên.
2) Từ màn hình khởi động thực hiện các lệnh sau :
a.Tạo một cơ sở dữ liệu trống tên QLNS.MDB
b.Tạo một cơ sở dữ liệu theo mẫu của Access tên QLSACH.MDB
c.Mở lại hai tập tin cơ sở dữ liệu trên theo các chế độ sau :
Open.
Open Read Only.
Open Exclusive
Open Exclusive Read Only
Cho nhận xét của từng trường hợp.
3) Mở lại tập tin QLBH.MDB thực hiện các lệnh sau :
a.Chuyển đổi tập tin cơ sở dữ liệu.
b.Thu gọn tập tin .
c.Ẩn hiện tập tin.
d.Đặt và hủy mật khẩu cho tập tin.
e.Thực hiện các lệnh trình bày cửa sổ của CSDL trong menu View.
f. Tìm hiểu một số lệnh trong menu Tools _ Option
g.Thực hiện các thao tác cơ bản trên từng Object (Sao chép, xóa, đổi tên)
2. Bài Tập Thực Hành Access
BÀI 2
TẬP TIN CƠ SỞ DỮ LIỆU
CÂU 1 : Phân tích thiết kế một Cơ sở dữ liệu
Giả sử bạn cần quản lý một cửa hàng bán hàng hóa trong thành phố.
Bạn hãy phân tích và thiết một cơ sở dữ liệu nhằm thực hiện các yêu cầu quản lý
thực tế. Phải quản lý các nhân viên trong cửa hàng, các sản phẩm, các khách hàng,
các hoá đơn (xuất nhập chuyển trả ). Sau đây là một số gợi ý như sau:
mỗi một nhân viên có một mã nhân viên duy nhất, họ, tên, phái, ngày sinh,
điện thoại và địa chỉ
mỗi sản phẩm có một mã sản phẩm để phân biệt với những sản phẩm khác,
một tên sản phẩm, đon vị tính, đơn giá. Đơn giá của sản phẩm lúc nào cũng phải >0
mỗi một hóa đơn có một mã hóa đơn duy nhất, mã nhân viên lập hóa đơn này,
loại hóa đơn (nhập hoặc xuất hoặc chuyển hoặc trả), một ngày lập hoá đơn, 1 ngày giao
nhận hàng, diễn giải hóa đơn. Ngày lập hóa đơn luôn luôn nhỏ hơn hay bằng ngày hiện
hành.
: một chi tiết hóa đơn cho biết một sản phẩm được nhập hoặc xuất
hoặc chuyển hoặc trả trong hóa đơn nào, với số lượng và đơn giá bán là bao nhiêu. Số
lượùng luôn luôn lớn hơn 0.
Dựa vào các gợi ý trên, bạn hãy xác định:
Các table (quan hệ)
Các Field của các table trên (Một field bao gồm Field Name, Datatype,
properties,..)
Xác định khóa chính, khóa ngoại.
Các ràng buộc toàn vẹn
Đưa ra mối quan hệ .
CÂU 2 : Dựa trên cơ sở phân tích của Bài Tập 1 bạn hãy đưa ra mô hình cơ sở dữ liệu
cho các đề tài sau :
Quản lý sinh viên.
Quản lý vật tư.
Quản lý nhân sự.
Quản lý sách.
3. Bài Tập Thực Hành Access
BÀI 3
BÀI TẬP TABLE
Câu 1: Tạo tập tin cơ sở dữ liệu có tên là HOADON.MDB. Dùng chức năng Table để
thiết kế cấu trúc và tạo khóa chính cho các bảng sau đó nhập dữ liệu dựa vào bảng dữ
liệu mẫu đính kèm :
NHAN VIEN
Field Name Data type Description Field Properties
MANV AutoNumber Mã Nv Format:>[Red]
Caption: Mã Nv
HONV Text Họ nhân viênï Field size: 25
Format:>[Blue]
Caption: Họ NV
TENNV Text Tên nhân viên Field size: 10
Format:>[Blue]
Caption: Tên NV
Require: yes
PHAI Yes/No Phái Yes: Nam,
No:Nữ
Format:;"Nam"[Blue];"Nữ"[Magenta]
Caption: Phái
Display Control: Text Box
NGAYSINH Date/Time Ngày sinh Format: short date
Input Mark: 00/00/00
Caption: Ngày sinh
NOISINH Text Nơi sinh Field size:15
Caption: Nơi sinh
DIACHI Text Địa chỉ Field size: 40
Caption: địa chỉ.
DIENTHOAI Text Số điện thoại Field size:14
Input Mark: !(999") "0000000;;*
Caption: Điện thoại
HINH OLE Object Hình
4. Bài Tập Thực Hành Access
KHACH HANG
Field Name Data type Description Field Properties
MAKH Text Mã Khách hàng Field size: 10
Format:>[Red]
Caption: Mã KH
TENKH Text Tên Khách hàng Field size: 25
Format:>[Blue]
Caption: Tên Công ty
DIACHI Text Địa chỉ Field size: 40
Caption: địa chỉ.
THANHPHO Text Thành phố Field size: 10
Caption: Thành phố
DIENTHOAI Text Số điện thoại Field size:14
Input Mark: !(999") "0000000;;*
Caption: Điện thoại
SAN PHAM
Field Name Data type Description Field Properties
MASP Number Mã san pham Field size: Integer
Caption: Ma Sp
Required: yes
TENSP Text Ten San pham Field size: 40
Format:>[Blue]
Caption: Tên Sp
DONVITINH Text Don vi tinh Field size: 10
Caption: Đơn vị tính
DONGIA Number Đơn giá Field size: Double
Format:standard
Decimal places: 2
Caption: đơn giá
Validation rule: >0
Validation Text: Phải nhập số >0
SLTON Number Số lượng tồn Field size: integer
Caption: Số lượng tồn
Default value : 0
5. Bài Tập Thực Hành Access
HOADON
Field Name Data type Description Field Properties
MAHD Text Mã hoá đơn Field size: 5
Format:>[red]
Caption: mã hóa đơn
Required: yes
LOAIHD Text Loại hóa đơn:
nhập-xuất-chuyển- trả
Fieldsize:1
Default value: X
Validation rule: In(“N”,”X”,”C”,”T”)
Required: Yes
MAKH Text Mã khách hàng Field size: 10
Format:>[Red]
Caption: Mã KH
MANV Number Mã nhân viên Field size:LongInteger
Caption: mã nhân viên
Required: yes
NGAYLAPHD Date/Time Ngày lập hoá đơn Format: short date
Caption: Ngày hoá đơn
Input Mask: 00/00/00
Validation Rule: <=Date()
Validation Text:Ngay lap HD phai
nho hon hoac bang ngay hien hanh
NGAYGNHANG Date/Time Ngày giao nhận hàng Format: short date
Caption: Ngày Giao nhận hàng
Input Mask: 00/00/00
DIENGIAI Text Dien giai Fieldsize: 30
CHITIETHOADON
Field Name Data type Description Field Properties
MAHD Text
(Lookup Wizard )
Ma hoa đon Field size: 5
Format:>[red]
Caption: mã hóa đơn
Required: yes
MASP Number
(Lookup Wizard )
Ma san pham Field size: Integer
Caption: Ma Sp
Required: yes
SOLUONG Number Số lượng Field size: Integer
Format:standard
Caption: Số lượng
Validation rule: >0
Validation Text: Phải nhập số >0
DONGIA Number Đơn giá xuất
nhập
Field size: Double
Format:standard
Decimal places: Auto
Caption: đơn giá
6. Bài Tập Thực Hành Access
Cách thiết kế bảng: tại trang table, chọn New -> Design view (hoặc double click vào lệnh
create table in design view -> Màn hình thiết kế bàng
Chọn field làm khoá : Chọn menu Edit -> Primary key ( Hoặc click nút Primary key )
12. Bài Tập Thực Hành Access
1. Mở Table SAN PHAM
a.Sắp xếp theo DONGIA tăng dần.
b.Sắp xếp theo TENSP giảm dần
2. Mở Table HOA DON: Sắp xếp theo MANV tăng dần, trùng MANV thì xếp theo
NGAYLAPHD tăng dần.
3. Mở Table NHAN VIEN: Sắp xếp theo PHAI, trùng phái thì xếp theo TENNV
giảm dần, trùng TENNV thì xếp theo NGAYSINH tăng dần.
4. Đóng Table NHÂN VIÊN đã được sắp xếp, sau đó mở lại một lần nữa, bảng nhân
viên có còn được theo thứ tự sắp xếp không? Cho nhận xét
Câu 3: Thực hiện thao tác lọc dữ liệu như sau:
1. Mở table NHÂN VIÊN, sử dụng Filter by Selection thực hiện lọc
a.Các nhân viên có tên là “Hùng”
b.Các nhân viên có tên bắt đầu là “H”
c.Các nhân viên có họ lót là “Ngọc”
d.Các nhân viên sinh năm 1975
e.Các nhân viên sinh vào tháng 09
f. Các nhân viên nam
2. Mở table SANPHAM, sử dụng Filter by form thực hiện lọc:
a.Các sản phẩm có đơn vị tính là “thùng”
b.Các sản phẩm có đơn giá >100
c.Các sản phẩm có đơn giá 20 đến 50
3. Mở table KHACHHANG, sử dụng Advanced Filter/Sort thực hiện lọc:
a.Các Khách hàng ở “Tp. HCM” nhưng không có số điện thoại
b.Các khách hàng ở “Tp. HCM” hoặc “Hà Nội”
Câu 4:
1. Sao chép cấu trúc và dữ liệu của table NHANVIEN thành table có tên là
LYLICHNV
2. Sao chép cấu trúc của table SAN PHAM thành table có tên là SANPHAMMOI
3. Sao chép cấu trúc và dữ liệu của SANPHAM thành table có tên là SP_TAM
4. Đổi tên table SANPHAMMOI thành SANPHAMMOINHAP
5. Đổi tên table LYLICHNV thành bảng CHAMCONGNV
6. Vào chế độ Design View của bảng CHAMCONGNV, thực hiện các công việc:
a.Chèn thêm trường NC (ngày công), có kiểu dữ liệu là Number, Validation
rule là >=0 and <=30
b.Chèn thêm trường DGNC (đơn giá ngày công), có kiểu dữ liệu là Number,
Validation Rule >0
c.Xóa các trường HONV, TENNV, PHAI, NGAYSINH, ĐIACHI,
DIENTHOAI
d.Nhập các giá trị cho cột ngày công tùy ý nhưng nằm trong khoảng từ 0 đến
30, thử nhập giá trị >30 và cho nhận xét
e.Nhập các giá trị cho cột DGNC là 15000 hoặc 20000, thử nhập giá trị <0 và
cho nhận xét
Câu 5: Mở table SP_TAM, dùng chức năng Edit Find hoặc Edit Replace để thực
hiện các thao tác sau:
a.Tìm những sản phẩm có đơn giá 100
13. Bài Tập Thực Hành Access
b.Tìm những sản phẩm có đơn vị tính là “Kg”
c.Tìm những sản phẩm có Tên sản phẩm bắt đầu là “B”
d.Tìm và thay thế những đơn vị tính là “cái” thay thành “Chiếc”.
Câu 6: Xoá table SP_TAM, CHAMCONGNV, SANPHAMMOINHAP.
Câu 7: Thiết lập Relationship giữa các table.
Câu 8: Tạo CSDL trống tên QLVT.MDB, sau đó dùng chức năng Import, Import các
Table SanPham, HoaDon, ChiTietHoadon từ CSDL Hoadon sang và dùng chức năng
Link Table để tạo liên kết giữa hai Table ChiTietHoaDon có trong hai CSDL này.
Câu 9 : Dùng chức năng Export, export Table KhachHang, Nhanvien từ CSDL HoaDon
sang CSDL QLVT.MDB.
Câu 10 : Dùng chức năng Export, export Table KhachHang từ CSDL HoaDon thành tập
tin tên DanhSachKhachHang.XLS bên Excel.
14. Bài Tập Thực Hành Access
BÀI 4
BÀI TẬP QUERY
Mở tập tin HOADON.MDB Hãy tạo các truy vấn sau:
1) Tạo query cho biết các thông tin về hoá đơn : mã HD, tên KH, tên NV lập hoá
đơn, ngày lập HD, ngày nhận hàng, kết quả được sắp xếp theo ngày lập hóa
đơn.
2) Tạo query cho biết các thông tin về sản phẩm đã xuất bán trong các hóa đơn
như sau : Tên sp, mã HD, ngày lập hóa đơn, ngày nhận hàng, số lượng, kết quả
được sắp xếp theo ngày nhận hàng.
3) Tạo query cho biết các thông tin về nhân viên và những hóa đơn của nhân viên
lập như sau :tên Nv lập hóa đơn, Mã HD, Mã khách hàng, ngày lập HD, ngày
nhận hàng, kết quả được sắp xếp theo ngày nhận hàng.
4) Tạo query cho biết các thông tin về hóa đơn của khách hàng CINOTEC : mã
HD, tên NV lập hóa đơn, ngày lập HD, ngày nhận hàng. Kết quả được sắp xếp
theo ngày nhận hàng.
5) Tạo query cho biết các thông tin về hóa đơn của khách hàng CINOTEC,
FAHASA, SAVICO, SJC bao gồm : mã HD, mã KH, tên NV lập hoá đơn,
ngày lập HD, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá. Kết quả được
sắp xếp theo mã khách và ngày nhận hàng.
6) Tạo query cho biết các thông tin của hoá đơn có mã số 10177 : mã KH, tên
NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng, tên sản phẩm, số lượng,
đơn giá, thành tiền.
7) Tạo query cho biết các thông tin về hoá đơn của khách hàng FAHASA và
SAFICO : mã HD, mã KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận
hàng, tên sản phẩm, số lượng, đơn giá, thành tiền. Kết quả được sắp xếp theo
mã khách và ngày nhận hàng.
8) Tạo query cho biết các thông tin của hoá đơn lập trong tháng giêng : mã HD,
mã KH, tên KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng.
9) Tạo query cho biết các thông tin của hoá đơn lập trong tháng giêng và tháng
hai : mã KH, tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng.
10)Tạo query cho biết các thông tin của hoá đơn lập trong tháng giêng và tháng
hai đồng thời có thời gian giao hàng trong tháng 3 : mã HD, mã KH, tên KH,
tên NV lập hóa đơn, ngày lập hóa đơn, ngày nhận hàng.
11)Tạo query cho biết các thông tin của hoá đơn lập trong tháng 5 và số lượng
giao hàng của mỗi mặt hàng lớn hơn 10 : mã HD, mã KH, tên KH, tên NV lập
hóa đơn, ngày lập hóa đơn, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá,
thành tiền.
12)Tạo query cho biết các thông tin của hoá đơn lập trong tháng 5 và giao hàng
sau ngày 15/6/04: mã HD, mã KH, tên KH, tên NV lập hóa đơn, ngày lập hóa
đơn, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá, thành tiền.
13)Tạo query cho biết các thông tin của hoá đơn có thời gian giao hàng nhỏ hơn
20 ngày tính từ ngày lập hóa đơn : mã KH, tên NV lập hóa đơn, ngày lập hóa
đơn, ngày nhận hàng, tên sản phẩm, số lượng, đơn giá, thành tiền.
15. Bài Tập Thực Hành Access
14)Tạo query cho biết các thông tin về hoá đơn được lập trong ngày cuối cùng của
table hóa đơn : mã HD, ngày lập hóa đơn.
15)Tạo query cho biết các thông tin về hóa đơn do những nhân viên ở Q1 đã lập :
mã HD, mã KH, tên KH, địa chỉ khách hàng, tên NV, địa chỉ NV, ngày lập
HD, ngày nhận hàng.
16)Tạo query cho biết các thông tin về hóa đơn do những nhân viên ở Q11 lập :
Mã HD, mã KH, tên KH, địa chỉ khách hàng, tên NV, địa chỉ NV, ngày lập
HD, ngày nhận hàng.
17)Tạo query CHITIETHD gồm các vùng sau : MAHD, TenSp, Dongia, Songay,
Thanhtien, TienTraTruoc, Conlai. Trong đó :
Thành tiền là số lượng nhân đơn giá.
Songay : số ngày từ ngày lập hóa đơn đến ngày nhận hàng.
Tiền trả trước : Nếu số ngày <=20 thì trả trước 20% thành tiền, nếu
20<songay<=30 thì trả trước 30% thành tiền, các trường hợp còn lại trả
trước 50% thành tiền.
18)Tạo query DANH SACH HOA DON gồm các vùng như trên, nhưng chỉ những
hóa đơn của khách hàng ở TP HCM sản phẩm là Rượu và số lượng từ trong
khoảng tư 20 đến 29.
19)Tạo query TINH TIEN cho từng sản phẩm trong từng hóa đơn gồm các vùng :
Mã HD, ngày lập HD, tên sản phẩm, số lượng, đơn giá, thành tiền USD, thành
tiền VN.
Biết rằng :
Thành tiền USD =Đơn giá * Số lượng
Thành tiền VN = Thành tiền USD * tỉ giá với tỉ giá được tính nhưsau :
13780 nếu hóa đơn được lập vào 4 tháng đầu của năm 04.
14200 nếu hóa đơn được lập vào 4 tháng kế của năm 04.
15000 cho các hóa đơn sau đó.
20)Tạo query thực trả cho từng sản phẩm trong từng hóa đơn gồm các vùng
MAHD, ngày lập HD, tên sản phẩm, đơn giá, số lượng, thành tiền, thực trả.
Biết rằng :
Thành tiền = Đơn giá * Số lượng.
Thoigian= Ngay giao nhan - Ngay nhap
Thực trả = Bao gồm thành tiền và số tiền thưởng phạt cho thời gian lấy
hàng như sau :
Nếu thời gian từ ngày lập hóa đơn đến ngày nhận hàng dưới 20
ngày thì giảm giá 3 đồng cho một ngày trước mốc thời hạn
(20 ngày).
Nếu thời gian từ ngày lập hóa đơn đến ngày nhận hàng trong
khoảng từ 20 đến 40 ngày thì không tính thưởng phạt.
Nếu thời gian từ ngày lập hóa đơn đến ngày nhận hàng trên 40 ngày
thì phạt 3 đồng cho một ngày vượt quá mốc thời hạn.
21) Danh sách các Khách hàng có hai ký tự cuối cùng của MAKH là CO.
22) Danh sách các sản phẩm có đơn giá bán cao nhất. Thông tin bao gồm MaSp,
TenSp, đơn vị tính, Dongia bán.
23)Danh sách các hóa đơn do nhân viên Nga lập trong tháng 3.
24) Cho xem danh sách nhân viên có năm sinh >=1985
16. Bài Tập Thực Hành Access
25)Cho xem danh sách nhân viên có tuổi từ 20 đến 40.
26)Danh sách các hoá đơn có ngày lập hóa đơn là ngày hiện hành.
27)Danh sách các sản phẩm ứng với tiền tồn vốn. Thông tin bao gồm MaSp, TenSp,
Dongia, SLTon, Tiền Tồn. Trong đó Tiền tồn = SLTON * DONGIA.
28)Cho xem danh sách nhân viên ứng với độ tuổi. Thông tin kết quả bao gồm mã
nhân viên, họ và tên, giới tính, tuổi, độ tuổi. Trong đó
Họ và tên là được ghép bởi HoNv và TenNv: &
Giới tính là Phái nhưng được hiện Nam hoặc Nữ
Tuoi=year(Date( )) –year([ngaysinh])
Độ tuổi : dựa vào tuổi nếu tuổi <18: Thanh thiếu niên
Tuổi từ 18 đến < 35: Thanh niên
Tuổi từ 36 đến < 50 : Trung niên
Tuối >=50 : Cao niên
29)Cho biết những nhân viên ở độ tuổi là Cao Niên (dữ liệu nguồn là câu 28)
30)Danh sách 3 nhân viên lớn tuổi nhất.
31)Danh sách các sản phẩm được nhập. Thông tin bao gồm MaSp, TenSp, Donvitinh,
TongSoLuong. Trong đó TongSoLuong là sum của Soluong, kết nhóm theo Masp.
32)Danh sách các hóa đơn ứng với tổng tiền của từng hóa đơn. Thông tin bao gồm
MaHd, NgayLapHd, LoaiHD, Tong Tien. Trong đó Tong Tien là Sum của
SoLuong * Dongia, kết nhóm theo Mahd.
33)Danh sách các hóa đơn xuất hoặc trả ứng với tổng tiền của từng hóa đơn. Thông
tin bao gồm MaHd, NgayLapHd, LoaiHD, Tong Tien. Trong đó Tong Tien là
Sum của SoLuong * Dongia, kết nhóm theo Mahd.
34)Mặt hàng đã nhập có trị giá lớn nhất.Thông tin bao gồm : MaSP, TenSP,
Donvitinh, TongTriGia.
35)Các hoá đơn có số lượng xuất bán mặt hàng rượu nhiều nhất trong tháng 1/2004
Thông tin bao gồm: MaHD, TenKH, TenSP, Soluong.
(Hướng dẫn : Sử dụng subQuery)
36)Cho biết mỗi khách hàng đã lập hóa đơn bao nhiêu lượt. Thông tin gồm MaKh,
TenKh, Tổng số hóa đơn, Loại HD. Trong đó Tổng số hóa đơn được đếm (Count)
theo từng Khách hàng và theo loại HD.
37)Cho biết mỗi nhân viên đã lập được bao nhiêu hóa đơn.
38)Cho biết mỗi nhân viên đã lập được bao nhiêu hóa đơn xuất, tổng tiền là bao
nhiêu. Thông tin gồm MaNv, Ho va Ten, Tong so hoa don, Tong so Tien.
39)Tính doanh số bán của mỗi nhân viên trong quý 1và quý 2
40)Tạo query theo mẫu sau :
17. Bài Tập Thực Hành Access
41)Danh sách các sản phẩm có hoá đơn nhập trong 1 ngày tùy ý (tham số).Thông tin
hiển thị: TenSP,NgayNhap,TongSoluong, TongTriGia.
42)Danh sách các sản phẩm có hóa đơn Xuất trong một khoảng thời gian được đưa
vào ( ngày bắt đầu và ngày kết thúc là 2 tham số ).Thông tin hiển thị: TenSP,
Ngayxuat, TongSoluong, TongTriGia.
43)Tạo query cho phép xem tổng số lượng đã bán của 1 sản phẩm tùy ý.
44)Tạo query khi thực hiện yêu cầu nhập ký tự đầu của MaKh, Hiện thị kết qủa là các
HD đã lập cho nhóm khách hàng này (VD : các Makh bắt đầu là T).
45)Tạo query cho phép xem thông tin về các khách hàng ở 1 quận nào đó
46)Danh sách sản phẩm chưa từng được lập hóa đơn.
47)Danh sách các nhân viên chưa từng tham gia lập hóa đơn.
48)Danh sách các khách hàng chưa từng lập hóa đơn.
49)Thống kê tổng số lượng sản phẩm đã nhập ứng với mỗi nhà cung cấp và mỗi sản
phẩm
50)Thống kê tổng số lượng sản phẩm đã xuất ứng với mỗi khách hàng và mỗi sản
phẩm
51)Thống kê tổng tiền thu được từ những hóa đơn xuất ứng với mỗi nhân viên và ứng
mỗi ngày
52)Thống kê tổng số sản phẩm đã xuất bán ứng với quý và ứng với từng sản phẩm .
53)Thống kê tổng trị giá hóa đơn được lập ứng với mỗi khách hàng và ứng với mỗi
loại hóa đơn.
54)Tạo query thống kê mỗi khách hàng với số lượng mỗi mặt hàng đã mua
Ví Dụ :
18. Bài Tập Thực Hành Access
1) Dùng Update query để tăng đơn giá của các sản phẩm lên 1% .
2) Dùng Update query để giảm 10% đơn giá của các sản phẩm có đơn vị tính là
“Chai”
3) Dùng Update query để đổi thành phố “Tp. HCM” thành “Sài gòn” trong table
KHACHHANG
4) Dùng Update query để cập nhật đơn giá trong CHITIETHD chính bằng đơn giá
trong SAN PHAM.
5) Tạo query để sửa đổi số điện thọai của các nhân viên ở Q3 với số đầu bị đổi sang
số 9
6) Sao chép bảng SANPHAM thành bảng tblSANPHAMTANGGIA cùng nội dung
vàcấu trúc. Thiết lập query tăng giá của các sản phẩm lên 10 %.
1) Dùng Make Table Query, để tạo ra bảng HOA DON LUU 2004 gồm các cột
MAHD, MANV, NGAYLAPHD, NGAYGIAONHANHANG, TTIEN, chứa các
hoá đơn có tháng lập hóa đơn là tháng 1,2,3/2004 .
2) Tạo bảng tblKhachHangQ5 từ bảng khách hàng chứa thông tin về các khách hàng
ở Q5
3) Tạo bảng tblHoaDonQuy1 từ bảng hóa đơn chứa thông tin về các hóa đơn đã lập
trong quý 1
4) Tạo bảng tblHoaDonHunSan1 từ bảng hóa đơn chứa thông itn về các hóa đơn đã
lập cho khách hàng có MaKH là HUNSAN trong tháng giêng
5) Dùng Make Table Query, tạo ra bảng LUONG NV gồm các cột MANV,
HOTEN, THANG, LUONG.
Lưu ý
a. Truy vấn có 2 tham số để nhập vào tháng, và năm cần cập nhật lương
b. Field Tháng là chuỗi gồm tháng ghép với năm của tháng tính lương. Ví dụ:
tháng tính lương là 2 và năm tính là 2004 thì kết quả của field tháng là
“02/04”
19. Bài Tập Thực Hành Access
c. LUONG = 1 % tổng doanh thu của nhân viên trong tháng năm tính lương.
Ví dụ trong tháng 2/1992 nhân viên NV001 đạt doanh thu là 100 triệu thì
lương là 1 triệu
1) Tạo một Append query, để cập nhật lương của các nhân viên cho một tháng tùy ý,
cách tính lương theo qui tắc trên.
2) Tạo một Append query, để cập nhật các hóa đơn tháng 4,5,6/2004 vào bảng HOA
DON LUU 2004.
3) Sao chép cấu trúc của table tblHoaDonHunSan1 để tạo 1 table rỗng có tên
tblHoaDonHunSan1-2 Sau đó thiết lập query để nối các mẫu tin là các hóa đơn đã
lập trong thàng của khách hàng này vào đó.
4) Sao chép tblKhachHangQ5 thành tblKhachHangQ135 có cùng nội dung và cấu
trúc. Sau đó thiết lập query nối các mẫu tin là các khách hàng ở Q3 và Q5 từ bảng
khách hàng vào nó.
1. Tạo Query xóa các khách hàng ở Q5 trong table tblKhachHang135.
2. Tạo một Delete Query dùng để xóa mẫu tin lương của các nhân viên trong một
tháng tùy ý nào đó.
20. Bài Tập Thực Hành Access
BÀI 5
BÀI TẬP FORM
Phần 1 : Form căn bản
Yêu cầu : tạo form bằng công cụ Form wizard, Autoform. Phân biệt các dạng form. Thực
hiện các thao tác trên form.
1. Dùng Form wizard tạo form tên Nhanvien_1 dạng columnar cho bảng NHANVIEN
theo mẫu như hình bên.
Mở form Nhanvien_1 ở chế độ
Form View , thực hiện các thao tác
trên form :
- duyệt record
- tìm kiếm /Lọc (theo địa chỉ,
điện thoại,…)
- thêm mới record , hiệu chỉnh
record , xoá record
- Thay đổi trình bày của dữ liệu
trong form .
(HD : sử dụng navigation buttons ,
các biểu tượng Find record, Filter by Form , New record, Delete record, Format
font…)
2. Tương tự sử dụng Form wizard tạo form Nhanvien_2, Nhanvien_3, … dạng tabular,
datasheet, justify.Hãy nhận xét và phân biệt 4 kiểu form trên.
3. Sử dụng AutoForm để tạo form dạng columnar, tabular, datasheet cho bảng
KHACHHANG, đặt tên các form là KhachHang_1, KhachHang_2,…
Hãy nhận xét về 2 công cụ tạo form : AutoForm và Form wizard.
Phần 2 : Thiết kế Form căn bản
Yêu cầu : Làm quen với một số thuộc tính
của form, control. Các thao tác trên
Design view.
Tìm hiểu cách dùng các control để tạo
form
4. Mở form Nhanvien_1 ở chế độ Design .
Chỉnh sửa form giống như 2 mẫu sau
Hướng dẫn:
Chọn control, di chuyển, thay đổi size của
control; thay đổi format ; thay đổi caption;
thay đổi lựa chọn về record selector,
default view...
21. Bài Tập Thực Hành Access
5. Tự thiết kế form giống như mẫu form Nhanvien_1 (đặt tên form là Nhanvien_dsg).
Hướng dẫn: Mở 1 form mới ở chế độ Design . Tạo các control trên form bằng 1 trong 2
cách sau : dùng field list hoặc dùng control textbox và label trên thanh công cụ toolbox.
6. Thiết kế form có sử dụng control Option group : Chỉnh sửa thiết kế cho form
Nhanvien có dùng OptionGroup hiển thị Phái như mẫu form NV_model 4.
7. Tạo form Hoadon : có sử dụng combo box để trình bày dữ liệu các field Loai HD,
MaNV, MaKH (như mẫu form Hoadon_mau 1)
Tương tự : Tìm hiểu List box để trình bày Loai HD .
8. Sử dụng Crosstab Query làm dữ liệu cho form, sử dụng Textbox control hiển thị kết
quả tính toán .Trình bày form dạng continuos có header/footer như mẫu form
Crosstab_Sanpham.
(Dữ liệu trong form thể hiện: số
lượng nhập , xuất theo mặt hàng theo
Quí.Trong phần footer hiển thị Tổng
số lượng của tất cả các mặt hàng.)
22. Bài Tập Thực Hành Access
Phần 3: Main - Sub Form
rường hợp 1 : Ô quan hệ với Subform ở MainForm là một Textbox
9. Tạo Form theo mẫu sau
Hướng dẫn:
B1: Tạo Subform đặt tên
Sub9 hiển thị MASP,
TENSP, SOLUONG,
DONGIA, THANHTIEN.
(Datasource là query có kết
xuất gồm các field như trên
nhưng thêm Field quan hệ
với Main là MAKH; form
hiển thị dạng Datasheet)
B2: Tạo Main form đặt tên
Form9 hiển thị dữ liệu của
table KHACHHANG
B3: Kéo biểu tượng của
Sub9 từ Database Window
vào vùng Detail
B4: Kiểm tra liên kết giữa 2
form là
Link master field : MAKH
Link child field : MAKH.
B5 : Tạo ô Tính toán tổng trị giá hoá đơn.
Trong phần Form Footer của Sub9 tạo 1 text box đặt tên là TONGTIEN và trong
Control Source của nó gõ vào công thức =SUM([THANHTIEN])
Vẽ một Textbox trong Main form dưới vị trí của khung Subform :Chỉnh thuộc tính
như sau :
Đặt Caption của Label là Tổng Thành Tiền :
Đặt Control Source của Textbox biểu thức sau :=[sub9].[Form]![TONGTIEN]
10.Dùng Design form tạo Form dạng Main_Sub form như mẫu form Hoadon_MainSub
Hướng dẫn:
B1: Tạo Subform đặt tên Sub10 hiển thị MAHD, TENSP, SOLUONG, DONGIA,
THANHTIEN.
(Datasource là query có kết xuất gồm các field như trên nhưng thêm Field quan hệ
với Main là MAHD; form hiển thị dạng Datasheet)
B2: Tạo Main form đặt tên Form10 hiển thị dữ liệu của table HOADON
B3: Kéo biểu tượng của Sub10 từ Database Window vào vùng Detail của Form10
B4: Kiểm tra liên kết giữa 2 form là
Link master field :MAHD
Link child field : MAHD.
B5 : Tạo ô Tính toán tổng trị giá hoá đơn.
23. Bài Tập Thực Hành Access
Trường hợp 2 : Ô quan hệ với Subform ở MainForm là một ComboBox
11.Hãy tạo Form theo mẫu dưới đây : Khi chọn tên 1 sản phẩm từ Combo Box thì sẽ
hiển thị các thông tin tương ứng trong Subform và các Unbound Textbox.
Hướng dẫn:
B1: Tạo Subform đặt tên Sub11 hiển thị MAHD, TENCTY, SOLUONG, DONGIA,
THANHTIEN.
(Datasource là query có kết xuất gồm các field như trên và thêm field quan hệ với
Main là Tensp; form hiển thị dạng Datasheet)
B2: Tạo Main form đặt tên Form11 nhưng không lấy nguồn dữ liệu.
B3: Kéo biểu tượng ComboBox trên Toolbox vào và sửa các thuộc tính sau cho
Combo :
Row Source Type : Table/Query
Row Source : Click ô ba chấm, chọn bảng SanPham và lấy Field Tensp.
Name : Cbotensp.
24. Bài Tập Thực Hành Access
Kéo biểu tượng của Sub11 từ Database Window vào vùng Detail
B4: Kiểm tra liên kết giữa 2 form là
Link master field : CboTensp
Link child field : Tensp.
B5 : Tạo ô Tính toán số lần bán, tổng số lượng, tổng tiền .
12.Tạo Form dạng Main_Sub form như mẫu form Sanpham_HD_MainSub1 , theo yêu
cầu : Khi chọn tên 1 sản phẩm từ Combo box sẽ hiển thị các thông tin tương ứng
trong Subform.
Tương tự : tạo form như mẫu Sanpham_HD_MainSub 2.
13.Tạo Form theo mẫu sau :
25. Bài Tập Thực Hành Access
Yêu cầu :
Click Combo Makh sẽ hiện danh sách các khách hàng, sau đó Click Combo Mahd
sẽ hiển thị các Mahd mà Khách hang đã chọn trong Combo box Makh đã mua,
đồng thời hiện các thong tin Ngày lập, ngày giao và chi tiết của hoá đơn này trong
SubForm.
14.Dùng Design form tạo Main form có 2 Subform như mẫu form
Khachhang_MainSubF
26. Bài Tập Thực Hành Access
Hướng dẫn :
B1 : Tạo SubForm1 tên Sub14a :
Các hoá đơn đã lập cho từng khách hàng. (datasource là Query gồm Manv,
Mahd, NgayLaphd, Ngaygiaonhanhang, Makh, Form có dạng Datasheet)
B2 : Tạo Subform2 tên Sub14b :
Chi tiết về từng hoá đơn. (datasource là query gồm Tensp, Soluong, Dongia,
Thanhtien, MaHd, Form ở dạng Tabular và tính Trigia ở Form Footer.
B3 : Tạo Main Form :Nguồn dữ liệu là Table KhachHang
Kéo biểu tượng Sub14a từ cửa sổ DataBase vào
Liên kết giữa Mainform và Subform1 thông qua MakH
Link child Fields : MaKH.
Link Master fields : MAKH.
B4 :Tạo 1 Text box trung gian :
Control Source : Sub14a.FORM!MAHD.
Name : txtMaHD.
Visible : No. (nếu muốn ẩn ô text box này)
B5 : Kéo biểu tượng Sub14b từ cửa sổ Database vào :
Liên kết giữa SubForm1 và SubForm2 thông qua Text box HD.
Link Child Fields : MAHD.
Link Master Fields : TxtMaHD.
15.Dùng Design form tạo Main form có 2 Subform như mẫu form
Khachhang_Hoadon_TAB
Yêu cầu : dùng Tab control để hiển thị 2 Subform.
27. Bài Tập Thực Hành Access
16.Hãy tạo Form theo mẫu dưới đây : khi chọn 1 mã nhân viên từ Combo box thì trong
trang 1 (Chi tiet hoa don) sẽ hiển thị các hoá đơn do nhân viên này lập.
Và khi Click vào trang Thong tin ve nhan vien thì hiện chi tiết các thông tin về nhân
viên này.
28. Bài Tập Thực Hành Access
BÀI 5
BÀI TẬP PHẦN REPORT
1. Tạo 1 Report để in Bảng Báo Giá theo mẫu sau. Sử dụng lần lượt các công cụ sau :
- Report Wizard
- AutoReport Columnar , AutoReport Tabular
2. Công ty có nhu cầu gửi thư chào hàng tới các khách hàng, hãy dùng công cụ Label
Wizard để in nhãn cho thư gửi .
3. Tạo report in ra Hoá đơn bán hàng , theo 2 cách sau :
Tạo bằng Wizard.
Tạo bằng Design sử dụng phân nhóm và Main/Sub
Hướng dẫn : Tạo bằng Design
a. Phân nhóm :
B1 : Tạo query làm nguồn cho Report chứa tất cả các field có trong Report.
B2 : Chọn Report _ New _ Design View_ Chọn Nguồn là Query vừa tạo.
Click menu View_ Chọn Sortting and Groupping
Chọn Field Mahd làm phân nhóm
Kéo các Field Mahd, Makh, tenkh, NgayLaphd, NgayGiaoNhanHang,
DienGiai vào Mahd Header
Kéo các Field Tensp, DonVitinh, Soluong, Dongia, Thanhtien vào Detail.
29. Bài Tập Thực Hành Access
Tạo Số thứ tự.
Tạo một Text box để tính tổng trị giá.
Chỉnh sửa Report theo mẫu.
b. Main/Sub :
- Có dạng Main/Sub Report :
Sub report chứa chi tiết hoá đơn (Mã HD, Tên sp, Đvt , Sốlượng, Đơn giá,
Thành tiền) groupby theo MaHD.
Mainreport chứa thông tin chung của hóa đơn (TênKH, Địa chỉ, Ngày lập
HD, Ngày giao hàng, diễn giải).
Field link giữa Main và Subreport là MãHD
- Sử dụng Query làm dữ liệu nguồn cho Main và Subreport
- Trình bày trên mỗi trang là một Hoá đơn ( phần page header và page footer
giống nhau )
- Thêm 1 số control hiển thị tiêu đề và định dạng như mẫu Report_Hoadon
30. Bài Tập Thực Hành Access
4. Tạo Báo cáo Bán hàng theo ngày như mẫu Report_banhang (trang 24.)
HD: - dùng query làm dữ liệu nguồn cho Report
- Groupby header : là ngày lập hoá đơn . Groupby footer : là tổng trị giá hoá
đơn.
- Sắp xếp theo Mã hoá đơn
- Report header : chứa tiêu đề báocáo , ngày lập báo cáo, người lập báo cáo
- Report footer (hay Report header) : chứa tổng trị giá các hoá đơn
- Page footer : chứa số trang (với định dạng “Trang SốTrang/TongsoTrang ”)
- Dùng line, format các control trong report sao cho trang report dễ xem.
- Có thể dùng Report Wizard để tạo report , sau đó sửa lại trình bày trong
Design.
31. Bài Tập Thực Hành Access
5. Sử dụng lần lượt 3 cách sau để tạo Báo cáo Bán hàng chỉ hiển thị các giá trị tổng
cộng theo nhóm _ không hiển thị chi tiết . Như mẫu Report_banhang 2 (trang 25)
- Wizard (summary)
- Design
- kết hợp cả hai
32. Bài Tập Thực Hành Access
6. Thẻ kho là hình thức lưu trữ thông tin về hàng hoá đã nhập hay đã xuất khỏi kho
hàng. Hãy tạo báo cáo in Thẻ kho như mẫu Report_thekho
HướngDẫn: - dùng Query làm dữ liệu nguồn cho báo cáo
- Sử dụng Page break hay thuộc tính ForceNewPage để in mỗi mặt hàng trên 1 trang.
- Từ ngày = Min([ngày lập HD]) ; Đến ngày = Max([ngày lập HD])
- Tồn đầu kỳ: gán trị 0
- Giá trị của cột Tồn : được cộng dồn theo công thức
Tồn = tồn đầu kỳ + số lượng nhập – số lượng xuất
(Sử dụng thuộc tính RunningSum của Textbox Control để hiển thị cột Tồn )
33. Bài Tập Thực Hành Access
7. Tạo Report theo mẫu sau :
34. Bài Tập Thực Hành Access
BÀI 6
BÀI TẬP MACRO
1. Tạo Form theo mẫu sau : Ứng dụng Macro vào trong các nút lệnh.
Yêu cầu :
o Các nút mũi tên : Duyệt các mẩu tin về đầu, tiếp, trước, cuối.
o Nút Thêm : Thêm vào một hoá đơn mới, nếu hoá đơn có rồi thì báo yêu cầu
nhập lại.
Nếu nhập Makh, Manv chưa có bên bảng Khachhang, NhanVien thì báo nhập
lại.
o Nút Xem Chi Tiết Hoá Đơn : Mở Form Hóa Đơn bán hàng đã làm ở bài tập
Form.
o Nút In mở Report Hoá Đơn bán Hàng của hóa đơn đang hiện.
o Nút Tìm : Tìm một hóa đơn bất kỳ.
o Nút Xóa : Xoá hoá đơn đang chọn, trước khi xoá hiện hộp thoại hỏi người sử
dụng có muốn xóa hay không ?. Nếu xóa thì mới xóa.
o Nút Thoát : Đóng Form
2. Tạo Form theo mẫu sau trong đó ứng dụng Macro có điều kiện sau :
35. Bài Tập Thực Hành Access
Khi thực hiện :
Click Bảng tổng hợp hóa đơn và nhấn Xem báo cáo hiện :
36. Bài Tập Thực Hành Access
Click Chi tiết từng hóa đơn :
Chọn xong nhấn nút IN Bao Cao hiện
37. Bài Tập Thực Hành Access
3. Tạo form cho phép xem Báo cáo bán hàng theo 1 trong những tiêu chuẩn lựa chọn
sau
a. xem toàn bộ
b. chọn theo Ngày lập hoá đơn ( 1 ngày, hoặc 1 khoảng thời gian)
c. chọn theo Mã hoá đơn
d. chọn theo Tên sản phẩm
Khi nhấn OK sẽ mở report Báo cáo bán hàng (xem phần Report_ mẫu
Report_banhang) theo tiêu chuẩn đã xác định trong form. Nếu User không nhập giá
trị làm tiêu chuẩn chọn, thì xuất hiện message box thông báo lỗi. Khi chuyển chọn
giữa các nút chọn trong form , có sự chuyển trạng thái enable/ able của các mục chọn.
Hướng Dẫn : có thể xem ví dụ mẫu Nwind (mẫu form Customer labels diaglog)
- Thiết kế form :sử dụng Option Group để tạo nhóm nút lựa chọn và sử dụng kết hợp
với textbox, combo box để nhập giá trị làm tiêu chuẩn lựa chọn
- Xử lý trên form :sử dụng các macro sau
OpenReport (mở report
theo điều kiện xác định
trong form, sự kiện
Onclick của nút OK)
Msgbox (mở hộp thoại
thông báo khi User không
chỉ định rõ giá trị làm tiêu
chuẩn lọc , sự kiện
Onclick của nút OK)
Setvalue (gán trị của
thuộc tính Enable của
textbox, combo box , sự
kiện AfterUpdate của Option Control )
3. Sử dụng Form Hoadon_mainSubF (ở câu 12) làm form nhập chứng từ Hoá đơn.
Yêu cầu :
- Chỉnh sửa form cho phù hợp với mục đích làm form nhập Hoá đơn (nếu cần )
- Sử dụng macro tạo các nút lệnh để duyệt xem mẩu tin , thêm mới mẩu tin, in
hoá đơn (mở report_Hoadon trong phần report) , đóng form
- Sử dụng macro xử lý tự động tình huống : user thêm mới 1 Mã KH, 1 Tên SP
chưa có trong table Khachhang và San pham thì sẽ tự động mở form tương
ứng cho nhập Khách hàng và Sản phẩm mới.
38. Bài Tập Thực Hành Access
4. Dựa vào các form, report đã thiết kế, hãy xây dựng 1 form có vai trò MainMenu mở
ra các form, report chức năng . Giả định MainMenu dùng cho chương trình Quản lý
hoá đơn_hàng hoá với các chức năng chính là :
Nhập chứng từ Hoá đơn (Nhập, xuất)
Nhập danh mục hàng, khách hàng, nhân viên
Hiển thị thông tin thống kê hàng hoá Xuất, Nhập, Tồn
In /Xem các Báo cáo thống kê tình hình bán hàng, về Hàng hoá …
(Tham khảo mẫu sau )
39. Bài Tập Thực Hành Access
BÀI TẬP 7
BÀI TẬP MODULES_MENU
1) Viết thủ tục để người dùng nhập vào hai chuỗi bất kỳ - Dùng hộp thông báo in ra
chuỗi thứ ba là ghép của hai chuỗi trên.
2) Viết thủ tục để người dùng nhập vào hai chuỗi bất kỳ - Dùng hộp thông báo in ra
chuỗi thứ ba là ghép của hai chuỗi trên vá chiều dài của hai chuỗi.
Tạo Form sau :
Bạn nhập tên, sau đó nhấn nút Text sẽ hiện chuỗi :Xin chào bạn NGUYEN MINH
HOANG”.
Nhấn nút CLEAR sẽ xóa nội dung trong 2 hộp text box.
Nhấn nút EXIT : Đóng Form.
4. Tạo các form tính toán sau :
Khi nhấn nút Mới thì Form giống dạng sau :
40. Bài Tập Thực Hành Access
Chú ý : Khi nhập số thứ hai bằng không và nhấn nút chia thì phải hiện thông báo
sau :
5. Tạo form thực hiện các công việc sau :
Chú ý : Nếu ba cạnh không hợp thành tam giác thì xuất hiện thông báo sau
6. Viết một thủ tục tham chiếu trên CSDL hiện hành, kiểm tra xem có tồn tại một Table
do người dùng chỉ định _ Thông báo kết quả ra hộp thông báo.
7. Viết một thủ tục đếm tổng số mẩu tin trong bảng HOA Don của CSDL hiện hành, in
kết quả ra cửa sổ Debug.
8. Viết một thủ tục in ra cửa sổ Debug, Manv của các mẫu tin đầu, kế, áp cuối và cuối
có trong bảng Nhanvien của CSDL Hoadon.
9. Viết một thủ tục in ra cửa sổ Debug các mẫu tin trong bảng Nhanvien của CSDL
hiện hành gồm Manv, Hoten, Ngaysinh, Phai.
10.Viết một thủ tục đếm số mẫu tin có trong bảng Nhanvien, in kết quả ra hộp thong
báo.
11.Viết thủ tục xếp thứ tự dữ liệu của bảng Nhanvien tăng dần theo ngày sinh, sau đó in
ra cửa sổ Debug các mẫu tin trong bảng gồm Manv, Hoten, Ngaysinh, Phai.
12.Viết một thủ tục tìm Manv trong bảng Nhan viên. Dùng hộp thoại để thong báo kết
quả tìm kiếm.
41. Bài Tập Thực Hành Access
13.Viết một thủ tục in ra hộp thông báo số thứ tự mẫu tin trên tổng số mẫu tin của bảng
Nhanvien.
14.Viết một thủ tục in ra cửa sổ Debug mẫu tin hiện hành gồm Manv, hoten, ngaysinh,
phai trong bảng Nhan vien, sau đó in ra tất cả các mẫu tin có trong bảng_Quay về in
lại đúng mẫu tin ban đầu.
15.Tạo Form Nhanvien có một textbox tên txtmanv, một command button có nhãn là
Tìm. Viết một Even procedure khi người dung nhập Manv vào txtmanv, nhấn nút
Tìm sẽ tìm ngay mẫu tin lien quan để hiện lên Form.
16.tạo Form Danh sách Hoa don theo ngàycó hai text box txttungay và txtdenngay,
một Command button Loc. Viết một Event procedure khi người dung nhập vào hai
textboc, click nút Loc sẽ tìm ngay mẫu tin thỏa điều kiện lọc và hiển thị kết quả ra
cửa sổ debug.
17.Viết một thủ tục tăng đơn giá các sản phẩm lên 5% trong bảng sanpham_Trong quá
trình cập nhập nếu có bị lỗi thì tất cả các thay đổi trước đó sẽ bị hủy.
18.Hãy tạo Form theo mẫu dưới đây
Form trình bày thông tin về nhân viên.
a. Khi Click vào nút First thì sẽ trình bày nội dung của mẩu tin đầu tiên trong
các Unbound textbox.
b. Khi Click vào nút Next thì sẽ hiển thị thông tin về nhân viên kế tiếp. Nếu
đang hiển thị nhân viên cuối cùng thì sẽ thông báo là đã đến cuối danh
sách, mẩu tin hiện hành vẫn là mẩu tin cuối cùbg.
c. Khi Click vào nút Previous thì sẽ hiển thị thông tin về nhân viên kế trước.
Nếu đang hiển thị nhân viên đầu tiên thì sẽ thông báo là đã đến đầu danh
sách, mẩu tin hiện hành vẫn là mẩu tin đầu tiên.
d. Khi Click vào nút Last thì sẽ trình bày nội dung mẩu tin cuối cùng.
e. Khi Click vào nút Close thì sẽ đóng Form lại.
19.Hãy tạo Form theo mẫu dưới đây : với các Textbox là các Unbound Control
42. Bài Tập Thực Hành Access
a Khi click vào nút :”TIM THEO MAKH” sẽ hiện hộp thoại yêu cầu nhập Mã
Khách Hàng để tìm kiếm trong bảng :”Khach hang”. Nếu có thì sẽ hiện nội
dung tương ứng trong các Textbox, nếu không có thì sẽ hiện thông báo là Mã
Khách Hàng không có trong danh sách.
b Khi Click vào nút “XOA KH” thì nếu chưa có mẩu tin nào hiển thị trong danh
sách thì sẽ thông báo là “Khong co mau tin de xoa “, ngược lại sẽ xóa mẩu tin
hiện hành (đang hiện trong Form) rồi xóa trắng nội dung các TextBox.
c Khi Click vào nút “THOAT” thì đóng Form lại.
20.Tạo CSDL tên NHANSU.MDB có cấu trúc các bảng như sau :
NHANVIEN(MANV Text(10), HOTEN Text(30), NGAYSINH (Date/times),
MAPHONG Text(5))
PHONG(MAPHONG Text(5), TENPHONG Text(40), DIENTHOAI Text(10))
Thiết lập quan hệ và nhập dữ liệu cho các bảng trên.
tableNhanVien
MANV HOTEN NGAYSINH MAPHONG
A01 Lê Minh Hương 21/03/80 P1
A02 Trần Lệ Khanh 14/04/79 P2
A03 Hàn trung Định 16/07/76 P1
A04 Đặng Thanh Thúy 28/12/76 P1
A05 Đinh Ngọc Hạnh 02/03/81 P3
TablePhongBan
MAPHONG TENPHONG DIENTHOAI
P1 Phòng Kinh Doanh 8564757
P2 Phòng Vật Tư 8243589
P3 Phòng Tổ Chức 8944514
21.Tạo Form tên frmNHANVIEN theo mẫu sau : với các Control là Unbound
Textbox.
43. Bài Tập Thực Hành Access
1. Khi Click vào nút TIM thì sẽ xuất hiện hộp thoại yêu cầu nhập mã nhân viên.
Nếu có thì sẽ hiển thị thông tin về nhân viên đó tương ứng trong các Unbound
textbox. Nếu không có thì sẽ thông báo là MaNV không tồn tại và xóa trắng các
Unbound TextBox.
2. Khi Click vào nút THEM thì sẽ xóa trắng các Unbound Textbox và thêm mẩu tin
mới vào bảng NHANVIEN ứng với dữ liệu trong các Unbound Textbox.
3. Khi Click vào nút XOA thì sẽ hiện hộp thoại yêu cầu xác nhận với nội dung
“ban muốn xóa?” và hai nút YES, NO. Nếu chọn YES thì sẽ xóa mẩu tin đang
hiển thị và xóa trắng các Unbound textbox.
4. Khi Click nút DONG thì sẽ đóng Form lại.
12. BÀI TẬP MENU : Bạn tự xây dựng một hệ thống Menu cho CSDL HoaDon.MDB,
Sau đó xây dựng CSDL này thành một ứng dụng.
44. Bài Tập Thực Hành Access
BÀI TẬP LÀM THÊM : CƠ SỞ DỮ LIỆU QUẢN LÝ SINH VIÊN
52. Bài Tập Thực Hành Access
1) Taïo Form söû duïng caùc ñoái töôïng Label, text, Command, Check, Sun Form, Image,
unbound Object, Bound Object Frame theo daïng sau :
53. Bài Tập Thực Hành Access
2) Taïo form söû duïng Tab Control.
a. Taïo Form Keát quaû thi cuûa lôùp theo maãu sau :
Yeâu caàu :
Khi nhaép nuùt lôùp hoïc seõ hieån thò thoâng tin veà lôùp hoïc theo maãu sau :
Khi nhaép nuùt Keát quaû chung seõ hieån thò thoâng tin veà keát quaû thi cuûa caùc sinh vieân
lôùp ñang xem theo maãu sau (Chuù yù : Do danh saùch sinh vieân thuoäc hai khoa, moãi
khoa thi caùc moân hoïc khaùc nhau neân khi choïn maõ lôùp seõ truyeàn tham soá cho query
cuûa SubForm baûng ñieåm ñeå ra baûng ñieåm töông öùng):
Höùông daãn:
Böôùc 1 :
Taïo Sub Form Frmketqua: Keát quaû hoïc taäp töøng lôùp theo nhöõng thoâng tin ôû maøn
hình 2 (löu yù : Khi taïo nguoàn döõ lieäu cho Sub Form naøy phaûi coù Malop).
Trong phaàn Form Footer taïo 1 text box ñaët teân laø SOSV vaø trong Control source
cuûa noù goõ vaøo coâng thöùc =count([MASV]).
Böôùc 2 : Taïo Form Keát quaû thi cuûa lôùp vôùi nguoàn döõ lieäu laø baûng LOPHOC.
54. Bài Tập Thực Hành Access
Taïo ñoái töôïng laø Tab Control
Taïi trang 1 (lôùp hoïc): Keùo caùc Field töø Field List xuoáng vaø trình baøy caùc ñoái töôïng
nhö maøn hình 1.
Taïi trang 2 (keát quaû chung) : Chöùa Sub Form Ketqua nhö maøn hình 2:
Link child Fields : Malop.
Link Master Fields : Malop.
Taïo 1 Textbox döôùi vò trí cuûa khung SubForm
Ñaët Caption : Toång soá sinh vieân.
Ñaët Control Source cuûa Textbox bieåu thöùc sau := [Frmketqua].[Form]![SOSV]
b. Taïo Form theo maãu sau :Sinh vieân töï laøm
55. Bài Tập Thực Hành Access
3) Truyeàn tham soá töø form vaøo Query vaø Report
Yeâu caàu: Taïo Form coù daïng sau :
a. Click choïn MASV, nhaán nuùt xem
thì seõ chaïy query hieån thò baûng
ñieåm cuûa sinh vieân vöøa choïn
b. Nhaán nuùt IN hieån thò Report
baûng ñieåm cuûa sinh vieân ñoù. Nuùt
Thoaùt laø ñoùng Form
höôùng daãn:
Böôùc 1 : Taïo Form BANGDIEMSV
goàm :Combobox : Chænh thuoäc tính
Name : Cbomasv
Row Source Type : Table/Query
Row Source :
Böôùc 2 : Taïo Query laøm nguoàn döõ lieäu cho Report luoân goàm Masv, HoTen, Malop,
Mamh, tenmh, Lanthi, Diem vaø truyeàn tham soá vaøo Query taïi coät MASV nhö sau :
Böôùc 3: Taïo report laáy nguoàn döõ lieäu laø Query treân.
4) Truyeàn tham soá giöõa caùc thaønh phaàn cuûa Form
Neáu truyeàn tham soá töø Form naøy sang Form khaùc (Hay Report).
Neáu truyeàn tham soá töø SubForm sang Main form trong cuøng 1 Form
Coâng thöùc :
56. Bài Tập Thực Hành Access
a. Yeâu caàu Taïo Form coù daïng sau :
Höôùng daãn:
Böôùc 1 : Taïo Main Form THONG TIN CHI TIET SV trong ñoù baïn haõy cheøn ñoái töôïng tab
Control vôùi hai trang maøn hình CHITIET LOP HOC vaø THONG TIN VE SINH VIEN.
Böôùc 2 : ÔÛ trang Chi Tiet Lop Hoc
Taïo Combobox choïn maõ lôùp vôùi teân laø Mlop vaø SubForm thöù nhaát coù caùc thuoäc
tính sau
Name : SUB1
Link Child field : Malop
Link Master field : Mlop
Taïo caùc Text Box hieån thò caùc thoâng tin : teân lôùp, Hoï vaø teân sinh khi Click choïn
Masv trong SubForm thöù nhaát vaø Maõ sinh vieân nhö sau :
o Teân lôùp : =[SUB1].Form![Hosv]+” “+[SUB1].Form![Tensv]
o Hoï teân Sinh vieân : = [SUB1].Form![Hosv]+ “ “ +[SUB1].Form![Tensv]
57. Bài Tập Thực Hành Access
o Maõ sinh vieân : = [SUB1].Form![Masv]
Löu yù :
Trong nguoàn döõ lieäu cuûa SubForm thöù nhaát naøy ngoaøu nhöõng noäi dung phuïc vuï cho
SubForm phaûi coù chöùa caùc Field maø baïn muoán thöïc hieän coâng thöùc nhö treân.
Taïo lieân keát giöõa SubForm thöù nhaát vaø SubForm thöù hai baèng caùch göûi giaù trò cuûa Masv
trong SubForm thöù nhaát ra mainForm ( taïo ôû mainForm 1 oâ textBox chöùa giaù trò Masv cuûa
SubForm thöù nhaát) vaø ñaët SubForm thöù hai lieân keát vôùi oâ Text Box naøy ôû main form. Caùc
böôùc tieán haønh nhö sau :
Taïi 1 oâ Textbox trong mainForm, hieän baûng Properites cuûa oâ, choïn :
o Name : Ñaët teân cho oâ (ví duï Tgian)
o Control Source :vieát coâng thöùc laáy giaù trò töø SubForm thöù nhaát theo qui taéc [Teân
oâ chöùa SubForm].Form![teân oâ laáy giaù trò] nhö sau :
o = [SUB1].Form![Masv]
o Visible : Choïn No.
Chænh thuoäc tính cuûa oâ SubForm thöù hai theo noäi dung sau ;
o Link Child Fields : teân field laøm chæ tieâu quan heä (Masv).
o Link Master Fields : teân oâ Text box vöøa taïo.(Tgian).
ÔÛ trang Thong Tin Ve Sinh Vien
Taïo caùc TextBox hieån thò caùc thoâng tin veà sinh vieân baèng caùch laáy nhöõng thoâng tin naøy
qua nguoàn döõ lieäu cuûa SubForm thöù nhaát (Taát nhieân khi taïo SubForm thöù nhaát naøy baïn
phaûi chuù yù ñöa taát caû caùc thoâng caàn laáy vaøo nguoàn döõ lieäu cuûa noù).
58. Bài Tập Thực Hành Access
b. Taïo Form theo maãu sau :
59. Bài Tập Thực Hành Access
c. Taïo Form theo maãu sau :
d. Taïo Form theo maãu sau
Taïo laïi Form daïng treân nhöng thay caùc nuùt leänh Command baèng Option group.
Taïo Form theo maãu sau :