42
Bài tp Tin qun lý MS Access 1 - 42 MC LC MC LC.................................................................................................................................................1 PHN I. THIT KCƠ SDLIU ....................................................................................................2 Bài 1 ......................................................................................................................................................2 Bài 2 ......................................................................................................................................................2 Bài 3 ......................................................................................................................................................7 Bài 4 ......................................................................................................................................................7 PHN II. BNG .......................................................................................................................................8 Bài 1 ......................................................................................................................................................8 Bài 2 ....................................................................................................................................................11 Bài 3 ....................................................................................................................................................13 Bài 4 ....................................................................................................................................................15 Bài 5 ....................................................................................................................................................15 Bài 6 ....................................................................................................................................................16 PHN III. QUN LÝ BÁN HÀNG .......................................................................................................17 I. QUERY............................................................................................................................................17 A. Select query ................................................................................................................................17 B. Totals query ................................................................................................................................19 C. CrossTab query ..........................................................................................................................20 D. Parameter query .........................................................................................................................21 E. Action query ...............................................................................................................................22 II. REPORT .........................................................................................................................................22 III. FORM ...........................................................................................................................................25 PHN IV. QUN LÝ ĐIM SINH VIÊN.............................................................................................32 I. QUERY............................................................................................................................................33 A. Select query ................................................................................................................................33 B. Totals query ................................................................................................................................35 C. CrossTab Query..........................................................................................................................36 D. Parameter query .........................................................................................................................36 E. Action query ...............................................................................................................................37 II. REPORT .........................................................................................................................................37 III. FORM ...........................................................................................................................................39

90727266 baitap-access

Embed Size (px)

Citation preview

Page 1: 90727266 baitap-access

Bài tập Tin quản lý MS Access

1 - 42

MỤC LỤC

MỤC LỤC................................................................................................................................................. 1

PHẦN I. THIẾT KẾ CƠ SỞ DỮ LIỆU .................................................................................................... 2

Bài 1 ...................................................................................................................................................... 2

Bài 2 ...................................................................................................................................................... 2

Bài 3 ...................................................................................................................................................... 7

Bài 4 ...................................................................................................................................................... 7

PHẦN II. BẢNG ....................................................................................................................................... 8

Bài 1 ...................................................................................................................................................... 8

Bài 2 .................................................................................................................................................... 11

Bài 3 .................................................................................................................................................... 13

Bài 4 .................................................................................................................................................... 15

Bài 5 .................................................................................................................................................... 15

Bài 6 .................................................................................................................................................... 16

PHẦN III. QUẢN LÝ BÁN HÀNG ....................................................................................................... 17

I. QUERY ............................................................................................................................................ 17

A. Select query ................................................................................................................................ 17

B. Totals query ................................................................................................................................ 19

C. CrossTab query .......................................................................................................................... 20

D. Parameter query ......................................................................................................................... 21

E. Action query ............................................................................................................................... 22

II. REPORT ......................................................................................................................................... 22

III. FORM ........................................................................................................................................... 25

PHẦN IV. QUẢN LÝ ĐIỂM SINH VIÊN............................................................................................. 32

I. QUERY ............................................................................................................................................ 33

A. Select query ................................................................................................................................ 33

B. Totals query ................................................................................................................................ 35

C. CrossTab Query .......................................................................................................................... 36

D. Parameter query ......................................................................................................................... 36

E. Action query ............................................................................................................................... 37

II. REPORT ......................................................................................................................................... 37

III. FORM ........................................................................................................................................... 39

Page 2: 90727266 baitap-access

Bài tập Tin quản lý MS Access

2 - 42

PHẦN I. THI ẾT KẾ CƠ SỞ DỮ LIỆU

Bài 1

1. Hãy cho biết các mối quan hệ dưới đây thuộc loại quan hệ nào

Mỗi quan hệ Quan hệ

1-1 1-n n-n

Vợ với chồng x

Sinh viên và bảng kết quả thi x

Con cái và cha mẹ x

Cầu thủ và đội bóng x

Sinh viên và khóa học x

2. Với mỗi khẳng định dưới đây, hãy chỉ ra các thực thể và mối quan hệ giữa các thực thể

a. Một phòng ban tuyển dụng nhiều nhân viên, một nhân viên được tuyển bởi nhiều nhất một phòng ban.

b. Một nhà quản lý quản lý nhiều nhất một phòng ban, một phòng ban được quản lý bởi nhiều nhất một nhà quản lý.

c. Một tác giả có thể viết nhiều quyển sách, một quyển sách có thể được viết bởi nhiều tác giả.

d. Một đội bóng bao gồm nhiều cầu thủ, mỗi cầu thủ chơi trong duy nhất một đội bóng.

e. Một giảng viên dạy nhiều nhất một khóa học, một khóa học được giảng bởi chính xác một giảng viên.

f. Một chuyến bay kết nối 2 sân bay, mỗi sân bay được sử dụng cho nhiều chuyến bay.

g. Một đơn mua hàng có thể có nhiều sản phẩm, một sản phẩm có thể xuất hiện trong nhiều đơn mua hàng.

h. Mỗi khách hàng có thể yêu cầu nhiều đơn đặt hàng, một đơn đặt hàng chỉ thuộc về duy nhất một khách hàng.

i. Hàng năm, trường cao đẳng XYZ tổ chức nhiều lớp học. Mỗi lớp học được đảm nhiệm bởi nhiều giáo viên và một giáo viên có thể dạy nhiều lớp. Mỗi một lớp chỉ được bố trí vào một phòng. Do các lớp có thể diễn ra vào các giờ khác nhau hoặc các buổi khác nhau, nên có thể có nhiều lớp học được bố trí vào cùng một phòng.

Bài 2

Cho các bài toán quản lý dưới đây, lần lượt thực hiện các yêu cầu sau:

a. Xác định các thực thể của bài toán

b. Xác định thuộc tính, khóa của mỗi thực thể

c. Xác định quan hệ giữa các thực thể

d. Xây dựng mô hình liên hệ thực thể và mô hình quan hệ dữ liệu

Page 3: 90727266 baitap-access

Bài tập Tin quản lý MS Access

3 - 42

1. Cửa hàng tạp phẩm HOA XUÂN cần xây dựng một ứng dụng để QUẢN LÝ VIỆC BÁN HÀNG. Hàng hóa trong cửa hàng được phân theo loại như: Đồ uống, Thực phẩm đông lạnh, Hóa mỹ phẩm, Đồ hộp,... Một mặt hàng chỉ thuộc về một ngành hàng và một ngành hàng có thể có nhiều hàng hóa.

Sau khi khách hàng lựa chọn hàng, cửa hàng viết hóa đơn mua hàng cho khách hàng theo mẫu như sau :

Cửa hàng HOA XUÂN Số HĐ: HD001

HÓA ĐƠN MUA HÀNG

Ngày mua: 1/1/2003 Tên khách hàng: Nguyễn Văn A

Quận/Huyện: Q Ba Đình Tỉnh/Thành Phố: Hà Nội

STT Tên hàng SL ĐV tính Giá bán Thành tiền

1 Mỳ Hảo Hảo 5 Thùng 30000 150000

2 Trà đào IceTea 10 Hộp 10000 100000

Tổng cộng 250000

Người lập HĐ

Hàng ngày, cửa hàng cần tính được doanh thu bán hàng trong ngày đó. Cuối tháng, cửa hàng tính doanh thu bán hàng trong tháng; tổng hàng số tiền mua hàng theo từng khách để có chính sách khuyến mại, tặng quà; đồng thời tính doanh thu bán hàng của từng nhân viên và tính lương theo doanh thu cho các nhân viên đó.

2. Trường đại học XYZ cần quản lý thông tin về sinh viên và kết quả học tập của các sinh viên đó. Thông tin về sinh viên gồm: Mã SV, Tên SV, Ngày sinh, Giới tính, Địa chỉ. Một sinh viên chỉ thuộc một lớp, mỗi lớp có nhiều sinh viên. Một chuyên ngành có nhiều lớp, một lớp chỉ thuộc một chuyên ngành duy nhất, ví dụ: chuyên ngành QA có lớp QA21A1, QA22B….

Khi có điểm thi các môn, người ta tiến hành nhập kết quả đó vào CSDL. Một sinh viên có thể học nhiều môn học, một môn học có thể có nhiều sinh viên tham gia. Tuy nhiên, mỗi sinh viên trong từng môn học khác nhau sẽ có điểm khác nhau. Ví dụ: Môn TQL Access sinh viên A01 có điểm 7.5, sinh viên A02 có điểm 8…, sinh viên A03 có thể học môn TQL Access, TQL Fox…

Thông tin về môn học gồm: Mã môn, Tên môn, Số ĐV trình. Trong mã môn học, ký tự đầu tiên là chỉ môn học đó thuộc Đại cương hay Chuyên ngành.

Cuối kỳ, nhà trường cần biết Số sinh viên trượt/ đỗ trong từng môn học; kết quả học tập của từng sinh viên (số đơn vị trình đã tích lũy ở Đại cương, Chuyên ngành); kết quả học tập của các sinh viên và sắp xếp theo thứ tự số đơn vị trình đã tích lũy từ cao xuống thấp;…

Nhà trường cũng cần quản lý học phí mà SV đã đóng trong mỗi kỳ, biết rằng Học phí= Số ĐVT * Đơn vị phí. Đơn vị phí thay đổi theo kỳ, ví dụ kỳ 1 năm học 2005 – 2006 đơn vị phí là 90000, học kỳ 1 năm học 2006 – 2007 là 95000.

Sau khi thiết kế mô hình quan hệ dữ liệu, trường đại học có thay đổi yêu cầu như sau: hàng tháng trường cần phải thống kê sinh viên theo Quận/huyện và Tỉnh/Thành phố. Cần phải sửa lại mô hình quan hệ dữ liệu như thế nào để dáp ứng yêu cầu này.

Page 4: 90727266 baitap-access

Bài tập Tin quản lý MS Access

4 - 42

3. Một công ty cần xây dựng một ứng dụng để QUẢN LÝ VIỆC XUẤT NHẬP KHO. Hàng hóa(Hanghoa) trong cửa hàng được phân theo loại như: Đồ uống, Thực phẩm đông lạnh, Hóa mỹ phẩm, Đồ hộp,... Một mặt hàng chỉ thuộc về một ngành hàng(Loaihang) và một ngành hàng có thể có nhiều hàng hóa.

Khi nhà cung cấp chuyển hàng đến Kho hàng, nhân viên quản lý kho nhập hàng vào kho và lập phiếu nhập kho theo mẫu sau:

PHIẾU NHẬP KHO Ngày nhập Số phiếu………… Tên nhân viên nhập hàng Tên nhà cung cấp Địa chỉ nhà cung cấp

STT Tên hàng ĐVT SL Đơn giá VAT Thành tiền 1 Mỳ Hảo Hảo Thùng 3 24 00 5% 756000

2 Trà đào IceTea Thùng 1 240000 5% 252000

Tổng cộng 1008000

Thủ kho Kế toán trưởng Người giao

Khi xuất hàng, nhân viên quản lý kho lập Phiếu xuất kho theo mẫu sau :

PHIẾU XUẤT KHO Số phiếu xuất Ngày xuất Tên nhân viên

STT Tên hàng ĐVT SL 1 Xà phòng OMO Thùng 10

2 Trà đào IceTea Thùng 10

3 Cốc Acropal Pháp (bộ 6c) Bộ 50

Thủ kho Người giao Người nhận

Định kỳ, Nhân viên kho tiến hành kiểm kê hàng hoá tồn trong kho :

Hàng tồn kho = Tổng số lượng nhập - Tổng số lượng xuất

Công ty tổng hợp số tiền nhập hàng theo từng nhà cung cấp; tổng số lượng xuất theo từng mặt hàng để biết được mặt hàng nào xuất nhiều nhất.

4. Công ty Phần mềm SSS chuyên Cung cấp các giải pháp tin học cho các Công ty đối tác. Hiện nay Công ty đang có nhu cầu Quản lý, theo dõi thông tin các dự án mà công ty đang thực hiện. Đồng thời cần theo dõi nhân sự(nhanvien) tham gia vào các dự án đó. Các thông tin cần quản lý như sau:

o Đối tác: Mã, Tên đối tác, Tên người liên hệ, Chức danh, Địa chỉ, Điện thoại,…

o Dự án: Mã DA, Tên dự án, Thời gian bắt đầu, Thời gian kết thúc, Tổng kinh phí dự kiến, Tiền tạm ứng,… Đối tác có thể tạm ứng cho Công ty khi có yêu cầu, cần ghi lại thời gian tạm ứng và số tiền đã tạm ứng.

o Nhân viên: Mã NV, Tên NV, Ngày vào làm, Địa chỉ, Hệ số lương,…

o Một nhân viên có thể tham gia vào nhiều dự án, mỗi dự án có thể có nhiều nhân viên cùng tham gia. Tuy nhiên, mỗi nhân viên tham gia vào một dự án với chức vụ, vị trí nhất định.

Page 5: 90727266 baitap-access

Bài tập Tin quản lý MS Access

5 - 42

o Hàng tháng công ty cần thống kê danh sách các dự án đang thực hiện, hay dự án sẽ kết thúc trong tháng đó; Tính lương cho các nhân viên.

5. Trường đại học SSS có nhu cầu theo dõi và quản lý Quỹ tiền mặt. Việc rút tiền hay nhập tiền vào quỹ đều được ghi nhận thông qua Phiếu chi hoặc Phiếu thu.

o Lý do chi được phân loại thành: mua TSCĐ, lương NV, trông thi, chấm thi, lương GV mời, quỹ phúc lợi của CBCNV, mua văn phòng phẩm,…

o Lý do thu được phân loại thành: học phí, thi lại, bán sách, dịch vụ lấy thông tin,…

o Một Phiếu thu hoặc Phiếu chi chỉ ghi nhận khoản thu hay khoản chi thuộc về một loại thu/ chi duy nhất. Tuy nhiên, một loại thu/ chi có thể có nhiều phiếu thu/ chi khác nhau.

Mẫu Phiếu thu như sau:

Quyển số Số

PHIẾU THU Ngày……tháng……năm……

Nợ……… Có……… Họ tên người nộp tiền Địa chỉ Lý do nộp Số tiền (viết bằng chữ) Thủ trưởng Kế toán Người lập Người nộp Thủ quỹ

Mẫu Phiếu chi như sau:

Quyển số Số

PHIẾU CHI Ngày……tháng……năm……

Nợ……… Có………

Họ tên người nhận tiền Địa chỉ Lý do chi Số tiền (viết bằng chữ) Thủ trưởng Kế toán Người lập Người nộp Thủ quỹ

Cuối kỳ, trường cần biết tổng số tiền đã thu, chi theo từng hạng mục; hạch toán kết quả (lỗ/ lãi). Ngoài ra trường cần có báo cáo thống kê chi tiết các phiếu thu, phiếu chi theo từng tháng hoặc giai đoạn bất kỳ.

6. Khách sạn Melia có nhu cầu quản lý việc đặt phòng và sử dụng phòng, sử dụng dịch vụ và in hóa đơn thanh toán. Các phòng trong khách sạn được phân thành các loại: phòng đôi, phòng đơn,… Một phòng chỉ thuộc về một loại xác định. Khách có thể đặt phòng trước thông qua phiếu đặt phòng với mẫu như sau :

Page 6: 90727266 baitap-access

Bài tập Tin quản lý MS Access

6 - 42

PHIẾU ĐẶT PHÒNG Họ tên trưởng đoàn Ngày lập phiếu Địa chỉ Ngày đặt Số điện thoại Ngày đến Số lượng người Thời gian lưu lại

Loại phòng Số lượng ĐV tính Đơn giá

...

Khi khách đến ở khách sạn thì sẽ có một phiếu sử dụng phòng; Phiếu sử dụng có các thông tin như: Số phiếu, Ngày đến, Ngày đi, Họ tên trưởng đoàn, Địa chỉ, Số lượng người, Danh sách phòng sử dụng.

Ngoài ra khách sạn còn cung cấp các dịch vụ như giặt là, ăn uống,…; dịch vụ được tính theo phòng và có mẫu phiếu sử dụng như sau

PHIẾU SỬ DỤNG DỊCH VỤ Số phiếu Ngày lập phiếu Số phòng Tên dịch vụ sử dụng Số lượng Đơn giá Thành tiền

Người lập phiếu

Khi khách rời khỏi khách sạn hệ thống phải tự động in ra Hóa đơn thanh toán. Hàng tháng, khách sạn tính doanh thu theo từng dịch vụ; doanh thu từ việc thuê phòng; thống kê số lần sử dụng phòng theo từng loại phòng để có kế hoạch nâng cấp...

7. Trung tâm tin học GOLDKEY muốn quản lý các khóa học và học viên.

o Loại học viên có thể là học sinh, sinh viên hoặc cán bộ… Một loại học viên có thể có nhiều học viên, một học viên chỉ thuộc về một loại học viên.

o Một học viên có thể đăng ký nhiều khóa học, một khóa học có thể có nhiều học viên.

o Học phí phụ thuộc vào khóa học và loại học viên. Ví dụ khóa học Tin văn phòng đối với học sinh thì học phí là 100, đối với sinh viên là 120 còn đối với cán bộ là 200...

o Một môn có thể được tổ chức trong nhiều khóa học, một khóa học chỉ có nội dung thuộc về một môn.

o Một khóa học có nhiều giáo viên tham gia giảng dạy, một giáo viên có thể dạy nhiều khóa học nhưng với mỗi khóa học một giáo viên chỉ dạy vào một thứ nhất định trong tuần.

o Loại phòng có thể là phòng máy tính, phòng thí nghiệm, phòng lý thuyết... Một loại phòng có thể có nhiều phòng học, một phòng học chỉ thuộc về một loại phòng.

Một khóa học có thể được tổ chức tại nhiều phòng khác nhau, và một phòng có thể có nhiều khóa học tại đó. Một khóa học sẽ được học tại phòng đó vào một ngày cụ thể trong tuần. Ví dụ, khoá học Tin văn phòng cơ bản học tại phòng 113 vào thứ 3, tại phòng 338 vào thứ 6,...

Page 7: 90727266 baitap-access

Bài tập Tin quản lý MS Access

7 - 42

Bài 3

Trung tâm tin học ABC muốn quản lý các khoá học và việc phân bố phòng học. Cần lưu lại các thông tin sau:

o LOẠI_PHÒNG (Mã loại phòng, Mô tả loại phòng)

o PHÒNG_HỌC (Số hiệu phòng, Vị trí)

o KHÓA_HỌC (Mã KH, Tên KH, Ngày bắt đầu, Ngày kết thúc, Ca học)

Loại phòng có thể là phòng máy tính, phòng thí nghiệm, phòng lý thuyết... Một loại phòng có thể có nhiều phòng học, một phòng học chỉ thuộc về một loại phòng.

Một khóa học có thể được tổ chức tại nhiều phòng khác nhau, và một phòng có thể có nhiều khóa học tại đó. Một khóa học sẽ được học tại phòng đó vào một ngày cụ thể trong tuần. Ví dụ, khoá học Tin văn phòng cơ bản học tại phòng 113 vào thứ 3, tại phòng 338 vào thứ 6,...

1. Vẽ mô hình thực thể liên hệ mô tả các giả thiết trên (vẫn còn các hình thoi để thể hiện các quan hệ).

2. Chuyển mô hình trên thành mô hình dữ liệu quan hệ (đã xử lý các hình thoi).

Bài 4

Công ty Bắc Hà cần xây dựng cơ sở dữ liệu để quản lý việc cho thuê xe. Thông tin cần quản lý như sau:

o XE(Mã xe, Tên xe, Hãng SX, Biển số); ví dụ: X001, Innova, Toyota, 29H1-7546

o LOAIXE(Mã loại, Tên loại); ví dụ: L01, 4 chỗ; L02, 7 chỗ; …

o HDTHUE(Số HĐ, Ngày ký, Ngày đi, Số ngày); ví dụ: HD0001, 01/09/06, 30/09/06, 4 ngày; HD0010, 15/09/06, 25/09/06, 1 ngày; …

Mỗi loại xe bao gồm nhiều xe khác nhau. Một xe chỉ thuộc vào 1 loại xe nào đó.

Mỗi hợp đồng có thể thuê nhiều loại xe khác nhau, tuy nhiên với mỗi hợp đồng một loại xe sẽ có số lượng thuê khác nhau. Ví dụ: hợp đồng HD0001 thuê L01 là 2 chiếc, thuê L02 là 4 chiếc; hợp đồng HD0002 thuê L02 là 5 chiếc, …

1. Vẽ mô hình thực thể liên hệ mô tả các giả thiết trên (vẫn còn các hình thoi để thể hiện các quan hệ).

2. Chuyển mô hình trên thành mô hình dữ liệu quan hệ (đã xử lý các hình thoi).

Page 8: 90727266 baitap-access

Bài tập Tin quản lý MS Access

8 - 42

PHẦN II. BẢNG

Bài 1

1. Khởi động MS Access, tạo cơ sở dữ liệu có tên là QLDiem

2. Tạo các bảng lần lượt theo cấu trúc sau

a. Bảng Chuyên ngành: chứa thông tin về các ngành học trong trường, tên bảng

tChuyenNganh

Tên trường Kiểu Độ rộng Require MaCN Text 2 Khoá chính Yes

TenCN Text 30 Yes

b. Bảng Lớp: chứa thông tin về các lớp, tên bảng tLop

Tên trường Kiểu Độ rộng Require MaLop Text 6 Khoá chính Yes

MaCN Text 2 Khoá liên kết Yes

TenLop Text 20

c. Bảng Sinh Viên: chứa thông tin về sinh viên, tên bảng tSinhVien

Tên trường Kiểu Độ rộng Require MaSV Text 6 Khoá chính Yes

MaLop text 6 Khoá liên kết Yes

TenSV text 40 Yes

GioiTinh text 3 Yes

Quan text 30 Yes

Tinh/Thanhpho text 30 Yes

Trong đó:

� GioiTinh nhận giá trị : Nam, Nữ (dùng cho trường GioiTinh Lookup Wizard)

� Tinh/Thanhpho giá trị mặc định (Default value) là “Hà Nội”

d. Bảng Điểm: chứa thông tin về điểm của sinh viên, tên bảng tDiem

Tên trường Kiểu Độ rộng Require MaSV text 6 Khoá chính Yes

MaMon text 6 Khoá chính Yes

SoBuoiNghi number Integer Yes

DiemThuong number Double Yes

DiemThi number Double Yes

Trong đó:

Page 9: 90727266 baitap-access

Bài tập Tin quản lý MS Access

9 - 42

� DiemThuong có Validation Rule <= 3; nếu nhập sai, sẽ có thông báo (Validation Text) là “ Điểm thưởng <= 3”. Định dạng Standard, Decimal places 1.

� DiemThi có Validation Rule <= 10; nếu nhập sai, sẽ có thông báo (Validation Text) là “ Điểm thi <=10”. Định dạng Standard, Decimal places 1.

� MaSV, MaMon là khoá liên kết.

� MaSV, MaMon có thuộc tính Index phải là Yes (Duplicates OK).

e. Bảng Môn : chứa thông tin về các môn học, tên bảng tMon

Tên trường Kiểu Độ rộng Require MaMon Text 6 Khoá chính Yes

TenMon Text 60 Yes

SoDVHT number Integer Yes

Trong đó: SoDVHT có Validation Rule >=1 and <= 10; nếu nhập sai, sẽ có thông báo (Validation Text) là “Số ĐVHT >=1 và <=10” . Default value 3 (giá trị mặc định là 3).

3. Tạo lookup trên trường khoá liên kết (khoá ngoại), trỏ đến các trường cần thiết trong bảng có khoá chính là trường khoá liên kết ở trên.

• Tạo lookup cho trường MaCN trong bảng tLop; trường MaCN nhìn sang bảng tChuyenNganh và xem trên 2 trường sau MaCN, TenCN; Cột nối (Bound) là cột 1 (MaCN).

• Tạo lookup cho trường Mamon trong bảng tDiem; trường Mamon nhìn sang bảng tMon (Row Source) và xem trên 2 trường Tenmon, Mamon; Cột nối (Bound) là cột 2 (Mamon).

• Tạo lookup cho trường MaSV trong bảng tDiem; trường MaSV nhìn sang bảng tSinhvien (Row Source) và xem trên 2 trường MaSV, TenSV; Cột nối (Bound) là cột 1 (MaSV).

4. Tạo quan hệ giữa các bảng (Relationship)

tChuyenNganh – tLop : một � nhiều; trường liên kết MaCN

tLop – tSinhVien : một � nhiều; trường liên kết MaLop

tSinhVien – tDiem : một � nhiều; trường liên kết MaSV

tMon – tDiem : một � nhiều; trường liên kết MaMon

5. Nhập dữ liệu vào các bảng trên

• Chú ý :

� Tất cả các bảng dữ liệu bên một (khóa chính) phải được nhập trước các bảng bên nhiều (có khoá liên kết là khoá chính ở các bảng đó).

� Trường khoá chính phải có độ dài cố định và nhập đầy đủ vào trường đó.

� Trường dữ liệu mà có thuộc tính Lookup có thể được nhập bằng tay hoặc lấy giá trị từ danh sách có sẵn.

� Nếu giá trị nhập vào một trường mà có độ dài vượt quá độ rộng tối đa, phần vượt quá sẽ không được lưu trữ.

� Nếu trường có thuộc tính Validation Rule, hãy nhập giá trị thoả mãn yêu cầu đó.

Page 10: 90727266 baitap-access

Bài tập Tin quản lý MS Access

10 - 42

� Phân biệt các giá trị của thuộc tính Index : No, Yes (No Duplicates), Yes (Duplicates

OK).

• Nhập các bản ghi vào bảng như sau:

Chú ý: Một số bản ghi không nhập được, hãy tìm nguyên nhân và sửa lại cho đúng.

a. Bảng tLop:

MaLop MaCN TenLop QE16A QE Quản lý kinh doanh lớp 16A

QA17A1 QA Kế toán lớp 17A1

QA17B1 QB Ngân hàng lớp 17B1

b. Bảng tChuyenNganh:

MaCN TenLop QE Quản lý kinh doanh

QA Kế toán

c. Bảng tSinhVien:

MaSV MaLop TenSV GioiTinh DiaChi A06450 QB16 Lê Mai Nữ Hà Nội

A07285 QA17A1 Trần Phương Nam Hà Tây

A07285 QE16A Trần Phương Nam Hà Tây

A06873 QE16A Nữ Hoà Bình

d. Bảng tMôn:

MaMon TenMon SoDVHT

MIM21 Tin quản lý 1 3

GSG10 Kinh tế chính trị 11

MBA32 Quản lý dự án 3

e. Bảng tDiem:

MaSV MaMon SoBuoiNghi DiemThuong DiemThi A06873 MIM21 0 0.0 7.5

A06873 MBA32 1 0.5 8.3

A07285 MBA32 4 1.0 7.3

A07285 MIM21 0 0.0 10.5

6. Sử dụng chức năng Sort để sắp xếp dữ liệu và Filter để lọc dữ liệu trong các bảng trên.

7. Sử dụng chức năng thêm, xóa các bản ghi trong bảng.

Page 11: 90727266 baitap-access

Bài tập Tin quản lý MS Access

11 - 42

Bài 2

1. Khởi động MS Access, tạo cơ sở dữ liệu có tên là QLBanhang

2. Tạo các bảng lần lượt theo cấu trúc sau

a. Bảng Khách hàng: chứa thông tin về khách hàng, tên bảng tKhachhang

Tên trường Kiểu Độ rộng Require MaKH text 6 Khoá chính Yes

TenKH text 30 Yes

Quan text 30

Thanhpho text 30

Trong đó:

� Thanhpho có giá trị mặc định (Default value) là “Hà Nội”.

b. Bảng Loại hàng: chứa thông tin về các loại hàng hóa, tên bảng tLoaihang

Tên trường Kiểu Độ rộng Require MaLoai Text 4 Khoá chính Yes

Tenloai Text 25 Yes

c. Bảng Hàng hoá: chứa thông tin về các sản phẩm có bán, tên bảng tHanghoa

Tên trường Kiểu Độ rộng Require MaHH text 7 Khoá chính Yes

Maloai text 4 Yes

TenHH text 30 Yes

DVtinh text 10

Dongia number Long Integer

Trong đó: Đơn vị tính có thể nhận giá trị: chai, lọ, hộp, cái, chiếc, quyển,...

Đơn giá nhận giá trị (Validation Rule) là số dương; Nếu nhập sai, hệ thống đưa ra thông báo “ Đơn giá phải nhập số dương (>0)”

d. Bảng Hoá đơn: chứa thông tin trong các hoá đơn, tên bảng tHoadon

Tên trường Kiểu Độ rộng Require SoHD text 7 Khoá chính Yes

MaKH text 6 Yes

MaNV text 6 Yes

Ngaymua Date/Time ShortDate Yes

Trong đó: Ngày mua có Validation Rule <= Now () (hàm lấy ngày, giờ hiện tại của hệ thống); nếu nhập sai, sẽ có thông báo (Validation Text) là “Ngày mua không được nhập giá trị quá ngày hiện tại”

e. Bảng Nhân viên: chứa thông tin về các nhân viên trong cửa hàng, tên bảng tNhanvien

Page 12: 90727266 baitap-access

Bài tập Tin quản lý MS Access

12 - 42

Tên trường Kiểu Độ rộng Require MaNV Text 4 Khoá chính Yes

TenNV Text 25 Yes

Diachi Text 25

NgayBD Date/Time ShortDate

Trong đó: Ngày bắt đầu có Validation Rule <= Date() (hàm lấy ngày hiện tại của hệ thống); nếu nhập sai, sẽ có thông báo (Validation Text) là “Ngày bắt đầu không được nhập

giá trị quá ngày hiện tại”

f. Bảng Chi tiết Hoá đơn: chứa thông tin về các mặt hàng có thuộc trong hoá đơn đó, tên bảng tCTHoadon

Tên trường Kiểu Độ rộng Require SoHD Text 7 Khoá chính Yes

MaHH Text 7 Khoá chính Yes

Soluong Number Integer Yes

Trong đó : Số lượng phải được nhập giá trị lớn hơn 0 (Validation Rule); Nếu nhập sai, hệ thống đưa ra dòng thông báo (Validation Text) “Số lượng phải là một số dương (>0)”

Số hóa đơn, Mã hàng hóa có thuộc tính Index phải là Yes (Duplicates OK).

3. Tạo lookup trên trường khoá liên kết

• Tạo lookup cho trường Maloai trong bảng tHanghoa; trường Maloai nhìn sang bảng tLoaihang và xem trên 2 trường Tenloai, Maloai; Cột nối (Bound) là cột 2 (Maloai).

• Tạo lookup cho trường MaHH trong bảng tCTHoadon; trường MaHH nhìn sang bảng tHanghoa và xem trên 3 trường sau MaHH, TenHH, Dongia; Cột nối (Bound) là cột 1 (MaHH).

• Tạo lookup cho trường SoHD trong bảng tCTHoadon; trường SoHD nhìn sang bảng tHoadon và xem trên trường SoHD.

4. Tạo quan hệ giữa các bảng (Relationship)

tHanghoa – tCTHoadon: một � nhiều; trường liên kết MaHH

tHoadon – tCTHoadon: một � nhiều; trường liên kết SoHD

tNhanvien – tHoadon: một � nhiều; trường liên kết MaNV

tKhachhang – tHoadon: một � nhiều; trường liên kết MaKH

tLoaihang – tHanghoa: một � nhiều; trường liên kết Maloai

5. Nhập dữ liệu vào các bảng theo bộ dữ liệu sau:

tKhachhang

(“KL0001”, “ ”, “Hà Nội”, “ ”)

(“KL0002”, “Nguyễn Văn Tuấn”, “Hà Nội”, “0912090909”)

tMaloai

(“L001”, “Nước ngọt”)

Page 13: 90727266 baitap-access

Bài tập Tin quản lý MS Access

13 - 42

(“L001”, “Nước hoa quả”)

tHanghoa thêm thuộc tính cho trường Đơn giá với Default Value 1000 và Require Yes

(“HH00001”, “L001”, “Pepsy”, “chai”, )

(“HH00002”, “L003”, “Bia Hà Nội”, “lon”, 9500)

(“HH00003”, “L002”, “Nước quả kiwi – Trường Phát”, “lọ”, -32000)

(“HH00004”, “L002”, “Nước táo ép VFresh”, “hộp”, 37000)

tNhanvien

(“NV01”, “Lò V ăn Tèn”, “Sơn La”, 1/1/2010)

(“NV02”, “Nguyễn Trần Thị Hoàng Hường”, “HCM”, 10/1/2011)

tHoadon

(“HD00001”, “KL0001”, “NV01”, 8/22/2011)

(“HD00002”, “KL0001”, “NV01”, 9/22/2011)

(“HD00003”, “KL0002”, “NV01”, 9/27/2011)

tCTHoadon

(“HD00001”, “HH0001”, 2)

(“HD00001”, “HH00002”, 0)

(“HD00001”, “HH00004”, 10)

(“HD00002”, “HH00001”, )

(“HD00003”, “HH00004”, 10)

6. Sử dụng chức năng Sort để sắp xếp dữ liệu và Filter để lọc dữ liệu trong các bảng trên.

7. Sử dụng chức năng thêm, xóa các bản ghi trong bảng.

Bài 3

1. Tạo cơ sở dữ liệu có tên là QLMuonTraTL (Mượn/Trả tài liệu)

2. Tạo các bảng lần lượt theo cấu trúc sau:

a. Bảng Chủ đề : chứa thông tin về các chủ đề của tài liệu, tên bảng tChuDe

Tên trường Kiểu Độ rộng Require MaCD Text 6 Khoá chính Yes

TenCD Text 30 Yes

GhiChu Text 60

b. Bảng Loại tài li ệu : chứa thông tin về các loại tài liệu, tên bảng tLoaiTL

Tên trường Kiểu Độ rộng Require MaLoai Text 6 Khoá chính Yes

Tenloai Text 30 Yes

GhiChu Text 60

Page 14: 90727266 baitap-access

Bài tập Tin quản lý MS Access

14 - 42

c. Bảng Tài liệu: chứa thông tin về tài liệu cho mượn, tên bảng tTaiLieu

Tên trường Kiểu Độ rộng Require MaTL Text 6 Khoá chính Yes

TenTL Text 30 Yes

MaLoai Text 6 Yes

MaCD Text 6 Yes

GhiChu Text 60

d. Bảng Độc giả : chứa thông tin về các độc giả mượn tài liệu, tên bảng tDocGia

Tên trường Kiểu Độ rộng Require MaDG Text 6 Khoá chính Yes

Hoten Text 30 Yes

Gioitinh Yes/No

Ngaysinh Date/Time ShortDate

Trong đó : Ngày sinh có Validation Rule <= Now() (hàm lấy ngày giờ hiện tại của hệ thống); nếu nhập sai, sẽ có thông báo (Validation Text) là “Ngày sinh không được nhập giá

trị quá ngày hiện tại”

e. Bảng MuonTra : chứa thông tin nhật ký mượn trả tài liệu, tên bảng tMuonTra

Tên trường Kiểu Độ rộng Require Ngaymuon Date/Time ShortDate Khoá chính Yes

MaDG Text 6 Khóa chính Yes

MaTL Text 6 Khóa chính Yes

Ngaytra Date/Time ShortDate Yes

Tinhtrang Yes/No

Trong đó : Ngày mượn có Validation Rule <= Now ; nếu nhập sai, sẽ có thông báo (Validation Text) là “Ngày mượn không được nhập giá trị quá ngày hiện tại”

Ngày trả có Validation Rule >= Now (); nếu nhập sai, sẽ có thông báo (Validation Text) là “Ngày trả không được nhập giá trị nhỏ hơn ngày hiện tại”

Tình trạng cho biết tài liệu đó đã được hoàn trả hay chưa (Yes :Đã trả; No:Chưa trả)

3. Tạo quan hệ giữa các bảng (Relationship)

tTaiLieu – tChuDe : một � nhiều; trường liên kết MaCD

tTaiLieu – tLoaiTL : một � nhiều; trường liên kết MaLoai

tMuonTra – tDocGia : một � nhiều; trường liên kết MaDG

tMuonTra – tTaiLieu : một � nhiều; trường liên kết MaTL

Tạo lookup trên trường khoá liên kết (khoá ngoại)

4. Nhập dữ liệu vào các bảng trên (tự nghĩ ra các bộ dữ liệu cho phù hợp)

5. Sử dụng chức năng Sort để sắp xếp dữ liệu và Filter để lọc dữ liệu trong các bảng trên.

Page 15: 90727266 baitap-access

Bài tập Tin quản lý MS Access

15 - 42

6. Sử dụng chức năng thêm, xóa các bản ghi trong bảng.

Bài 4

Cho mô hình quan hệ dữ liệu của cơ sở dữ liệu QLDiem như sau:

Sử dụng công cụ ACCESS, tự cài đặt cơ sở dữ liệu QLDiem với mô hình quan hệ dữ liệu như trên. Sau đó, nhập dữ liệu vào các bảng cho phù hợp.

Bài 5

Cho các bảng dữ liệu sau :

Hãng sản xuất Hàng hóa Phân phối

MãHSX TênHSX MãHH TênHH Màu sắc MãHH MãHSX Số lượng

SX1 Smith HH1 Gas Pháp Đỏ HH1 SX1 100 SX2 Jones HH2 Gas Petro Đỏ HH1 SX2 150 SX3 Blake HH3 Gas Petro Hồng HH2 SX1 20

HH4 Gas PP Tím HH3 SX3 230 HH4 SX3 200

a. Dựa vào bảng dữ liệu trên bạn hãy vẽ lại mô hình dữ liệu quan hệ (xác định khóa chính, khóa ngoại và mối liên hệ giữa các bảng).

b. Khi nhập dữ liệu vào 3 bảng trên, bạn sẽ nhập theo thứ tự nào?

c. Bảng Phân phối ở trên cho ta biết mối quan hệ gì giữa 2 bảng Hãng sản xuất và Hàng hóa (1-1, 1-n hay n-n)? Hãy chỉ ra các bản ghi thể hiện mối quan hệ đó.

d. Thêm các dòng dữ liệu sau vào bảng, bản ghi nào thêm được?

Hãng sản xuất (SX9, Harry)

(SX2, Mile)

Hàng hóa (HH5, Gas Petro, Đỏ)

Phân phối (HH1, SX3, 40)

HỌC SINH

#Mã số HS

@ Mã lớp

Họ tên

Ngày sinh

Giới tính

Địa chỉ

Ghi chú

LỚP

# Mã lớp Tên lớp

@ Mã khối

MÔN HỌC

# Mã môn học Tên môn học

Hệ số môn

KHỐI

# Mã khối Tên khối

ĐIỂM

Mã năm học

Mã học kỳ

@#Mã số HS

@#Mã môn học Điểm

1

n

1

n

n

1

1

n

Page 16: 90727266 baitap-access

Bài tập Tin quản lý MS Access

16 - 42

(HH2, SX1, 56)

(HH9, SX2, 4)

Bài 6

Cho CSDL QLhoctap gồm các bảng: SV(MaSV, TenSV, Ngaysinh); MH(MaMH, Tenmon, Sotrinh) và KQ(MaSV, MaMH, Diem). Bạn hãy nhập dữ liệu cho bảng SV và MH để các dòng dữ liệu sau có thể nhập được trong bảng KQ

A01 M01 5.5

A01 M02 7.0

A02 M01 9.0

Page 17: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

17 - 42

PHẦN III. QU ẢN LÝ BÁN HÀNG Chú ý:

� 1 lượt mua hàng = 1 hóa đơn = 1 dòng trong bảng Hoadon.

� 1 lượt mua hàng theo từng mặt hàng = 1 dòng trong bảng CTHoadon.

� Mặt hàng hiện có = các mặt hàng có trong bảng Hanghoa.

� Mặt hàng đã bán = các mặt hàng có trong bảng CTHoadon.

I. QUERY

A. Select query

1. Hiển thị thông tin chi tiết của tất cả các hóa đơn; dữ liệu được xếp theo số lượng mua tăng dần.

2. Hiển thị thông tin về hàng hoá có trong CSDL theo từng loại hàng.

3. Xem TT về các HĐ, thêm trường Thành tiền = Số lượng * Đơn giá; định dạng hiển thị trường Thành tiền: Standard.

4. Cho biết tên của những nhân viên đã lập hoá đơn từ ngày 7/1/2003 đến 15/1/2003.

5. In ra số HĐ, ngày mua của các hóa đơn đã mua các mặt hàng có đơn vị tính là “chai”. Chú ý: cần loại bỏ những bản ghi trùng lặp.

6. Hiển thị thông tin của những mặt hàng thuộc loại “V ở” hoặc “Bút máy”.

7. Hiển thị thông tin của những mặt hàng không thuộc 2 loại trên (câu 6).

8. Hiển thị Số HĐ và Ngày mua, Tên và Địa chỉ KH của những hoá đơn có mua mặt hàng HH005. Kết quả được sắp xếp theo Số HĐ tăng dần.

9. Hiển thị Tên và Địa chỉ những nhân viên bán hàng từ ngày 1/1/2003 đến 15/1/2003. Lưu ý: cần loại bỏ các bản ghi trùng lặp.

Page 18: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

18 - 42

10. Hiển thị Thông tin về các mặt hàng không thuộc loại “Rượu” và “Bia” mà có Đơn giá từ 2000 trở lên.

11. Hiển thị thông tin về các khách hàng ở Phố Nguyễn Du hoặc ở Tây Hồ.

12. Hiển thị Tên và Địa chỉ của khách hàng mua mặt hàng có mã HH001 trong tháng 1.

13. Xem thông tin về 10 lượt mua hàng theo từng mặt hàng mà có số lượng bán nhiều nhất. Chú ý: sử dụng thuộc tính Top values của Query.

14. Xem Số HD, Ngày mua của 5 hóa đơn có mua mặt hàng “Bia chai Heineken” với số lượng nhiều nhất.

15. Chỉ in ra thông tin về các mặt hàng được mua trong tháng 1.

16. Hiển thị Thông tin về các khách lẻ.

17. Hiển thị các khách hàng có số thứ tự từ 1 đến 5 (ký tự cuối cùng trong mã KH thể hiện số thứ tự của KH đó).

18. Xem thông tin mua hàng của các khách lẻ có mã từ 6 đến 9, biết rằng 2 ký tự đầu trong mã KH thể hiện loại KH : KL là Khách lẻ, CH là Cửa hàng.

19. Hiển thị tất cả thông tin các hoá đơn do KH có mã 001 hoặc 006 đã mua.

20. Xem thông tin về các Nhân viên đã bán hàng trong Tháng 3.

21. Hiển thị thông tin về HĐ và chi tiết trong HĐ bán hàng, thêm cột tháng (tháng được lấy ra từ Ngày bán) và dữ liệu được sắp xếp theo tháng.

22. Xem Khách hàng có mã CH001 có mua hàng trong tháng 4 không ?

23. Cho biết thông tin của Khách hàng đã mua mặt hàng Bia chai 333 trong quý 1 hoặc quý 2.

24. Xem có những loại hàng nào được bán từ tháng 2 đến tháng 5.

25. Xem tất cả thông tin về những lần mua mặt hàng “Vở 48t HH” trong tháng 1 hoặc tháng 4.

26. Xem thông tin Khách hàng có mua loại hàng “Bút máy” trong quý 1.

27. Xem thông tin về các khách hàng, trong đó thêm 1 trường Loại KH ghi khách hàng đó thuộc loại nào : KL → Khách lẻ, CH → Cửa hàng

28. Hiển thị thông tin về các mặt hàng mua trong tháng 3 và tháng 4, với giá có điều chỉnh tăng 10% so với giá cũ. Thêm cột Giá mới và Thành tiền.

29. Hiển thị thông tin về các mặt hàng thêm cột Giá mới, Thành tiền. Biết rằng; nếu mua hàng trong tháng 3 và tháng 4 thì giá điều chỉnh tăng 10% so với giá cũ.

30. In thông tin về các lượt mua của khách hàng là CH, với giá bán là 85% Đơn giá, sau đó tính Thành tiền trên từng lượt mua.

31. Xem thông tin về các lượt mua hàng trong Quý 1, thêm cột Giảm giá. Biết rằng Giảm giá được tính như sau : Nếu mua mặt hàng thuộc loại Rượu hoặc Bia với số lượng từ 10 trở lên thì mặt hàng đó được giảm giá 4%; còn nếu mua các mặt hàng thuộc loại khác với số lượng từ 10 trở lên thì giảm giá 2%; các trường hợp khác thì không được giảm giá. Thêm cột Tổng tiền và tính theo công thức: Thành tiền - Giảm giá.

Page 19: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

19 - 42

32. Hiển thị thông tin về các Nhân viên được thưởng, biết rằng chế độ thưởng được tính như sau: Nếu bán hàng vào tháng 3 hoặc tháng 6, được thưởng bằng 2% trên từng mặt hàng được bán ra.

33. Hiển thị thông tin về các nhân viên không được thưởng theo chế độ trên.

B. Totals query

34. Đếm số lần mua hàng của mỗi khách hàng.

35. Đếm số lần mua hàng của mỗi khách hàng trong quý 1.

36. Đếm số lần mua hàng của khách hàng có tên Nam trong tháng 1.

37. Tính tổng số lượng hàng bán được theo từng mặt hàng.

38. Tính số lượng bán ra trung bình trên 1 lượt mua hàng theo từng mặt hàng.

39. Tính số tiền bán được trên từng hoá đơn.

40. Tính tổng số tiền bán hàng trong từng tháng.

41. Tính số lượng hàng bán được theo từng quý.

42. Tính tổng số tiền bán hàng theo từng mặt hàng được bán trong quý 2.

43. Tính tổng số tiền bán được của mặt hàng có mã HH002 trong tháng 2 hoặc tháng 5.

44. Hãy cho biết có bao nhiêu nhân viên đã bán hàng trong quý 2.

45. Tính tổng số lần mua hàng của mỗi khách hàng theo từng tháng.

46. Đếm số lần mua hàng trung bình trên 1 tháng của mỗi khách hàng (lấy nguồn là câu 45).

47. Hãy cho biết số mặt hàng hiện có bán trong cửa hàng và giá bán trung bình t rên 1 mặ t hàng là bao nhiêu.

48. Tính tổng số mặt hàng của từng loại hàng và giá bán trung bình trên 1 mặt hàng của từng loại hàng.

49. Tính số lượng hàng đã bán ra trên từng mặt hàng của mỗi loại hàng.

50. Với loại hàng Bia và Rượu, hãy cho biết tổng số lượng hàng của từng loại hàng và giá bán trung bình trên 1 mặt hàng của từng loại hàng.

51. Tính tổng số lượng hàng theo từng mặt hàng, số lượt mua hàng của từng mặt hàng, số lượng mua trung bình trên từng lượt mua hàng theo từng mặt hàng.

52. Tính tổng số lượng hàng theo từng mặt hàng có tổng số lượng mua từ 15 trở lên. (***)

53. Tính tổng số lượng hàng theo từng mặt hàng có số lượng mua từ 15 trở lên. (***)

54. Tính tổng số lượng hàng, số lượt mua hàng của từng mặt hàng thuộc loại Rượu, Bia, Mỳ gói.

55. Tính số lượt bán trung bình trên mỗi nhân viên trong cửa hàng (***)

56. Hiển thị tên nhân viên và tổng số tiền mà nhân viên đó được thưởng trên mỗi mặt hàng, biết rằng thưởng 10% trên giá trị mua hàng của mặt hàng có số lượng từ 10 trở lên.

57. Hiển thị tên nhân viên và tổng số tiền mà NV đó được thưởng trên từng hoá đơn theo chế độ trên.

Page 20: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

20 - 42

58. Hiển thị Mã nhân viên, Tên nhân viên và tổng số tiền mà nhân viên đó được thưởng (lấy nguồn là 56 hoặc câu 57).

59. Hãy cho biết Số hóa đơn, Tổng số tiền của mỗi hóa đơn, Tổng số tiền giảm giá của mỗi hóa đơn, Tổng số tiền thực trả của mỗi hóa đơn. Biết nếu tổng giá trị mua của một hóa đơn từ 100.000 trở lên thì được giảm 10% tổng số tiền của hóa đơn đó.

60. Hãy cho biết Số hóa đơn, Tổng số tiền của mỗi hóa đơn, Tổng số tiền giảm giá của mỗi hóa đơn, Tổng số tiền thực trả của mỗi hóa đơn. Biết nếu số tiền mua hàng của mỗi mặt hàng từ 100.000 trở lên thì được giảm 10% tổng số tiền của mặt hàng đó.

61. Tính số tiền giảm giá và số tiền phải trả trên từng hoá đơn với tỷ lệ giảm giá 10% nếu mua hàng từ 150.000 trở lên và 5% nếu mua hàng từ 80.000 trở lên.

62. Chỉ hiển thị những hoá đơn được giảm giá (lấy nguồn là câu 61).

63. Tính tổng số tiền giảm giá hàng mua theo từng Khách hàng (lấy nguồn là câu 61).

64. Hiển thị SL hàng mà khách nhận thực tế trên từng mặt hàng của HĐ; biết rằng cửa hàng thực hiện chính sách khuyến mại : nếu mặt hàng nào mua SL từ 10 trở lên thì tặng thêm 2, nếu mua SL từ 5 trở lên thì tặng thêm 1. Và số hàng được nhận bằng số hàng mua cộng với số hàng được tặng.

65. Hiển thị tổng SL hàng mà khách nhận thực tế trên mỗi mặt hàng; biết rằng cửa hàng thực hiện chính sách khuyến mại: nếu tổng SL đã mua của mỗi mặt hàng từ 10 trở lên thì tặng thêm 2, nếu tổng SL đã mua của mỗi mặt hàng từ 5 trở lên thì tặng thêm 1. Số hàng được nhận bằng số hàng mua cộng với số hàng được tặng.

66. Hiển thị số lượng hàng đã tặng theo mặt hàng trong từng loại hàng (lấy nguồn là câu 64).

67. Tính tổng số lượng hàng đã bán ra, số hàng đã tặng và tổng số lượng hàng thực tế đã đưa cho khách hàng theo từng mặt hàng (lấy nguồn là câu 64).

68. Tính tổng số hàng tặng của các mặt hàng thuộc loại Bút máy, Vở (lấy nguồn là câu 64).

C. CrossTab query

69. Tạo query tính tổng số lượng hàng bán được theo từng loại hàng, mặt hàng và theo tháng, với Column Heading là tên từng tháng, ví dụ Tháng 1, Tháng 2,…

70. Tạo query tính số lượng mua trung bình của từng mặt hàng theo từng quý, với Tên quý làm Column Heading.

71. Hiển thị Số lần mua các mặt hàng thuộc loại Rượu, Bia của từng khách hàng theo từng tháng (Column Heading).

72. Hiển thị Tổng số tiền bán được của các mặt hàng thuộc loại Vở, Bút máy, số tiền bán các mặt hàng này theo từng tháng (Column Heading).

73. Hiển thị Tổng số tiền bán được của các mặt hàng thuộc loại Vở, Bút máy, số tiền bán các mặt hàng này trong mỗi tháng 1 – 3 (Column Heading).

74. Tạo query hiển thị tổng số mua theo từng mặt hàng và số lượng mua của từng khách hàng theo từng mặt hàng, với Mã KH làm Column Heading.

75. Hiển thị tổng số tiền mua hàng của các Khách lẻ theo từng quý (Column Heading).

Page 21: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

21 - 42

76. Tính tổng số tiền thưởng cho NV theo từng mặt hàng và theo từng tháng (Column Heading). Biết rằng NV được thưởng 10% trên tổng giá trị của mặt hàng mua với số lượng từ 5 trở lên.

77. Hiển thị số tiền thưởng lớn nhất cho NV theo từng mặt hàng và theo từng tháng (Column Heading).

78. Tạo truy vấn tính số lượng mua TB trên từng loại hàng, theo từng tháng, với tiêu đề cột có thứ tự là Vở, Bút máy, Phở gói, Mỳ gói, Rượu, Bia, Nước ngọt, Dầu ăn.

79. Hiển thị Doanh thu theo loại KH (Khách lẻ, Cửa hàng) trong mỗi tháng của quý 1.

80. Tính số tiền bán hàng được theo từng mặt hàng và theo từng tháng của từng loại KH là Cửa hàng và Khách lẻ (Column Heading).

81. Hiển thị số tiền mua hàng ít nhất (tổng số tiền mua trên 1 Hoá đơn) trong từng tháng (Column Heading) theo từng kiểu KH.

82. Hiển thị giá trị TB của tổng thành tiền của những HĐ có mua mặt hàng thuộc loại Vở, Bút máy theo từng tháng (Column Heading).

83. Hiển thị giá trị của tổng thành tiền lớn nhất của HĐ có mua mặt hàng thuộc loại Rượu, Bia theo từng tháng (Column Heading) từ tháng 4 đến tháng 6.

D. Parameter query

84. Tạo Parameter query hiển thị tên và địa chỉ, tổng số tiền khách hàng đã mua hàng trên mỗi hoá đơn, với mã KH tuỳ ý.

85. Tạo Parameter query tính tổng số tiền của mỗi hoá đơn trong 1 giai đoạn tuỳ ý.

86. Tạo Parameter query tính tổng số tiền bán hàng trong 1 giai đoạn tuỳ ý.

87. Tạo Parameter query tính tổng số hàng bán được theo từng mặt hàng trong 1 giai đoạn bất kỳ.

88. Hiển thị thông tin về khách hàng, số hóa đơn, ngày bán và tổng tiền có mã khách hàng được nhập vào từ bàn phím.

89. Hiển thị thông tin về Khách hàng, số lần mua hàng, số tiền mua lớn nhất và tổng số tiền khách hàng đó đã mua (lấy nguồn là câu 72).

90. Hiển thị thông tin về KH, số lần mua hàng, số tiền mua lớn nhất và tổng số tiền mua hàng của khách hàng mua trong một tháng bất kỳ được nhập vào từ bàn phím (dựa vào câu 72).

91. Hiển thị Số lần mua các mặt hàng thuộc loại hàng có mã bất kỳ theo từng tháng (Column Heading).

92. Hiển thị tổng số tiền mua hàng của một quý bất kỳ theo từng loại khách hàng (quý làm Column Heading).

93. Cho biết giá trị của tổng thành tiền có mua mặt hàng thuộc loại Rượu, Bia trong một giai đoạn tháng tùy ý (tháng làm Column Heading).

94. Bộ phận kinh doanh đang có nhu cầu tính doanh số bán của một mặt hàng nào đó trong một giai đoạn cho trước. Bạn sẽ làm gì để đáp ứng yêu cầu này?

95. Để kích thích việc mua một số mặt hàng hiện tiêu thụ chậm, Công ty đang có chiến lược giảm giá một số mặt hàng bán bán chậm. Theo ý bạn, bạn sẽ làm gì để có thể giúp Công ty có được danh sách những mặt hàng bán chậm này?

Page 22: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

22 - 42

E. Action query

96. Cập nhật lại giá trị trường Đơn giá tăng lên 15% so với giá cũ của các mặt hàng là Mỳ gói hoặc Phở gói

97. Đối với những mặt hàng có đơn vị là “lon” hoặc “chai”, công ty có quyết định giảm đơn giá của chúng xuống 5% so với giá cũ

98. Những mặt hàng nào có đơn vị là “lon” thì cập nhật lại với đơn vị tính mới là “hộp”

99. Xóa các mặt hàng có đơn vị tính là hộp hoặc thùng

100. Xóa thông tin của các khách hàng có mã là “KL003”

101. Xóa thông tin của các hóa đơn phát sinh trong tháng 2

102. Xóa thông tin các hóa đơn do nhân viên có tên là “Hoa” lập trong tháng 3

103. Chèn thêm vào bảng Hàng hóa dữ liệu từ bàng TempHanghoa được cho như sau

104. Chèn thêm vào bảng Nhân viên thông tin của các nhân viên mới từ bảng TempNhanvien

như sau:

II. REPORT

105. Tạo câu truy vấn có tên Q105 gồm các thông tin: SoHD, Ngayban, TenKH, TenNV, TenHang, DVT, Dongia, Soluong, Tien: Soluong*dongia của hóa đơn HD015.

• Tạo báo cáo dựa trên câu truy vấn Q105 theo mẫu sau:

Page 23: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

23 - 42

• Sửa lại báo cáo để khi chạy báo cáo sẽ yêu cầu người dùng nhập số hóa đơn cần xem � sẽ đưa ra thông tin hóa đơn đã nhập trong báo cáo.

106. Tạo báo cáo cho biết số lượng hàng bán của mỗi mặt hàng trong hóa đơn theo mẫu:

SIÊU THỊ HÀ NỘI

BÁO CÁO BÁN HÀNG Số HD Mã hàng Tên hàng Đơn giá SL Thành tiền HD001 HH001 Mỳ ăn liền Hảo Hảo 1,100 10 11,000

HD001 HH004 Phở ăn liền Vifon 1,800 2 3,600

HD002 HH009 Bia chai 333 6,500 5 32,500

HD002 HH011 Rượu Lúa mới 8,900 2 17,800

… … … … … …

Tổng số tiền 64,900

Người lập báo cáo

• Thêm gộp nhóm cho báo cáo trên để báo cáo có dạng sau:

SIÊU THỊ HÀ NỘI

BÁO CÁO BÁN HÀNG Số HD Mã hàng Tên hàng Đơn

giá Số lượng

Thành tiền

HD001

HH001 Mỳ ăn liền Hảo Hảo 1,100 10 11,000

HH004 Phở ăn liền Vifon 1,800 2 3,600

Tổng số tiền của HD001 14,600 Số mặt hàng đã mua 2

HD002

HH009 Bia chai 333 6,500 5 32,500

HH011 Rượu Lúa mới 8,900 2 17,800

Tổng số tiền của HD002 49,300 Số mặt hàng đã mua 2

Tổng số tiền 64,900

Người lập báo cáo

Page 24: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

24 - 42

107. Tạo báo cáo số lượng hàng bán của từng mặt hàng thuộc loại hàng có mã bất kỳ.

SIÊU THỊ HÀ NỘI THỐNG KÊ SỐ LƯỢNG HÀNG BÁN

Mã loại: L0001 - Tên loại : Vở

Mã hàng Tên hàng ĐVT Giá SL HH002 Vở 48t HH quyển 1,500 37

HH006 Vở 96t HH quyển 3,400 25

HH007 Vở 96t Hải Tiến quyển 2,800 45

Tổng cộng 107 Người lập báo cáo

108. Tạo báo cáo theo mẫu trong tài liệu: tổng hợp tiền bán hàng của mỗi hoá đơn trong từng tháng.

SIÊU THỊ HÀ NỘI

BÁO CÁO DOANH THU BÁN HÀNG

Tháng Số HĐ Tiền

1

HD001 14,600

HD002 20,700

Tổng 34,300 2

HD015 345,000

HD016 45,000

Tổng 390,000

Tổng cộng 424,300

Người lập báo cáo

109. Tạo báo cáo thống kê chi tiết số tiền, số lượng bán của các mặt hàng trong tháng bất kỳ, hoặc trong giai đoạn thời gian bất kỳ theo mẫu dưới

SIÊU THỊ HÀ NỘI BÁO CÁO THỐNG KÊ BÁN HÀNG

Tháng 1 Mã hàng Tên hàng ĐVT Giá Số HĐ SL Tiền HH001 Mỳ ăn liền HH Gói 1,100 HD001 5 5,500 HD002 7 7,700

Tổng 12 13,200 HH002 Vở 48t HH quyển 1,500 HD002 2 3,000 HD003 10 15,000

Tổng 12 18,000 Tổng cộng 31,200

Người lập báo cáo

110. Lập báo cáo cho biết trong một tháng cho trước thì một khách hàng bất kỳ đã mua hết bao nhiêu tiền. Cần biết số tiền trong mỗi lần mà khách hàng đó đã mua.

Page 25: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

25 - 42

111. Lập báo cáo thống kê số lượng hàng đã bán và doanh thu trong từng tháng của từng mặt hàng.

112. Tạo báo cáo thống kê Tổng tiền bán hàng, tổng tiền thưởng của từng nhân viên, nhân viên bán những mặt hàng không thuộc loại Rượu hoặc Bia mà mua số lượng từ 10 trở lên được thưởng 10% tổng tiền bán. Báo cáo cũng tính được Số tiền của Doanh thu thực của công ty (DT thực = Tổng tiền bán – Tổng tiền thưởng)

113. Tạo báo cáo tỷ lệ doanh thu theo ngày như mẫu:

114. Hiện tại công ty đang phải chịu áp lực cạnh tranh với các Công ty khác. Để có thể đưa ra

được chiến lược phù hợp, Ban lãnh đạo cần có thông tin về giá cả, số lượng bán của các sản phẩm trong mỗi tháng. Bạn hãy đưa ra mẫu thiết kế cần thiết để đáp ứng yêu cầu của Ban lãnh đạo.

115. Ban lãnh đạo công ty đang cần biết tần suất đến siêu thị mua hàng của từng khách hàng trong một giai đoạn cho trước. Bạn sẽ dùng Report hay Query để đáp ứng yêu cầu đó của Ban lãnh đạo. Theo bạn dùng cách nào sẽ tiện lợi, xem số liệu dễ dàng hơn?

III. FORM

116. Sử dụng Wizard tạo form Thông tin khách hàng theo mẫu:

Yêu cầu:

• Thay đổi nội dung Label ở Form Header thành “Form xem thông tin khách hàng”.

Page 26: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

26 - 42

• Việt hóa nội dung các label, ví dụ MaKH → Mã khách hàng; Thay đổi thuộc tính Border Style các label thành Transparent.

• Thiết lập thuộc tính không hiển thị nút chọn bản ghi (Record selector).

• Xem, chỉnh sửa thông tin khách hàng (Chú ý: không được sửa MaKH).

• Sử dụng các nút duyệt bản ghi (Navigation button) để di chuyển giữa các bản ghi.

• Thông qua Form thêm các khách hàng sau:

Mã khách hàng Tên khách hàng Địa chỉ

CH010 Hoàng Văn Minh 100, Nguyễn Du

CH012 Trần Thị Hiền 32, Hoàng Quốc Việt

KL011 Phạm Hà Phương 12, Cầu Giấy

• Thay đổi giá trị thuộc tính Default View của Form: Continuous Form, Datasheet. Xem hiển thị Form (Form View) sau khi thay đổi thuộc tính này.

117. Tạo form Loại hàng - Hàng hóa theo mẫu sau:

Yêu cầu:

• Dùng Wizard tạo Main_form hiển thị thông tin loại hàng (gồm Maloai, Tenloai) o Thay đổi nội dung Label của form “Thông tin Loại hàng – Hàng hóa”. o Thiết lập thuộc tính không hiển thị nút chọn bản ghi (Record selector).

o Việt hóa label của các trường, ví dụ: Maloai → Mã loại; Thay đổi giá trị thuộc tính Border Style; Thay đổi Font: Font name, Font size.

• Chèn thêm Subform để hiển thị thông tin các mặt hàng tương ứng với loại hàng hiện tại trên Main_form. o Bỏ nút Navigation button, Record selector.

• Thông qua form trên, hãy thêm loại hàng mới và các hàng hóa tương ứng loại đó (với thông tin chi tiết trên form minh họa).

118. Tạo form Khách hàng - Hóa đơn theo mẫu sau:

Page 27: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

27 - 42

Yêu cầu:

• Tạo dữ liệu chuẩn bị cho form o Tạo query KH_Hoadon để hiển thị Mã KH, Tên KH, Địa chỉ, Số HĐ, Ngày bán và

Tổng số tiền mua của từng hóa đơn. o Tạo report TTmua_KH với dữ liệu nguồn là query vừa tạo. Đinh dạng mẫu báo cáo

như sau:

• Dùng Wizard tạo Main_form hiển thị thông tin khách hàng (gồm MaKH, TenKH, Diachi).

Lưu ý: có thể sử dụng form Thông tin khách hàng làm Main_form. o Thay đổi nội dung label của form “Form xem thông tin mua của khách hàng”. o Thiết lập thuộc tính không hiển thị nút chọn bản ghi (Record selector). o Việt hóa label của các trường theo mẫu, thay đổi giá trị thuộc tính Border Style. o Thay đổi giá trị thuộc tính Alow Additions: No.

• Chèn thêm Subform (dữ liệu nguồn từ query KH_Hoadon: chỉ hiển thị Mã KH, Số HĐ, Ngày bán và Tổng tiền mua) hiển thị thông tin về hóa đơn tương ứng với khách hàng hiện tại trên Main_form. o Không hiển thị nút Navigation button, Record selector. o Xóa label và textbox MaKH. o Định dạng hiển thị (Format) trường Ngày bán: dd-mm-yy; trường Số tiền: Standard. o Thay đổi thuộc tính Recordset Type thành Snapshot.

• Tạo nút (Button) có tên Xem báo cáo vào Form Footer, khi chọn vào nút này thì mở

Page 28: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

28 - 42

report TTmua_KH đã tạo ở trên.

• Sửa query KH_Hoadon, để khi chọn nút Xem báo cáo trên form thì chỉ hiển thị thông tin mua hàng tương ứng với khách hàng hiện tại trên form. Ví dụ, form đang hiển thị thông

tin khách hàng KL002 → báo cáo hiển thị chỉ thông tin mua hàng của khách hàng này.

119. Tạo form Hóa đơn bán hàng theo mẫu sau:

Yêu cầu:

• Tạo dữ liệu chuẩn bị cho form: Tạo query HoadonCT để hiển thị các trường có liệt kê trong Subform trên. Trong đó, trường Thành tiền = Số lượng * Đơn giá.

• Dùng Wizard tạo Main_form hiển thị thông tin chi tiết hóa đơn (gồm SoHD, Ngayban,

MaKH, TenKH, Diachi, MaNV, TenNV). Lưu ý: có thể chọn các trường từ nhiều bảng khác nhau khi chọn nguồn dữ liệu của form. o Không hiển thị nút Record selector. o Sửa label trên Form Header có nội dung “Form Hóa đơn bán hàng”. o Thiết lập thuộc tính font cho Label và Textbox: Font name Arial; Font Size 11; Font

weight Bold; Font Color Black. Bỏ đường viền (Border Style). Top Margin 0.03”. o Định dạng hiển thị textbox Ngaylap có dạng dd-mm-yy.

• Chèn thêm Subform (dữ liệu nguồn từ query HoadonCT) hiển thị thông tin về các mặt hàng đã mua tương ứng với hóa đơn hiện tại trên Main_form. o Không hiển thị nút Navigation button, Record selector. o Chuyển (Change to) textbox Mahang thành Combobox (theo mẫu trên). Thiết lập

thuộc tính Control Source (tham chiếu trường Mahang và Tenhang ở bảng Hanghoa); List Row 4.

o Định dạng hiển thị (Format) trường Thành tiền: Standard; Decimal Place 0. o Thay đổi font chữ cho Label và Textbox giống Main_form.

• Thay đổi vị trí các đối tượng trên form theo mẫu.

• Thông qua form, thêm hóa đơn mua hàng mới với thông tin chi tiết trong form minh họa.

120. Tạo form Lọc hàng hóa sao cho khi chọn một mặt hàng từ danh sách thì hiển thị các lượt mua mặt hàng đó. Form có mẫu sau:

Page 29: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

29 - 42

Yêu cầu:

• Dùng Wizard tạo Main_form hiển thị Mahang. o Sửa label trên Form Header có nội dung “Doanh thu theo mặt hàng”. o Không hiển thị nút Record selector, Navigation Button. o Sửa label Mahang thành “Chọn mặt hàng cần xem”. o Chuyển (Change to) textbox Mahang thành Combobox (theo mẫu trên). Thiết lập

thuộc tính Control Source (tham chiếu trường Mahang, Tenhang và Dongia ở bảng Hanghoa); Column Count 3; Column Widths với độ rộng cột lần lượt là 0.6",1.6" và 0.6"; List Row 6; Width 3; .

o Thiết lập thuộc tính font cho Label và Textbox: Font name Arial; Font Size 11; Font weight Bold; Font Color Black. Bỏ đường viền (Border Style). Top Margin 0.03”.

• Tạo query DTtheoSP gồm thông tin về hàng hóa và các lượt mua hàng đó. Thêm trường Tiền = Số lượng * Đơn giá.

• Chèn thêm Subform (dữ liệu nguồn từ query DTtheoSP - gồm các cột có trên form mẫu) để hiển thị thông tin tương ứng với mặt hàng đã chọn trên Main_form. o Không hiển thị nút Navigation button, Record selector. o Thiết lập RecordSet Type: Snapshot. o Việt hóa các label trên Subform. o Định dạng hiển thị trường Tiền: Format Standard; Decimal Place 0.

• Tạo nút (Button) có tên In báo cáo vào Form Footer, khi chọn vào nút này thì mở report Doanh thu theo sản phẩm (đượt tạo ra với dữ liệu trong query DTtheoSP). Lưu ý, báo cáo chỉ hiển thị doanh thu của mặt hàng đã chọn trên form. Mẫu báo cáo như sau:

Page 30: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

30 - 42

• Sử dụng chức năng Form Design để tạo form Menu_QLBH theo mẫu sau:

Yêu cầu:

• Chèn Label trên Form Header, với nội dung “Siêu thị Hapro” và “Menu chương trình”.

• Sử dụng Rectangle để phân chia các phần trên form.

• Chèn các nút (Button) theo mẫu để khi chọn nút mở form ứng với nút đó, ví dụ: người dùng bấm nút Loại hàng thì mở form Loại hàng – Hàng hóa (theo hình minh họa trên).

• Chèn nút Thoát vào Form Footer để kết thúc ứng dụng (Quit Application).

121. Tạo form (kiểu Pivot table) DTthangLH_HH :

• Tạo query dữ liệu nguồn cho form gồm (Tháng, Mã loại, Tên loại, Mã hàng, Tên hàng, Số lượng, Đơn giá và Thành tiền).

• Chọn query, từ More forms chọn PivotTable.

• Kéo thả các trường vào form theo mẫu.

Page 31: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý bán hàng

31 - 42

• Định dạng Font cho dữ liệu: Arial , 11, Bold.

• Chọn các nút Filter bên cạnh tên trường để giới hạn hiển thị.

Gợi ý: Với PivotChart, làm tương tự PivotTable.

• Chọn nút Legend trên Ribon Design để hiển thị ghi chú.

• Chọn nút Change Chart Type để thay đổi kiểu biểu đồ.

Page 32: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

32 - 42

PHẦN IV. QUẢN LÝ ĐIỂM SINH VIÊN Ta có cơ sở dữ liệu quản lý học tập như sau:

1. Bảng Chuyên ngành: Lưu thông tin về chuyên ngành đang mở trong trường, ví dụ:

MaCN TenCN

QA Kế toán

QB Tài chính - Ngân hàng

QE Quản lý kinh doanh

2. Bảng Lớp: Lưu thông tin về các lớp trong trường, ví dụ:

MaLop TenLop MaCN

QA17b5 Kế toán lớp 17b5 QA

QA17b6 Kế toán lớp 17b6 QA

QA17b7 Kế toán lớp 17b7 QA

QB17a Tài chính ngân hàng lớp 17a QB

3. Bảng Môn: chứa thông tin về các môn học, ví dụ:

MaMon TenMon SoDVHT

GPG10 Giáo dục thể chất 5

MAC11 Kế toán sản xuất 1 4

MAC10 Kế toán doanh nghiệp 4

Mã môn: gồm 5 ký tự,

a. Ký từ đầu cho biết môn đó thuộc chuyên ngành gì: G → Đại cương, M → Quản lý, E →

Tiếng Anh, I → Toán Tin ...

Page 33: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

33 - 42

b. 2 ký tự 3 và 4 cho biết nội dung của môn học đó: NI → Tin học, NM → Toán, AC → Kế

toán ...

c. 2 ký tự cuối cùng cho biết thứ tự của môn học đó

Ví dụ: có mã môn MAC10 → đây là môn chuyên ngành khoa quản lý có liên quan đến kế toán, thứ tự môn là 10

4. Bảng Học kỳ: thông tin về các kỳ đã mở (bao gồm cả tiền đơn vị phí cho kỳ đó), ví dụ:

MaKy DonViPhi

20405 43000

20506 45000

30405 45000

Mã kỳ: gồm 5 ký tự, ví dụ: 20405 nghĩa là học kỳ 2 của năm học 2004 – 2005

5. Bảng Sinh viên: lưu thông tin của các sinh viên trong trường, ví dụ:

MaSV TenSV NgaySinh GioiTinh Quan/Huyen Thanhpho MaLop A06443 Hồ Quốc Việt 10/25/1984 Nam TP Vinh Tỉnh Nghệ An QA16a9 A06453 Nguyễn Thuỳ Linh 1/12/1985 Nữ Q Hai Bà Trưng TP Hà Nội AP16a A06456 Hà Như Quỳnh 3/11/1984 Nữ Q Đống Đa TP Hà Nội QA16a9

6. Bảng Điểm: cho biết điểm của từng sinh viên cho các môn trong từng học kỳ (mỗi môn học chỉ mỗi sinh viên chỉ có 1 điểm duy nhất)

MaSV MaMon MaKy SoBuoiNghi DiemThuong DiemThi A06073 GHG10 10405 0 0.00 6.00 A06073 GHG20 10405 2 0.30 8.00 A06073 GHG40 10506 0 0.00 5.00

7. Phân biệt

o ĐiểmTB: Trung bình điểm thi tính cả các môn chưa qua

o ĐiểmTB tích kuỹ: Trung bình điểm thi chỉ tính các môn có điểm thi >=4.6

I. QUERY

A. Select query

1. Hiển thị thông tin chi tiết về điểm của sinh viên, dữ liệu được xếp theo MaSV tăng dần.

2. Hiển thị thông tin về tất cả các lớp có trong CSDL theo từng chuyên ngành.

3. Xem thông tin về các môn học đã mở trong kỳ 1 năm học 0506 , thêm trường Tiền1môn = SoDVHT*DonViPhi., định dạng hiển thị trường Tiền1môn là Standard.

4. Cho biết thông tin của những sinh viên có Điểm thi môn Tin quản lý 1 >=5.

5. Cho biết tên của những sinh viên có Điểm thi môn Tin quản lý 1 >=5 và <=7.

Page 34: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

34 - 42

6. Đưa ra MãSV của các sinh viên chuyên ngành Kế toán và số buổi nghỉ >=3 của các sinh viên đó đã nghỉ trong học kỳ 1 năm học 0405. Chú ý: Cần loại bỏ những bản ghi trùng lặp.

7. Hiển thị thông tin của các lớp (Mã lớp, tên lớp) thuộc chuyên ngành “Kế toán” hoặc “Tài chính - ngân hàng”.

8. Hiển thị thông tin của những lớp không thuộc 2 chuyên ngành trên (câu 7).

9. Cho biết kết quả học tập của các sinh viên đã học môn EBA40. Kết quả được sắp xếp theo MãSV tăng dần.

10. Hiển thị MãSV và Tên của những Sinh viên đã học trong kỳ 1-0506. Chú ý: Cần loại bỏ những bản ghi trùng lặp.

11. Cho biết thông tin về 3 sinh viên có điểm thi môn MBA10 thấp nhất. Chú ý: Sử dụng thuộc tính Top Values của Query.

12. Cho biết Mã SV và Tên của 5 sinh viên có số buổi nghỉ nhiều nhất trong kỳ 10405.

13. Cho biết Họ tên, MãSV của các sinh viên không học chuyên ngành Kế toán.

14. Xem thông tin về các sinh viên thuộc chuyên ngành Kế toán đã học môn Tin quản lý 1.

15. Cho biết Họ tên, MãSV của sinh viên có điểm thi môn Kế toán Mỹ 1 từ 8 trở lên mà học chuyên ngành Tài chính – Ngân hàng.

16. Hiển thị thông tin về sinh viên ở Hà Nội hoặc Hà Tây.

17. Cho biết Mã môn, tên môn của các môn Đại cương (biết rằng ký tự đầu tiên trong Mã môn

nếu là G→ Đại cương, còn lại là các môn chuyên ngành).

18. Xem thông tin về các Sinh viên sinh trong Tháng 3.

19. Xem thông tin về các Sinh viên sinh từ Tháng 3 đến Tháng 5.

20. Cho biết sinh viên có tên là “Hương” đang học lớp nào?

21. Hiển thị danh sách môn học của sinh viên sinh ngày 22 tháng 12 mà đã học trong kì 10405.

22. Cho biết Sinh viên có mã A06173 đã học môn GNI05 trong kỳ 1 năm học 0405 hay không?

23. Cho biết thông tin của các môn đại cương đã mở trong kỳ 1 hoặc kỳ 2 năm học 0506.

24. Hiển thị thông tin về các môn Đại cương có liên quan đến toán, biết rằng kí tự thứ 2, 3

trong Mã môn cho biết môn liên quan tới: NI → Tin, NM → Toán, LE → Tiếng Anh…

25. Xem thông tin về môn học, thêm trường Loại Môn ghi môn đó thuộc loại nào ví dụ:

G → Đại cương, I → CN Toán tin, M → CN Quản lý, các môn còn lại là CN khác.

26. Cho biết Mã môn và Tên môn đã mở trong học kỳ 10506, thêm trường Hế số môn, hệ số môn được tính như sau: nếu là môn Đại cương (G) thì có hệ số là 1.2, các môn Tin (I) hệ số 1.4, các môn quản lý (M) hệ số 1.3, các môn còn lại có hệ số 1.5.

27. Hiển thị thông tin Sinh viên, thêm cột năm sinh (năm được lấy ra từ Ngày sinh), thêm cột Tuổi (Tuổi= năm hiện tại – năm sinh), dữ liệu được sắp xếp theo tuổi.

28. Cho biết thông tin về sinh viên bị cấm thi trong các kỳ (nghỉ học quá 3 buổi).

Page 35: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

35 - 42

29. In danh sách sinh viên, điểm thi, điểm cộng các môn học trong học kỳ 10506 và điểm cộng/trừ của SV đó, biết rằng chế độ cộng/trừ điểm được tính như sau: Nếu đi học đầy đủ (số buổi nghỉ =0) thì được cộng thêm 0.5 điểm, nếu nghỉ từ 2 đến 3 buổi bị trừ 1.0 điểm, còn lại bị cấm thi môn học đó.

30. Xem thông tin về điểm thi của sinh viên, thêm cột Tổng điểm = Điểm thưởng+Điểm thi-Số buổi nghỉ*0.3, thêm cột Điểm biết rằng: nếu Số buổi nghỉ quá 3 thì Điểm = -1.0, nếu Tổng điểm >10 thì Điểm =10.

B. Totals query

31. Cho biết số môn đã học của từng SV (đếm số môn).

32. Cho có bao nhiêu SV ở Hà Tây học chuyên ngành Kế toán.

33. Cho biết số môn đã học của mỗi sinh viên trong kỳ 1- 0506 (làm theo 2 cách: có dùng Where và không dùng Where).

34. Có bao nhiêu môn đã mở trong kỳ 2 năm học 0405 ?

35. Cho biết số lượng SV đã học của từng môn đã mở trong kỳ 1 năm học 0506.

36. Có bao nhiêu sinh viên học môn Tin quản lý 2 trong kỳ 1 năm học 0506.

37. Tính tổng số môn mà mỗi SV đã học trong từng kỳ.

38. Tính tổng số môn mà mỗi SV đã qua (các môn có điểm thi >=4.6 được coi là qua).

39. Cho biết học phí của mỗi sinh viên đã đóng trong từng kỳ.

Chú ý: Học phí 1 môn= SoDVHT * Donviphi

40. Cho biết tổng tiền học phí thu được trong năm học kỳ 1 năm học 0506.

41. Môn Giáo dục quốc phòng trong kỳ 10405 thu được bao nhiêu học phí?

42. Tính tổng tiền học phí của sinh viên A06342 đã nộp trong kỳ 1 năm học 0506.

43. Cho biết số lần đã mở của từng môn trong giai đoạn kỳ 1 năm học 0405 đến kỳ 3 năm học 0506.

44. Tính điểm trung bình cho từng sinh viên. Định dạng trường điểm trung bình: hiển thị 2 số sau dấu thập phân.

45. Tính điểm trung bình tích luỹ cho từng sinh viên.

46. Tính điểm trung bình Đại cương cho từng sinh viên. Biết các môn có ký tự đầu là G là các môn đại cương.

47. Tính tổng số đơn vị học trình Đại cương, tổng số đơn vị học trình Chuyên ngành, tổng số môn Đại cương, tổng số môn Chuyên ngành đã học của từng sinh viên.

48. Tính tổng số đơn vị học trình Đại cương, tổng số đơn vị học trình Chuyên ngành, tổng số môn Đại cương, tổng số môn Chuyên ngành đã qua của mỗi sinh viên.

49. Tính số lượng trung bình sinh viên tham gia học một môn trong kỳ 1 năm học 0506 là bao nhiêu (lấy đầu vào là câu 37).

Page 36: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

36 - 42

50. Cho biết điểm trung bình của mỗi sinh viên trong năm học 0405, thêm cột học bổng, Biết rằng: nếu ĐiểmTB >=7.5 thì nhận mức học bổng 500.000, nếu ĐiểmTB>=8.0 thì nhận mức học bổng 1.000.000.

Chú ý: ĐiểmTB tính cả các môn đại cương và chuyên ngành, năm học 0405 được tính từ kỳ 1 năm học 0405 đến kỳ 3 năm học 0405.

51. Đưa ra danh sách SV và xếp năm cho SV. Biết:

Năm thứ nhất: Tổng ĐVTL < 39

Năm thứ hai: 39 <= Tổng ĐVTL < 93

Năm thứ ba: 93 <= Tổng ĐVTL < 147

Năm thứ tư: 147 <= Tổng ĐVTL < 190

Diện sắp tốt nghiệp: Tổng ĐVTL >= 190

C. CrossTab Query

52. Cho biết ĐiểmTB của SV theo từng kỳ.

53. Hiển thị số lượng sinh viên đã học các môn trong từng kỳ (Mã kỳ làm Column Heading)

54. Cho biết số SV theo từng lớp trong từng chuyên ngành và tổng số SV trong mỗi chuyên ngành.

55. Tính tiền học phí theo kỳ và tổng tiền học phí đã nộp của mỗi sinh viên.

56. Tính tổng số trình tích luỹ theo kỳ và tổng số trình tích luỹ được của từng sinh viên.

57. Tính tổng số trình Đại cương, Chuyên ngành và số tổng số trình tích luỹ của mỗi sinh viên.

58. Cho biết số sinh viên trượt theo từng kỳ của mỗi môn học.

59. Cho biết số sinh viên nữ ở Hà Nội là bao nhiêu, số sinh viên nữ ở Hà Tây là bao nhiêu và tổng số sinh viên nữ ở 2 địa phương trên.

60. Tính số sinh viên nữ đã học Giáo dục quốc phòng hoặc Giáo dục thể chất theo từng chuyên ngành, với cột tiêu dề có thứ tự là Kế toán, Tài chính – Ngân hàng, Quản lý kinh doanh, Marketing thương mại.

D. Parameter query

61. Tạo Parameter query hiển thông tin của 1 SV có mã SV bất kỳ (Parameter trên trường MãSV)

62. Tạo Parameter query để tính tổng ĐVHT, ĐiểmTB tích luỹ của SV bất kỳ.

63. Cho biết danh sách các môn đã mở trong một học kỳ tuỳ ý.

64. Cho biết điểm thi các môn của SV bất kỳ trong 1 học kỳ nào đó.

65. Cho biết thông tin về sinh viên có ngày sinh trong 1 giai đoạn tuỳ ý.

66. Cho biết tổng số lần bị cấm thi của sinh viên bất kỳ.

67. Tạo Parameter query cho biết 1 sinh viên có mã bất kỳ có được nhận học bổng trong học kỳ nào đó hay không (chính sách phát học bổng tương tự câu 50).

Page 37: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

37 - 42

68. Tính tổng số đơn vị học trình Đại cương, tổng số đơn vị học trình Chuyên ngành, tổng số môn Đại cương, tổng số môn Chuyên ngành đã qua của một sinh viên có mã bất kỳ.

69. Cho biết số sinh viên trượt theo từng kỳ của môn học có mã bất kỳ (với kỳ làm ColumnHeading).

E. Action query

Chú ý: Tính chất toàn vẹn tham chiếu của các bảng.

70. Sửa tên môn Nhập môn khoa học máy tính thành Tin học đại cương.

71. Điều chỉnh lại Điểm thưởng của môn Tin quản lý 1 trong kỳ 10405 tăng thêm 0.25 cho sinh viên đi học đầy đủ.

72. Do sinh viên A08752 chuyển trường → cần phải xoá các thông tin liên quan đến A08752.

73. Do nhà trường không mở môn Điện học nữa → cần phải xoá điểm thi cho các sinh viên đã thi môn này với điểm <4.6.

74. Nhà trường mới mở thêm 1 số chuyên ngành mới → cần chèn thêm vào bảng ChuyenNganh bảng dữ liệu sau:

75. Do trong học kỳ 10405 giáo viên vào thiếu điểm của các bạn sau:

MaSV MaMon DiemThi A06046 Tiếng anh 3 6.00 A06137 Tiếng anh 3 6.00 A06158 Tiếng anh 3 7.00

A06159 Tiếng anh 3 6.00 A06173 Tiếng anh 3 3.00 A06176 Tiếng anh 3 6.00

Hãy chèn thêm vào bảng Điểm các sinh viên còn thiếu điểm ở trên.

II. REPORT

76. Tạo báo cáo đưa ra danh sách điểmTB của sinh viên và học bổng trong năm học 0405 (dựa trên câu 51 để tạo báo cáo).

77. Tạo báo cáo thống kê số SV trượt theo từng môn học.

78. Tạo báo cáo đưa ra danh sách ĐiểmTB cho từng sinh viên.

79. Đưa ra danh sách điểm thi môn MIM22 học kỳ 1 năm học 0405 theo mẫu sau:

Page 38: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

38 - 42

D¹I HäC TH¨NG LONG

DANH SÁCH ĐIỂM THI

Học kỳ 10405 Mã môn: MIM22 Môn học: Tin quản lý 2

TT Họ và tên Mã SV Lớp Điểm Ghi chú

1 Nguyễn Bích Hồng A06766 QA16a2 5.5

2 Đỗ Thị Hải Vân A06798 QB16b1 6.7

3 Nguyễn Thị Thuận A06973 QE16a 8.0

… … … … … … Tổng số: 120 SV

80. In ra bảng điểm của 1 sinh viên có mã bất kỳ, bảng điểm sắp xếp theo mã môn.

81. Tạo báo cáo đưa ra danh sách sinh viên được nhận học bổng trong 1 học kỳ bất kỳ. Biết rằng nếu ĐiểmTB >=7.5 được nhận học bổng 500.000, ĐiểmTB>=8.0 nhận mức 1.000.000.

82. In ra danh sách sinh viên theo lớp, mẫu như sau (dữ liệu chỉ để tham khảo):

D¹I HäC TH¨NG LONG

DANH SÁCH SINH VIÊN THEO L ỚP

Lớp Mã SV Họ tên

QA16a2 A06766 Nguyễn Bích Hồng …… ……… Tổng số SV 16 QA16a3 A06461 Lê Văn Ngãi …… ……… Tổng số SV 20 Tổng cộng 36

83. Tạo báo cáo thống kê số lượng sinh viên đã học trong môn học có mã bất kỳ. Mẫu báo cáo có dạng như sau:

D¹I HäC TH¨NG LONG

THỐNG KÊ SỐ LƯỢNG SINH VIÊN ĐÃ HỌC Mã môn: MBA20 Tên môn: Marketing căn bản

Học kỳ Số SV 10506 50

20506 25

30506 57

Tổng cộng 132

Page 39: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

39 - 42

84. Tạo báo cáo đưa ra danh sách sinh viên bị cấm thi trong học kỳ bất kỳ. Sinh viên bị cấm thi khi có số tiết nghỉ > 30% tổng số tiết, biết rằng 1 DVHT = 12 tiết, 1 buổi học gồm 4 tiết. Mẫu báo cáo có dạng như sau:

D¹I HäC TH¨NG LONG

DANH SÁCH SINH VIÊN C ẤM THI HỌC KỲ 1 NĂM HỌC 0405

Mã SV Tên SV Tên môn Số buổi nghỉ

A06268 Phạm Thị Vân Anh Nguyên lý kế toán 2

A06046 Nguyễn Vân Anh Nguyên lý kế toán 2

A06073 Nguyễn Thị Thu Ngân Thanh toán quốc tế 4

85. Tạo giấy báo điểm của sinh viên bất kỳ trong kỳ học bất kỳ (bất kỳ: do người dùng nhập khi mở báo cáo). Trong báo cáo mới tính Điểm TK (1 buổi nghỉ -0.3 điểm, nghỉ quá 3 buổi ĐiểmTK = -1.0), Giấy báo điểm có dạng như sau:

D¹I HäC TH¨NG LONG

ĐIỂM THI H ỌC KỲ 1 NĂM HỌC 0506 Mã sinh viên: A06084 Họ và tên: LÊ THỊ ÁNH Lớp: QA16a4

Mã môn

Tên môn Điểm thi

Điểm cộng

Số buổi nghỉ

Điểm TK

GLE13 Tiếng Anh 3 6.0 0 0 6.0

MBA20 Marketing căn bản 7.0 1.1 2 7.9

…… …… …… … … …

III. FORM

86. Sử dụng Wizard tạo form Danh mục lớp theo mẫu:

Page 40: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

40 - 42

Yêu cầu:

• Thay đổi nội dung Label ở Form Header, label các trường theo mẫu trên.

• Thay đổi thuộc tính Default View của form → cách hiển thị form khác nhau.

• Thêm lớp vào danh mục, thông tin ghi ở form trên.

87. Sử dụng Wizard tạo form DS sinh viên với cách hiển thị Layout là Datasheet.

Yêu cầu:

• Định dạng hiển thị trường Ngày sinh: dd-mm-yy.

• Việt hóa lable của các trường.

• Bỏ nút Navigation Button và Record Selector.

88. Thiết kế lại form Danh mục lớp

Page 41: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

41 - 42

Yêu cầu:

• Chèn thêm Subform: sử dụng form DS sinh viên; kiểm tra trường liên kết được khai báo thuộc tính Link Master Field và Link Child Field là Malop.

• Sửa label của Subform có nội dung “Danh sách sinh viên”.

• Tạo nút Xem tổng kết, để khi chọn nút này thì mở báo cáo Tổng kết theo lớp, mẫu báo cáo như sau:

Lưu ý: báo cáo sẽ hiển thị danh sách sinh viên và điểm trung bình tương ứng với lớp hiện tại cho trên form.

89. Sử dụng Wizard tạo form theo mẫu:

• Combo Box để lựa chọn môn cần xem.

• Subform để hiển thị sinh viên đã học môn lựa chọn trên Combo Box. Subform hiển thị

Page 42: 90727266 baitap-access

Bài tập Tin quản lý MS Access – Quản lý điểm sinh viên

42 - 42

các trường: Mã môn, Mã SV, Tên SV, Điểm thưởng, Điểm thi, Tổng kết. Biết rằng Tổng kết=Điểm thưởng+Điểm thi, lưu ý điểm có làm tròn nếu tổng điểm ≥ 10.

• Button Xem báo cáo để mở báo cáo theo môn đã chọn trên ComboBox:

Gợi ý: Subform và Report có thể sử dụng chung query dữ liệu nguồn.