Nội dung bài giảng môn Cơ sở dữ liệu nội dung: Hệ quản trị cơ sở dữ liệu ACCESS

Nội dung bài giảng môn Cơ sở dữ liệu nội dung: Hệ quản trị cơ sở dữ liệu ACCESS của Học viện Công nghệ Bưu chính Viễn thông với những kiến thức và thông tin bổ ích giúp sinh viên tham khảo, ôn luyện và phục vụ nhu cầu học tập của mình cụ thể là có định hướng ôn tập, nắm vững kiến thức môn học và làm bài tốt trong những bài kiểm tra, bài tiểu luận, bài tập kết thúc học phần, từ đó học tập tốt và có kết quả cao cũng như có thể vận dụng tốt những kiến thức mình đã học vào thực tiễn cuộc sống. Mời bạn đọc đón xem!

lOMoARcPSD|37922327
H QUN TR CƠ SỞ D LIU ACCESS
GIàI THIÞU
Chương này cung cÁp cho sinh viên các kiến thức sau:
- Tổng quan về hệ qu¿n trị cơ sá dữ liệu
- Giới thiệu về hệ qu¿n trị cơ sá dữ liệu Access
- Các kiến thức b¿n trong việc tạo lập sá dữ liệu của Access, thiết kế xây
dựng b¿ng ( Table), mẫu biểu (Form), truy vÁn ( Query), Báo biểu ( Report)
5.1 TÞNG QUAN VÀ HÞ QUÀN TRà C¡ Sà DĂ LIÞU
5.1.1 Cơ sở dữ liệu (CSDL)
Có thể hiểu CSDL (Database) một bộ sưu tập rÁt lớn về các loại dữ liệu tác nghiệp của
một quan, nghiệp… ược tổ chức lưu trữ tập trung hay phân tán trên các thiết bị nhớ của
mạng máy tính ược các hệ ứng dụng truy xuÁt, khai thác theo chế dộ trực tuyến hay tương
tác. Cụ thể có một số khái niệm ược hiểu như sau :
- CSDL là kho lưu trữ tổ chức về các loại dữ liệu tác nghiệp, bao gồm các loại dữ liệu
về văn b¿n, ồ họa, âm thanh… ược mã hóa dưới dạng chuỗi bit 0 và 1 ược lưu trữ trong
các bộ nhớ của máy tính. CSDL ph¿n ánh trung thực thế giới dữ liệu hiện thực khách quan.
- CSDL dùng chung cho nhiều ngưßi. CSDLtài nguyên thông tin chung cho nhiều ngưßi
cùng sử dụng. BÁt kỳ ngưßi sử dụng nào trên máy tính, tại các thiết bị ¿u cuối, về nguyên
tắc ều có quyền truy nhập khai thác toàn bộ hay một ph¿n dữ liệu theo chế ộ trực tuyến hay
tương tác mà không phụ thuộc vào vị trí ịa lý của ngưßi sử dụng với các tài nguyên ó.
- CSDL ược các hệ ứng dụng khai thác, tìm kiếm, tra cứu, sửa ổi bổ sung hay loại bỏ
dữ liệu. Tìm kiếm và tra cứu thông tin là chức năng phổ biến nhÁt, quan trọng nhÁt của các
hệ CSDL. Hệ qu¿n trị CSDL (DBMS - DataBase Management System) ph¿n mềm iều
khiển các chiến lược xây dựng CSDL. Khi ngưßi sử dụng ưa ra yêu c¿u truy nhập bằng một
ngôn ngữ dữ liệu nào ó thì DBMS tiếp nhận, thực hiện các thao tác trên CSDL lưu trữ và
tr¿ lại kết qu¿ (nếu có).
- Hiện nay, CSDL quan hệ (Relationship Database) ược sử dụng rộng rãi nhÁt. Đối tượng
nghiên cứu của CSDL quan hệ thực thể mối quan hệ giữa các thực thể. Thực thể mối
quan hệ giữa các thực thể là hai ối tượng khác nhau về căn b¿n. Mối quan hệ giữa các thực
thể cũng là một loại thực thể ặc biệt. Trong cách tiếp cận CSDL quan hệ, ngưßi ta xây dựng
cơ sá lý thuyết ại số quan hệ xây dựng các quan hệ chuÁn khi kết nối không tổn thÁt thông
tin khi biểu diễn dữ liệu duy nhÁt. Dữ liệu ược lưu trữ trong bộ nhớ của máy tính không
những ph¿i tính ến yếu tvề tối ưu không gian lưu tữ, ph¿i ¿m b¿o tính khách quan,
trung thực dữ liệu hiện thực. Nghĩa là ph¿i ¿m b¿o tính nhÁt quán của dữ liệu và dữ liệu ược
sự vẹn toàn của dữ liệu.
5.1.2 Hệ quản trị CSDL :
a. Giái thißu: Hệ qu¿n trị CSDL hệ thống ph¿n mềm iều khiển toàn bộ các chiến lược
truy nhập CSDL
lOMoARcPSD|37922327
Các chức năng cơ b¿n của hệ qu¿n trị CSDL bao gồm
- Tạo ra và duy trì cÁu trúc dữ liệu
- Cập nhật dữ liệu
- Lưu trữ dữ liệu
- m kiếm và xử lý các dữ liệu lưu trữ
- Cho phép nhiều ngưßi dùng truy xuÁt ồng thßi
- Hỗ trợ tính b¿o mật và riêng tư
- Cung cÁp một cơ chế chỉ mục (index) hiệu qu¿ ể lÁy nhanh các dữ liệu lựa chọn.
- B¿o vệ dữ liệu khỏi mÁt mát bằng các quá trình sao lưu và phục hồi.
b. Phân lo¿i hß quÁn trá CSDL:Về cơ b¿n, hiện nay có 3 loại hệ qu¿n trị CSDL chính là:
Hệ quÁn trị CSDL phân cấp chứa dữ liệu trong một cấu trúc như cây
Hệ này thiết lập một quan hệ cha-con trong dữ liệu. à ỉnh của cây, còn gọi là root, thể
có một số nút bÁt k. Các nút này lại có thể có một số nút con bÁt kỳ, v.v... Các hệ CSDL
phân cÁp ngày nay ã lạc hậu.
Hệ quản trị CSDL mạng chứa dữ liệu ở dạng các bản ghi và các liên kết
Hệ thống này cho phép nhiều quan hệ nhiều-nhiều hơn hệ CSDL phân cÁp. Một hệ qu¿n
trị CSDL mạng lưu trữ có hiệu qu¿ rÁt nhanh, cho phép qu¿n lý các cÁu trúc dữ liệu phức
tạp. Tuy nhiên, chúng lại rÁt cứng nhắc yêu c¿u nặng nề về thiết kế. Một hệ thống ăng
ký vé máy bay là một ví dụ của loại này.
Hệ quản trị CSDL quan hệ (Relationship DBMS)
Hệ qu¿n trị CSDL quan hệ lẽ một hệ qu¿n trị CSDL cÁu trúc ơn gi¿n nhÁt. Trong
một hệ qu¿n trị CSDL quan hệ, dữ liệu ược tổ chức thành các b¿ng. Các b¿ng lại bao gồm
các b¿n ghi và các b¿n ghi chứa các trưßng. Mỗi trưßng tương ứng với một mục dữ liệu. Hai
hay nhiều b¿ng có thể liên kết nếu chúng có một hay nhiều trưßng chung.
Hệ qu¿n trị CSDL quan hệ ược sử dụng khá dễ dàng phát triển nhiều trong những năm
g¿n ây. Hiện nay có một số hệ qu¿n trị CSDL quan hệ ược sử dụng rộng rãi trên thị trưßng
như Oracle, Informix, Sybase, Foxpro, Access,…..
Microsoft Access một hệ qu¿n trị CSDL ơn gi¿n, dễ sử dụng, rÁt thích hợp cho các
ứng dụng vừa và nhỏ. Tài liệu này sẽ trình bày về các khái niệm và cách sử dụng một cách
căn b¿n hệ qu¿n trị CSDL này.
5.2 HÞ QUÀN TRà CSDL ACCESS
5.2.1 Tổng quan về Access
Về cơ b¿n, Access một hệ qu¿n trị CSDL. Tương tự các s¿n phÁm khác thuộc loại này,
Access lưu trữ thu thập các thông tin (thưßng gọi dữ liệu), hiển thị các thông tin yêu
c¿u tự ộng hoá các thao tác ược lặp lại (thí dụ duy trì các tài kho¿n hoặc một hệ thống
thông tin cá nhân, thực hiện việc kiểm soát và lập b¿ng kiểm kê). Với Access, ta có thể tạo
ra các biểu nhập dữ liệu dễ sử dụng. Ta có thể hiển thị các thông tin theo ý muốn và tạo các
báo cáo phức tạp.
lOMoARcPSD|37922327
Access cũng là một ứng dụng CSDL mạnh của Windows, nó là một s¿n phÁm ược thiết
kế hỗ trợ ngưßi phát triển hoặc ngưßi dùng cuối. Bên cạnh tính tiện dụng và nhÁt quán của
Microsoft Window, Microsoft Access cũng bổ sung thêm tính hiệu qu¿ trong qu¿n CSDL.
Do c¿ Access Window ều những s¿n phÁm của Microsoft nên c¿ hai phối hợp với nhau
hoạt ộng rÁt tốt. Access kh¿ năng chạy trên nền Windows95, Windows 98, Windows
ME, Windows 2000 …, do ó Access mọi lợi thế của Windows. Ta thể cắt dán, sao
chép các dữ liệu từ bÁt k một ứng dụng nào của Windows vào Access hoặc ngược lại. Ta
cũng có thể tạo ra thiết kế biểu mẫu trong Access và cắt dán vào thiết kế báo cáo.
Khi sử dụng các ối tượng OLE (Object Linking and Embedding - Liên kết nhúng ối
tượng) trong các s¿n phÁm của Windows Microsoft Office (như Excel, Word, PowerPoint
Outlook), ta thể rộng kh¿ năng của Access ể hợp nhÁt các ối tượng thể xem ược
của các s¿n phÁm Microsoft này không c¿n ph¿i sao chép nội dung của chúng dán
vào Access. Kh¿ năng này cho phép ta có thể làm việc với các dữ liu thực tế có sẵn trong
các s¿n phÁm nàykhông c¿n ph¿i sao chép thông tin. Bằng cách sử dụng OLE, ta có thể
thực sự thay ổi các thông tin trong ối tượng biểu cơ sá (như Excel, Word, v.v...). Với các má
rộng của Internet trong Access, ta có thể lập các biểu tương tác với các dữ liệu lÁy trực tiếp
từ các trang Web WWW và có thể trực tiếp chuyển các biểu ta lập thành c trang truy cập
dữ liệu cho các mạng nội bộ hợp nhÁt làm việc trực tiếp với trình duyệt Internet của ta.
Là một hệ qu¿n trị dữ liệu quan hệ, Access cho phép ngưßi sử dụng cùng lúc có thế truy
nhập các thông tin từ hai b¿ng trá lên - thậm chí thể liên kết các b¿ng CSDL lạo lập
b¿ng mới. Access thể làm gi¿m tính phức tạp của các dữ liệu làm cho công việc dễ
thực hiện hơn. Có thể nối các b¿ng Access của ta với các dữ liệu của y tính lớn hoặc máy
chủ - thậm chí thể sử dụng một b¿ng ược tạo trong các chương trình dBase hoặc Excel.
Có thể dễ dàng kết hợp các kết qu¿ kết nối với một b¿ng tính trong Excel.
Kh¿ năng kết nối của Access với các dữ liệu n ngoài (lưu giữ trong các dạng CSDL
khác) làm cho Access trá thành một chương trình rÁt thiết thực. thể sử dụng Access trong
một môi trưßng mạng ể liên kết với một loạt các b¿ng từ các CSDL khác - vừa á dạng liên
kết nội bộ (trên cùng một máy) vừa liên kết xa (thậm chí với CSDL của một máy tính lớn
như Oracle hoặc DB2). Access có thể kết nối trực tiếp với các b¿ng bên ngoài này hoặc
thể nhập về sử dụng nội bộ. Khi ã kết nối hoặc nhập các b¿ng bên ngoài về, ta có thể tạo lập
các biểu và các báo cáo làm việc với các thông tin - ể thay ổi hoặc xem hoặc in các thông tin
5.2.2 Khởi ộng, cửa sổ làm việc của Microsoft Access
5.2.2.1 Khởi ng Microsoft Access
Microsoft Access là hệ qu¿n trị CSDL ược cài ặt trên môi trưßng Windows nên ta có thể
cài ặt khái ộng Access tương tự như khái ộng các chương trình ứng dụng khác như
Micrsoft Word, Excel… Có thể khái ộng theo các bước như sau:
Trên thanh Start má Program -> Microsoft Office -> Microsoft Access 2010
lOMoARcPSD|37922327
Khi ó hộp thoại ¿u tiên xuÁt hiện trên màn hình
lOMoARcPSD|37922327
Hộp thoại này cho phép chúng ta chọn các hành ộng sau:
o Blank database : Tạo mới hoàn toàn một tập tin CSDL Access trống (tập tin ó
ph¿n má rộng là accdb - chưa có dữ liệu)
o Blank web database: o
Recent templates: o Sample
templates: o My templates:
o Open: Má một tập tin CSDL Access ã ược tạo trước ó
5.2.2.2 Các thành phần trong cửa sổ khởi ộng
Sau khi khái ộng Microsoft Access, cửa sổ của Microsoft Access xuÁt hiện. Các thành
ph¿n trong cửa sổ này gồm:
a. Thanh Quick Access: Hiển thị bên trái thanh tiêu ề, mặc ịnh thanh Quick Access gồm
các nút công cụ Save, Undo,…
Bên ph¿i của Quick Access chứa nút Customize, khi cơ sá dữ liệu ang má, nếu click
nút Customize sẽ xuÁt hiện một menu giúp bạn chỉ ịnh các nút lệnh hiển thị trên thanh
Quick Access, nếu các lệnh không trong menu, bạn thể kích vào nút More
Commands hoặc kích ph¿i trên thanh Quick Access chọn Customize Quick Access
Toolbar.
Kích vào More Commands….cửa sổ hiện ra như sau:
lOMoARcPSD|37922327
b. Vùng làm việc:
Khi khởi ộng Access, trong cửa sổ khởi ộng, mặc ịnh tab File và lệnh New trong tab
File ược chọn, cửa sổ ược chia thành 3 khung:
- Khung bên trái gồm các lệnh trong tab File
- Khung giữa: chứa các loại tập tin cơ sở dữ liệu mà bạn có thể tạo mới.
- Khung bên phải: ể nhập tên và chọn vị trí lưu tập tin mới tạo và thực thi lệnh tạo
mới cơ sở dữ liệu.
c. Thanh Ribbon: Thanh Ribbon ược tạo bái nhiều tab khác nhau, nếu truy cập vào một tab
bạn có thể kích.
lOMoARcPSD|37922327
Ví dụ: Để má một tập tin CSDL chúng ta ph¿i vào File rồi chọn Open.
d. Thanh Navigation Pane
Navigation Pane khung chứa nội dung chính của dữ liệu. Từ khung Navigation
Pane, bạn có thể má bÁt kỳ Table, Query, Form, Report, Macro, hoặc module trong
cơ sá dữ liệu bằng cách kích úp vào tên của ối tượng.
Bằng cách kích ph¿i vào tên của ối tượng trong Navigation Pane, bạn có thể thực hiện
các thao tác với ối tượng như: ổi tên, sao chép, xóa, import, export một ối tượng…
NhÁn phím F11 hoặc kích vào mũi tên kép á góc tn bên ph¿i của khung Navigation
Pane ể hiển thị hoặc Án khung Navigation Pane.
e. Thanh trạng thái (Status bar): Thể hiện tình trạng hiện hành của các phím dặc biệt
CapsLock, Numlock…), các thông báo, hướng dẫn sử dụng Microsoft Access .
Thanh ribbon
trạng thái
Thanh tiêu ề
lOMoARcPSD|37922327
Nói chung các thao tác với thanh công cụ giống với các thanh công cụ trong Winword
5.2.2.3 Các thao tác ối với tệp tin CSDL
Tạo một tệp mới: Khi khái ộng Access tại cửa sổ khái ộng thì cũng thể tạo nên một
tệp CSDL mới bằng cách chọn Blank Database từ của sổ khái ộng của Access.
Mặt khác tại cửa sổ Database có thể làm như sau: File -> New sau ó chọn Database, OK.
Tiếp tục ph¿i ưa tên tệp vào rồi chọn Create.
Mở một tệp CSDL của Acces ã tồn tại trong máy tính: Chúng ta cũng có thể má một
tệp CSDL ã tồn tại trong Access ngay từ màn hình khái ộng bằng cách chọn Open.Mặt khác
tại cửa sổ Database có thể làm như sau: File -> Open, chọn Tên tệp tin, OK Đóng tệp CSDL:
Chọn File -> Close hoặc óng cửa sổ Thoát khỏi Access: Chọn File -> Exit.
5.2.2.4 Các ối tượng bên trong tập tin CSDL Access:
Một tệp CSDL gồm có 7 ối tượng cơ b¿n sau:
BÁng (Table): thành ph¿n cơ sá của tập tin CSDL của Access, dùng ể lưu trữ dữ
liệu. Hệ thống b¿ng chính là cÁu trúc CSDL. Do ó âydữ liệu ¿u tiên ph¿i ược tạo ra trước.
Bên trong một b¿ng, dữ liệu ược lưu thành nhiều cột và nhiều hàng
Truy vấn (Query): Là công cụ cho phép ngưßi sử dụng dùng ngôn ngữ truy vÁn có
cÁu trúc SQL (Structure Query Language) hoặc công cụ truy vÁn bằng ví dụ QBE (Query
by Example) ể thực hiện các truy vÁn rút trích, chọn lựa dữ liệu hoặc cập nhật dữ liệu (thêm,
sửa, xóa) trên các b¿ng. Truy vÁn bằng thí dụ là công cụ hỗ trợ việc thực hiện các truy vÁn
không c¿n ph¿i viết lệnh SQL, chủ yếu chỉ dùng kỹ thuật kéo - th¿ trên
họa.Trong tài liệu này chúng tôi chủ yếu i vào truy vÁn QBE.
Biểu m¿u (Form): Cho phép ngưßi sử dụng xây dựng nên các màn hình dùng ể cập
nhật hoặc xem dữ liệu lưu trong các b¿ng, ngoài ra cũng cho phép ngưßi sử dụng tạo ra các
hộp thoại hỏi áp giữa ngưßi sử dụng và hệ thống ứng dụng.
Báo cáo (Report): Cho phép chúng ta tạo ra kết xuÁt từ các dữ liệu ã lưu trong các
b¿ng, sau ó sắp xếp lại ịnh dạng theo một khuôn dạng cho trước từ ó thể ưa kết
xuÁt này ra màn hình hoặc máy in hoặc các dạng tập tin Word/ Excel.
TÁp lßnh (Macro): công cụ cung cÁp cho ngưßi sử dụng tạo ra các hành ộng
ơn gi¿n trong Microsoft Access như biểu mẫu, báo cáo, thực hiện một truy vÁn…
không c¿n ph¿i biết gì về ngôn ngữ lập trình Visual Basic.
lßnh (Module): Với ngôn ngữ Visual Basic cho phép ngưßi sử dụng xây
dựng các hàm hoặc thủ tục của riêng mình thực hiện một hành ộng phức tạp nào ó
không thể làm bằng công cụ tập lệnh, hoặc với mục ích cho chương trình chạy nhanh hơn.
Các trang Web dă lißu (Pages): Cho phép chúng ta có thể tạo ra các trang Web dữ
liệu mà trên ó có chứa dữ liệu ộng lÁy từ một CSDL nào ó. Ngưßi sử dụng có thể cập nhật
dữ liệu trực tiếp vào cơ sá dữ liệu thông qua trình duyệt Web (Microsoft Internet Explorer)
.
5.2.2.5. Làm việc với cửa sổ dữ liệu trong Microsoft Access:
lOMoARcPSD|37922327
Cửa sổ CSDL (cửa sổ Database) là cửa sổ làm việc chính của Microsoft Access, trên cửa
sổ này cho phép ngưßi sử dụng tạo mới, hoặc sửa ổi hoặc xóa các ối tượng cơ b¿n trong tập
tin CSDL Access bằng cách chọn các dãy nút dọc và ngang
a. Các thành ph¿n chính trong cāa sß CSDL của Microsoft Access
Các nút ối tượng: B¿ng, Query, Form, Report, Macro. Moduls… cho phép chúng ta
lựa chọn một loại ối tượng làm việc hiện hành trong cửa sổ CSDL.
Các nút hành ộng: Open, Design, New: cho phép chúng ta má, sửa tạo mới các ối
tượng làm việc hiện hành (là ối tượng ang ược chọn trong danh sách các ối tượng) b. Đóng
mßt ối t¤ÿng ang má
Kích ph¿i vào tên ối tượng ang chọn Close hoặc nhắp vào nút Close trên cửa sổ chứa
ối tượng. c. Xóa mßt ối t¤ÿng
Chọn ối tượng c¿n xóa, chọn Home rồi Án Delete, rồi xác nhận lại ồng ý xóa thật không
(chọn YES).
d. Đßi tên mßt ối t¤ÿng
Chọn ối tượng c¿n ổi tên tn thanh Navigation Pane, chọn Rename, sau ó ghi vào tên
mới (BÁm ESC ể tr¿ lại tên cũ trước ó) e. Àn hoặc hißn cāa sß CSDL
Àn: Chọn Window -> Hide
Hiện: Chọn Window -> Unhide (hoặc nhÁn phím F11)
5.2.3 Làm việc với các ối tượng trong Access
Trước khi bắt tay vào xây dựng các b¿ng, biểu mẫu, các báo biểu và các thành ph¿n khác
của một CSDL, ta c¿n ph¿i bỏ thßi gian thiết kế chi tiết. Một thiết kế tốt là chìa khoá cho sự
thành công của mọi CSDL, nó cho phép ngưßi dùng thao tác một cách ddàng, chương trình
chạy một cách hiệu qu¿ và chính xác.
5.2.3.1 Quy trình thiết kế CSDL
Các bước cơ b¿n ể thiết kế một CSDL là:
1. Xác ịnh mục ích của CSDL: CSDL dùng ể lưu trữ thông tin gì, c¿n rút ra những
thông tin gì từ CSDL.
2. Xác ịnh các bảng dữ liệu, table, cần có trong CSDL: một b¿ng không ược chứa
dữ liệu trùng lặp, và thông tin cũng không nên bị trùng lặp giữa các b¿ng. Mỗi một b¿ng
chỉ nên chứa thông tin liên quan ến một chủ ề.
3. Xác ịnh các trường dữ liệu, field, cần có trong mỗi bảng dữ liệu: Mỗi b¿ng chứa
thông tin về cùng một chủ thể, mỗi trưßng của một b¿ng lại chứa các thông tin riêng biệt về
chủ thể ó. Ta chỉ nên ghi nhận các thông tin c¿n thiết từ thực tế, không nên các trưßng
tính toán - calculated field. Lưu trữ thông tin dưới dạng chi tiết nhÁt có thể (ví dụ: Họ, Tên
chứ không nên Họ và Tên).
4. Xác ịnh các trường chứa giá trị duy nhất ở mỗi bản ghi: Để Access kết nối ược
các thông tin lưu trữ trong các b¿ng riêng biệt . Ví dụ: kết nối các khách hàng với ơn ặt hàng
của ngưßi ó. Mỗi b¿ng c¿n ph¿i một trưßng hoặc một nhóm các trưßng chứa gtrị duy
lOMoARcPSD|37922327
nhÁt dùng phân biệt giữa các b¿n ghi trong một b¿ng. Một trưßng như vậy gọi trưßng
khoá - Primary key.
5. Xác ịnh các mối quan hệ giữa các bảng: Ta chỉ ra cho Access cách ể tìm kiếm
và ưa các thông tin liên quan lại tập hợp với nhau.
6. Tinh chỉnh thiết kế: Sau khi ã thiết kế, ta c¿n vận hành thử nghiệm CSDL ể ¿m
b¿o các chức năng c¿n có ều thực hiện suôn sẻ úng như mong ợi. Nếu phát hiện những thông
tin gì không c¿n thiết thì ta nên loại bỏ ể tránh sự cồng kềnh.
7. Nhập dữ liệu tạo các ối tượng CSDL: Khi ã hài lòng với cÁu trúc các b¿ng
biểu và các mối liên kết là lúc ph¿i nhập liệu. Dựa trên dữ liệu ã nhập ta có thể dễ dàngy
dựng các biểu mẫu, báo biểu, truy vÁn ể phục vụ công tác xử lý ¿u vào và ¿u ra thông tin.
8. Sử dụng công cụ phân tích của Access: Access cung cÁp công cụ B¿ng Analyzer
Wizard giúp ngưßi dùng phân tích thiết kế ã có và chỉnh sửa chúng.
5.2.3.2 Tạo và quản lý các bảng dữ liệu (Table)
Nói chung, một b¿ng dữ liệu tập hợp các dữ liệu về một chủ nhÁt ịnh (ví dụ s¿n
phÁm, ngưßi bán). Sử dụng mỗi b¿ng riêng cho mỗi ối tượng cho phép ta lưu dữ liệu một
cách rõ ràng, hiệu qủa , tránh lưu nhiều l¿n một thông tin, gi¿m thiểu lỗi nhập liệu.
B¿ng tổ chức dữ liệu theo cột (gọi là trưßng - field), và theo hàng (gọi là b¿n ghirecord).
Ta dùng một trưßng chung ể liên kết hai b¿ng. Việc này cho phép Access kết xuÁt hiển
thị dữ liệu từ các b¿n ghi á các b¿ng dữ liệu khác nhau có liên quan ể xem, sửa, hoặc in ra
báo cáo Mỗi trưßng
trong b¿ng s¿n
phÁm chứa
B¿ng: S¿n phÁm cùng một kiểu thông Tên S¿n PhÁm Mã nhà cung cÁp Số lượng
trong kho tin cho tÁt c¿ các s¿n
GiÁy Vĩnh Phúc 1 20 phÁm, như số lượng.
GiÁy Bãi bằng 2 50
GiÁy Indo 3 20
Mỗi một b¿n ghi chứa tÁt c¿ thông tin liên quan ến một s¿n phÁm, như là tên
s¿n phÁm, mã nhà cung cÁp, số
lượng trong kho ...
B¿ng: Nhà cung cÁp
Trưßng dữ liệu
Mã nhà cung Tên nhà cung cÁp chung liên
kết dữ
cÁp liệu từ hai b¿ng 1 Nhà máy giÁy Vĩnh
2 Nhà máy giÁy Bãi Bằng
3 Công ty xuÁt nhập khÁu h¿i phòng
B¿ng: S¿n phÁm
Tên S¿n PhÁm Nhà cung cÁp Số liệu trong kho
Giẫy Vĩnh Phúc 1 20
GiÁy Bãi Bằng 2 50
GiÁy Indo 3 20
lOMoARcPSD|37922327
a. Thi¿t k¿ mßt bÁng dă lißu
Cách 1: Tạo b¿ng dữ liệu bằng cách nhập dữ liệu
1. Chọn cửa sổ Database .
2. NhÁn Tables bên dưới Objects, rồi chọn New trong cửa sổ Database.
3. NhÁn úp Datasheet View. Một lưới dữ liệu trống ược hiển thị với các tên ng¿m
ịnh của các cột là Field1, Field2,...
4. Đổi tên cột bằng cách nháy úp chuột vào tiêu các cột Field1, Field2…, rồi nhập
vào tên mới..
5. Nhập dữ liệu vào lưới nhập liệu, nhớ rằng mỗi cột chỉ ược nhập một kiểu dữ liệu
duy nhÁt từ dòng thứ nhÁt ến dòng cuối cùng. Tức là, nếu dòng ¿u dữ liệu kiểu số, kiểu
ngày,... thì các dòng tiếp theo cột ó dữ liệu cũng ph¿i kiểu số, kiểu ngày. Access sẽ tạo
kiểu dữ liệu (data type) và dạng hiển thị (display format) tưng ứng cho mỗi cột. Các cột bỏ
trống sẽ bị xoá khi ta ghi lại lưới nhập liệu (DataSheet).
6. Chọn Save trên thanh công cụ ghi lại mọi thay ổi. Access sẽ hỏi nếu bạn
muốn tạo một mã khoá chính cho b¿ng vừa tạo (Primary key).
Cách 2: Tự thiết kế b¿ng dữ liệu
Trình tự thiết kế
1. Chuyển sang cửa sổ CSDL. Ta có thể dùng phím F11 chuyển ổi giữa các cửa
sổ.
2. NhÁn Tables bên dưới Objects, rồi New trong cửa sổ Database.
3. NhÁn úp chuột vào Design View ể chọn chế ộ thiết kế.
4. Định nghĩa các trưßng của b¿ng.
5. Thiết lập trưßng khóa – Primary key trước khi ghi lại thiết kế
Lưu ý: Không nhÁt thiết ph¿i xác ịnh trưßng khóa, nhưng nên tạo trưßng khóa, vì căn cứ
vào các trưßng khóa này, về sau khi ta thiết kế các truy vÁn, biểu mẫu, báo biểu, Access sẽ
tự ộng xác ịnh các liên kết c¿n thiết ể kết nối dữ liệu.
6. NhÁn chuột vào nút lệnh Save trên thanh Quick Access ể ghi lại mọi thay
ổi, nhập vào tên của b¿ng.
Cửa sổ thiết kế
Trong chế thiết kế, ta thể thiết kế một b¿ng từ ¿u, hoặc thêm, x, hoặc sửa ổi theo
thích các trưßng của một b¿ng ã có. Trong chế này, cửa sổ giao diện các khu vực
chính dưới ây:
lOMoARcPSD|37922327
Field Name - Tên trưßng: Nếu ta muốn theo dõi thêm các thông tin, hãy bổ sung thêm các
trưßng mới. Nếu tên của một trưßng ã có chưa ủ biểu ạt ý nghĩa, ta có thể ổi tên trưßng.
Data types - Kiểu dữ liệu: Việc thiết lập kiểu dữ liệu của một trưßng ể ịnh nghĩa kiểu dữ
liệu ta sẽ nhập vào trưßng ó. (Kiểu dữ liệu: tính chÁt của một trưßngxác ịnh kiểu dữ liệu
nào sẽ ược lưu trữ trong trưßng. Ví dụ, trưßngthuộc tính Data type là Text có thể lưu dữ
liệu dạng chữ hoặc số, nhưng một trưßng Number chỉ có thể chứa dữ liệu số).
Primary Key - Khoá chính: Sử dụng một số duy nhÁt, gọi khoá chính phân biệt
mỗi một b¿n ghi trong b¿ng. Một khoá chính của b¿ng dùng ể tham chiếu ến các b¿n ghi liên
kết trong các b¿ng khác. Khóa chính có thể là một hoặc nhiều trưßng (cột) mà duy nhÁt giá
trị của nó có thể dùng ể phân biệt các b¿n ghi của một b¿ng. Một khoá chính không thể chứa
giá trị rỗng - Null và ph¿i là chỉ mục sắp xếp duy nhÁt.
Field properties - Thuộc tính của trưßng: Các thuộc tính của trưßng là tập hợp các
Các kiểu dă lißu của mßt tr¤ßng:
Sử dụng thuộc tính kiểu dữ liệu ể chỉ ịnh kiểu dữ liệu sẽ ược lưu trong trưßng. Mỗi trưßng
chỉ có thể chứa thông tin của một kiểu dữ liệu.
Kiu dă lißu
Mô tÁ
Kích th¤ác
lOMoARcPSD|37922327
Text
(Ng¿m ịnh) Ký tự hoặc tổ hợp giữa ký
tự và chữ số, hoặc cũng có thể chứa só
không c¿n tính toán như số iện thoại.
Tối a 255 ký tự, quy ịnh
bái thuộc tính FieldSize
(kích thước trưßng).
Memo
Những oạn văn b¿n dài
Tối a 65,535 ký tự
Number
Dữ liệu số dùngtrong các phép tính
toán số học.
1, 2, 4, hoặc 8 bytes
(16 bytes nếu chọn kiểu số
là Replication ID).
Date/Time
Các giá trị ngày tháng hoặc thßi gian
tính từ năm 100 ến năm 9999.
8 bytes.
Currency
Kiểu tiền tệ. Độ chính xác ến 15 số về
bên trái dÁu phÁy và 4 chữ số về bên ph¿i
8 bytes.
AutoNumber
Số theo thứ tự tăng d¿n, mỗi l¿n 1 ơn
vị) hoặc số ngẫu nhiên do Access sinh ra
khi thêm một b¿n ghi mới ể phân biệt giữa
các b¿n ghi trong một b¿ng.Trưßng
AutoNumber không thể bị sửa ổi..
4 bytes (16 bytes nếu
thuộc tính FieldSize ược
thiết lập là Replication ID).
Yes/No
Trưßng chỉ chứa một trong hai giá trị
(Yes/No, True/False, hoặc On/Off).
1 bit.
OLE Object
Một ối tượng (như trang tính Excel, văn
b¿n Word, hình hoạ, âm thanh) ược liên
kết hoặc nhúng vào b¿ng.
Tối a 1 gigabyte (giới
hạn bái kho¿ng còn trống
trên ổ ĩa)
Hyperlink
Liên kết
Tối a 2048 ký tự
Lookup
Wizard
Tạo ra một trưßng mà cho phép ta nhập
liệu bằng cách chọn giá trị từ một b¿ng
khác, hoặc từ một danh sách các giá trị.
Cùng kích thước với
trưßng khoá dùng ể thực
hiện thao tác tìm kiếm.
Ta chỉ thể thiết lập các thuộc tính này á ph¿n trên cửa sổ thiết kế b¿ng dữ liệu (b¿ng
Design view).
b. Chßnh sāa bÁng
Thêm mßt tr¤ßng vào bÁng dă lißu trong ch¿ ß thi¿t k¿ Design view:
lOMoARcPSD|37922327
1. Má b¿ng á chế ộ Design view.
2. NhÁn dòng muốn chèn thêm cột, nhÁn
Insert Rows trong tab Design trên
thanh ribbon.
3. Trong cột Field Name nhập tên cho trưßng.
4. Trong cột Data Type, nhÁn vào mũi tên,
chọn kiểu dữ liệu từ danh sách
5. Thiết lập các thuộc tính cho trưßng.
6. Ghi lại mọi sự thay ổi khi óng thoát.
Quy ánh tính hÿp lß của dă lißu tr¤ác khi l¤u
1. Má b¿ng á chế ộ Design view.
2. NhÁn chuột vào nút trên thanh công cụ hiển thị trang thuộc tính của
b¿ng. Trên dòng Validation Rule, nhập vào quy tắc xác ịnh tính hợp lệ của dữ liệu.
3. Trên dòng ValidationText, ánh vào lßi thông báo khi dữ liệu nhập vào vi phạm
quy tắc dữ liệu. Ví dụ, <Hàng chỉ có thể ược giao sau 01 ngày tính từ ngày ặt hàng=
Ví dụ: Doanh nghiệp xác ịnh là hàng chỉ
thể ược giao ến khách sớm nhÁt sau một
ngày. Vậy quy tắc xác ịnh tính hợp lệ của dữ
liệu là: [Hạn giao hàng]
>= [Ngày ặt hàng] + 1 (hình bên)
Nếu ta nhập vào hạn giao hàng cùng ngày
hoặc trước ngày ặt hàng, Access hiển thị ngay
lßi c¿nh báo (Validation text).
T¿o chß māc sÃp x¿p dă lißu
1. Má b¿ng trong chế ộ Design view.
2. NhÁn chuột vào nút lệnh Indexes trên thanh công cụ.
lOMoARcPSD|37922327
3. Tại dòng còn trống ¿u tiên trong cột Index Name, ánh vào tên của chỉ mục.
4. Trong cột Field Name, nhÁn chuột vào mũi tên bên ph¿i, chọn trưßng dùng làm
chỉ mục sắp xếp.
5. Nếu muốn chọn nhiều trưßng làm chỉ mục, tại dòng tiếp theo trên cột Field
Name, chọn trưßng tiếp theo (Lưu ý ể cột Index Name bỏ trống trên dòng ó).
Làm lại bước này cho ến khi ã có tÁt c¿ các trưßng muốn có trong chỉ mục (tối a 10
trưßng).
T¿o khóa chính PrimaryKey
Một trưßng có tính chÁt khóa là một trưßng chứa giá trị duy nhÁt, khác nhau giữa các
b¿n ghi, dùngphân biệt giữa b¿n ghi y b¿n ghi khác. Để thiết lập tính chÁt khóa cho
trưßng, má cửa sổ Indexes, nhÁn chuột vào tên trưßng, chuyn thuộc tính
Primary và Unique thành Yes.
T¿o mßt tr¤ßng tìm ki¿m dă lißu tÿ các bÁng dă lißu khác
Khi nhập dữ liệu cho một ơn ặt hàng, ta ph¿i nhập vào tên khách hàng.
Nếu thông tin về khách hàng ó ã ược lưu á trong b¿ng Khách hàng thì
tốt hơn là ta tìm số của khách hàng ó nhập vào b¿ng ơn ặt hàng.
Ta nên chọn cách làm y, vì nếu ta nhập vào bằng tay thì rÁt dễ sai sót.
Khi nhập liệu bị lỗi, Access sẽ không thể nhận ra khách hàng.
Để làm ược iều này, khi thiết kế b¿ng ơn ặt hàng, ta ph¿i làm như sau :
- NhÁn chuột vào trưßng Khách hàng, chọn Lookup Wizard trong cột Data
type. Trong cửa sổ sau hiện ra tiếp theo, chọn mục thứ nhÁt. NhÁn Next ể
tiếp tục
lOMoARcPSD|37922327
- Access hỏi chọn b¿ng nào chứa dữ liệu c¿n tìm. Chọn b¿ng Khách hàng.
NhÁn Next ể tiếp tục.
- Access hỏi giá trị của trưßng nào sẽ ược chọn hiển thị. Nếu ta chọn cùng lúc
nhiều trưßng, chỉ trưßng trên cùng sẽ lưu dữ liệu vào trong b¿n ghi mới. à ây ta chọn 3
trưßng: Mã khách hàng, Tên công ty, và Địa chỉ.
lOMoARcPSD|37922327
- Có tÁt c¿ 3 cột tương ứng với 3 trưßng, nhưng ta chọn mục Hide Key column
ể dÁu không hiển thị trưßng khoá. NhÁn Next ể tiếp tục.
- Bước cuối cùng ta ặt tên cho trưßng : Mã Khách hàng.
lOMoARcPSD|37922327
- Ghi lại mọi sự thay ổi bằng cách nhÁn chuột lên nút lệnh Save trên thanh công
cụ.
b¿ng Đơn ặt hàng á chế ộ nhập liệu. Với mỗi b¿n ghi bÁt kỳ, khi ta c¿n nhập vào một
khách hàng, nhÁn chuột vào mũi tên á bên ph¿i của cột Khách hàng, một danh sách các
khách hàng từ trước ến nay của Doanh nghiệp hiện ra gồm 2 cột, cột n Khách hàng và cột
Địa chỉ Khách hàng. NhÁn chuột vào tên khách hàng trên danh sách này ể nhập dữ liệu vào
trưßng.
Rõ ràng với cách thiết kế trưßng tìm kiếm như thế này, ta có thể kiểm soát hoàn toàn quá
trình nhập liệu, dữ liệu nhập vào luôn luôn úng. Nếu bạn nhập vào tên một khách hàng mà
chưa á b¿ng Khách ng, chương trình sẽ báo lỗi. Hơn nữa, về mặt hiển thị, cột Khách
hàng á b¿ng ơn ặt hàng hiển thị tên khách hàng, nhưng thực tế cột y lại lưu giá trị
Khách hàng. Điều này cho phép gi¿m kích thước của CSDL vì mã khách hàng thì ngắn hơn
tên khách hàng.
Má mßt bÁng dă lißu
1. Trong cửa sổ Database, click Tables dưới Objects.
lOMoARcPSD|37922327
2. Chọn tên của B¿ng muốn má.
3. Để má b¿ng á chế ộ thiết kế, Design view, nhÁn Design trong thanh công cụ của
cửa sổ Database.
4. Để má b¿ng trong khung nhìn dạng lưới, Datasheet, nhÁn Open.
Sā dāng thanh công cā của Trang dă lißu Datasheet
Sau khi ã thiết kế xong b¿ng dữ liệu , bÁm ể chuyển dang chế ộ nhập liệu.
Các nút lệnh thao tác chính ối với một b¿ng trên thanh công cụ Toolbar:
Cắt, copy, dán dữ liệu.
In, xem trước khi in một báo cáo
Sắp xếp theo thứ tự tăng d¿n, gi¿m d¿n
Lọc dữ liệu theo giá trị chọn, theo form.
Tìm kiếm thông tin, thay thế bằng thông tin mới.
Thêm, xoá một b¿n ghi.
Mô hình liên kết giữa các b¿ng trong một CSDL.
Liên kết với các ứng dụng Office khác.
Xoá một dòng, một b¿n ghi
Lập Khóa chính cho một b¿ng.
Ngoài ra:
- Để thêm một trưßng dữ liệu, chọn Column trong menu Insert.
- Để ổi tên một cột dữ liệu, nháy úp mũi tên chuột lên tiêu cột, ánh vào tên
mới.
- Để thay ổi thứ tự của một cột, nhÁn trỏ chuột vào cột ó, giữ chuột và kéo cột
ó ến vị trí mới.
- Muốn giÁu i một cột, dùng chuột chọn cột ó, chọn lệnh Hide columns trong
menu Format.
- Muốn luôn cho một cột ược hiển thị cho ta cuộn màn hình, dùng lệnh
Format\Freeze columns.
- Muốn thay ổi ộ rộng của một cột, một dòng:
lOMoARcPSD|37922327
Nháy úp chuột vào lề của cột
thay ổi chiều rộng của cột úng
bằng chiều rộng
của dữ liệu
NhÁn giữ trỏ chuột, kéo lề
của dòng, cột thay ổi chiều
cao, ộ rộng của
dòng hay cột ó.
5.2.3.3 Tạo các liên kết giữa các bảng dữ liệu
a. T¿i sao l¿i phÁi xác ánh liên k¿t ?
Sau khi ã xây dựng và nhập xong dữ liệu vào các b¿ng, ta ph¿i chỉ cho Microsoft Access
làm thế nào kết xuÁt các dữ liệu. Bước ¿u tiên ể làm iều ó là xác ịnh các mối liên kết,
relationship, giữa các b¿ng.
dụ á ây, các trưßng từ 3 b¿ng khác nhau (nhân viên,khách hàng, bán hàng ) ược tập
hợp lại hiển thị nội dung của cùng một hóa ơn bán hàng . Stập hợp này ược thực hiện
nhß có các liên kết giữa các b¿ng.
Liên kết sẽ tìm kiếm các b¿n ghi
có giá trị giống
nhau tại trưßng dữ liệu
chung, thông thưßng giữa trưßng thuộc tính
khóa chính, chứa giá trị ID duy
nhÁt ặc trưng
cho từng b¿n ghi, và một khoá ngoại - Foreign key - từ b¿ng khác.
Ví dụ, mỗi nhân viên có thể liên kết ến nhiều mặt hàng mà nhân viên ó ã bán, bằng cách
tạo relationship giữa b¿ng nhân viên và b¿ng bán hàng thông qua trưßng nhân viên
b. Các lo¿i quan hß
Quan hß Mßt NhiÁu
Mối quan hệ một-nhiều loại hình phổ biến nhÁt của liên kết. Trong liên kết y, một
b¿n ghi á B¿ng A có thể có nhiều b¿n ghi tương ứng á B¿ng B, nhưng mỗi b¿n ghi á B¿ng B
chỉ có một b¿n ghi tương ứng duy nhÁt á B¿ng A.
Khóa ngoại
Trưßng mã nhân viên xuÁt hiện trong c¿ hai
b¿ng
lOMoARcPSD|37922327
Ví dụ, b¿ng nhân viên có liên kết một-nhiều với b¿ng bán hàng vì mỗi nhân viên có thể
bán nhiều hàng, trong khi một hàng chỉ có thể thực hiện bái một nhân viên.
Quan hß nhiÁu nhiÁu
Trong loại hình này, một b¿n ghi á B¿ng A có thể có nhiều b¿n ghi tương ứng á B¿ng B
ngược lại. Quan hệ này chỉ ược thể hiện khi một B¿ng thứ 3 chứa dữ liệu từ c¿ hai
B¿ng A và B¿ng B.
Ví dụ, mối liên kết giữa b¿ng nhân viên và b¿ng khách hàng nhiều - nhiều vì nhân viên
thể bán cho nhiều khách hàng mỗi khách hàng thể mua nhiều mặt hàng của nhiều
nhân viên
Quan hß mßt mßt
Trong mối quan hệ loại này, mỗi b¿n ghi á B¿ng A chỉ một b¿n ghi duy nhÁt tương
ứng á B¿ng B và ngược lại. Dạng quan hệ y thưßng hiếm, bái thông tin loại y có thể lưu
luôn vào một b¿ng chung..
c. c ánh liên k¿t
Xây dựng liên kết bằng cách thêm các b¿ng liên quan vào cửa sổ Relationships
Window, rồi kéo trưßng khóa từ b¿ng này và th¿ vào trưßng tương ứng của b¿ng kia
Một nhân viên
Có thể bán nhiều hàng
Nhưng một hàng chỉ ược bán bái một nhân viên
lOMoARcPSD|37922327
Kiểu liên kết Access tạo ra sẽ dựa trên các trưßng liên kết ược xác ịnh :
- Liên kết một – nhiều nếu chỉ có một trong các trưßng liên kết là khoá chính hoặc có
thuộc tính chỉ mục duy nhÁt (unique index)
- Liên kết một một nếu c¿ hai trưßng liên kết khóa chính hoặc thuộc tính
unique indexes.
- Liên kết Nhiều – nhiều khi có một b¿ng thứ 3 có khóa chính bao gồm hai trưßng là
khoá ngoại (foreign key: một hoặc nhiều trưßng tham chiếu ến trưßng khóa
chính của các b¿ng khác) từ hai b¿ng kia.
5.2.3.4 Truy vấn - Query
Như ã nói á trên, truy vÁn là công cụ mạnh của Access cho phép ngưßi sử dụng dùng ngôn
ngữ truy vÁn có cÁu trúc SQL (Structure Query Language) hoặc công cụ truy vÁn bằng ví dụ
QBE (Query by Example) ể thực hiện việc rút trích, chọn lựa dữ liệu hoặc cập nhật dữ liệu
(thêm, sửa, xóa) trên các b¿ng. Có nhiều loại truy vÁn, thông dụng nhÁt là Select query,
ngoài ra còn có một số loại khác như: Update query, Append query, Delete query, rosstab
query…
a. Quy trình t¿o mái mßt query
Trong cửa sổ Database, nhÁn Create chọn Query Design nếu muốn tự thiết kế truy vÁn,
chọn Query Wizard nếu muốn Access tự tạo ra các truy vÁn cho mình.
Nếu ta chọn Query Design, cửa sổ Show Table hiện ra yêu c¿u ta chọn các b¿ng c¿n ể xử
lý thông tin. NhÁn úp chuột vào tên của b¿ng mà ta lÁy các b¿n ghi của nó làm cơ sá.
lOMoARcPSD|37922327
Xác ịnh mối liên kết giữa các b¿ng trong truy vÁn, nếu (Dùng chuột kéo trưßng liên
kết giữa hai b¿ng từ b¿ng này sang b¿ng kia).
Lưới thiết kế dữ
liệu Datagrid
Chọn các b¿ng
chứa các b¿n ghi
ta muốn xử lý
lOMoARcPSD|37922327
Tại dòng Field, nhÁn o mũi tên bên ph¿i của cột ể làm hiện ra danh sách các trưßng dữ
liệu (Field list),chọn trưßng c¿n thiết từ danh sách. Hoặc ta có thể dùng chuột nhÁn úp vào
tên trưßng hiện ra á phía trên, Access tự ộng chèn trưßng ó vào lưới thiết kế
b. Cách thức chßnh sāa mßt query
Thêm mßt bÁng hoặc mßt truy vấn khác vào mßt truy vấn
1. Má truy vÁn á chế ộ Design view.
2. NhÁn Show Table
NhÁp úp chuột ể
chèn tên trưßng
vào lưới thiết kế,…
… hoặc dùng chuột
ọn tên trưßng từ
lOMoARcPSD|37922327
3. Trong hộp thoại Show Tables, nhÁn tab liệt kê danh sách các ối tượng chứa dữ
liệu ta c¿n làm việc. Nếu b¿ng ta c¿n lại á một CSDL khác thì ph¿i liên kết b¿ng ó vào
CSDL hiện hành trước.
4. NhÁn vào tên của ối tượng ta muốn thêm vào truy vÁn.
5. NhÁn Add, rồi Close.
Chú ý:
- thể thêm b¿ng hoặc truy vÁn khác vào một truy vÁn bằng cách dùng chuột
kéo b¿ng hay truy vÁn ó từ cửa sổ Database vào cửa sổ thiết kế của truy vÁn (Design
view).
- Nếu nhiều b¿ng hay truy vÁn trong một truy vÁn, chúng c¿n ph¿i ược kết
nối.
Фa dă lißu tÿ nhiÁu bÁng hoặc truy vấn vào mßt truy vấn
Khi thêm nhiều b¿ng hoặc truy vÁn vào một truy vÁn, ta c¿n kiểm tra trưßng chung giữa
chúng ph¿i ược kết nối với nhau ể Access có thể kết nối dữ liệu.
Nếu các b¿ng trong một truy vÁn không ược kết nối với nhau, trực tiếp hoặc gián tiếp,
Access không thể xác ịnh ược các b¿n ghi nào ược kết nối với các b¿n ghi nào, do ó nó hiển
thị tÁt c¿ c tổ hợp các b¿n ghi (gọi là một "cross-product" hay "Cartesian product") giữa
các b¿ng. Vì vậy, nếu mỗi b¿ng có 10 b¿n ghi, kết qu¿ của truy vÁn trên sá hai b¿ng sẽ
chứa 100 b¿n ghi (10*10). Điều ó cũng có nghĩa truy vÁn c¿n nhiều thßi gian chạy
thậm chí sẽ tạo ra các kết qu¿ vô nghĩa.
Nếu ta ã tạo các quan hệ giữa các b¿ng trong cửa sRelationships, Access tự ộng hiển thị
ưßng liên kết khi ta thêm các b¿ng vào truy vÁn trong chế ộ Design view. Nếu ã chọn duy
trì tính toàn vẹn tham chiếu, Access cũng sẽ hiển thị "1" á trên ưßng kết nối cho biết b¿ng
nào là á bên một trong mối quan hệ một - nhiều và dÁu vô hạn á bên b¿ng nhiều.
Nếu chưa bao giß tạo quan hệ, Access tự ộng tạo các liên kết nếu ta thêm hai b¿ng vào
một truy vÁn các b¿ng một trưßng cùng tên, chứa kiểu dữ liệu tương thích lẫn nhau,
và nếu một trong những trưßng liên kết có thuộc tính khóa chính. Biểu tượng một và nhiều
không ược hiển thị trong trưßng hợp y, bái ta không chọn duy trì tính toàn vẹn tham
chiếu.
lOMoARcPSD|37922327
Cách thực hißn các tính toán trong mßt truy vấn
nhiều kiểu nh toán trong một truy vÁn: nh tổng, tính trung bình giá trị của một
trưßng, nhân giá trị của nhiều trưßng, … Kết qu¿ hiển thị dựa trên dữ liu hiện tại ược lưu
trong các b¿ng, Access sẽ chạy lại các tính toán khi ta má một truy vÁn, vì vậy kết qu¿
luôn ph¿n ánh số liệu mới nhÁt.
Để tính toán, ta có thể sử dụng các hàm do Access cung cÁp hoặc các hàm do ta tự viết
ra. Sử dụng các hàm có sẵn, ược gọi hàm tính tổng - totals calculation, nếu ta muốn tính
toán trên một nhóm hoặc toàn bộ các b¿n ghi. c hàm này bao gồm sum, average, count,
minimum, maximum, standard deviation, hoặc variance. Lưu ý chỉ chọn một hàm tính tổng
cho mỗi trưßng ta c¿n xử lý số liệu, trong dòng Total trong lưới thiết kế.
Trong lưới thiết kế, ta thể chỉ ra các tiêu chuÁn hạn chế nhóm các b¿n ghi sẽ ược
tính toán.
Một tính toán tuỳ chọn cho phép ta tính toán các giá trị dạng số, ngày tháng và ký tự dựa
trên các số liu từ một hoặc nhiều trưßng, ví dụ tính tiền thuế, tổng tiền tr¿, … Để làm ược
iều y, ta ph¿i tạo trưßng tính toán, calculated field, ngay trong lưới thiết kế, bằng cách
nhập vào biểu thức vào một ô Field còn trống trong lưới thiết kế truy vÁn.
Ví dā:
Tính tổng số ơn vị s¿n phÁm còn á trong kho bằng cách cộng hai trưßng Số lượng s¿n
phÁm còn trong kho và Số lượng s¿n phÁm ã ặt hàng sắp nhập kho:
Sum([SLgKho]+[SLgĐHg]).
Ta cũng có thể dùng Update query sửa ổi ồng loạt giá trị cho một trưßng, ví dụ tăng ồng
loạt 5% giá bán các s¿n phÁm.
Ví dā:
Để khen thưáng nhân viên giao dịch, Giám ốc muốn biết thành tích bán hàng họ ã
thực hiện ược. Khi ó, phòng bán hàng ph¿i liệt chi tiết từng hợp ồng bán hàng mỗi
nhân viên ã thực hiện ược. Thông tin thể hiện bao gồm Tên nhân viên, Mã ơn ặt hàng, tổng
giá trị hàng bán trong ơn ặt hàng ó (không tính tiền vận chuyển).
Kết nối một nhiều
chọn toàn vẹn
tham chiếu
Kết nối một nhiều
không chọn toàn vẹn
tham chiếu
Chọn các b¿n ghi á 2
b¿ng mà có giá trị
trưßng liên kết như nhau
lOMoARcPSD|37922327
Ta thiết kế như sau:
Cột thứ 3 là một trưßng tính toán. Trưßng này ược ặt tên <Tổng Doanh số=, với biểu
thức tính toán là:
[Số lượng]*[Đơn giá]*(1-[Chiết khÁu])
Để ¿m b¿o thống nhÁt kích thước của kết qu¿, ta dùng hàm CLng (convert long) nhằm
mục ích chuyển ổi dữ liệu kiểu số sang loại Long Integer. Clng([Số lượng]*[Đơn giá]*(1-
[Chiết khÁu]))
Ta muốn tính tổng giá trị của hợp ồng, vậy nên dùng hàm Sum:
Sum(Clng([Số lượng]*[Đơn giá]*(1-[Chiết khÁu])))
Kết qu¿ khi chạy truy vÁn sẽ như
sau:
à ây ta thÁy nhân viên mang mã NV01 bán ược 2 hợp ồng, số 1 số 5, với gtrị mỗi
hợp ồng là $600 và $ 1.500.
lOMoARcPSD|37922327
Đến ây, Giám c muốn tổng kết mỗi nhân viên ạt ược doanh số bán hàng bao nhiêu:Yêu
c¿u này nghĩa là, ông ta không quan tâm ến cá nhân mỗi ơn ặt hàng (mã, ngày tháng, số
lượng mỗi loại s¿n phÁm,…), mà chỉ quan tâm ến tổng tiền hàng cộng dồn mà nhân viên ó
ã bán ược.
Thực hiện yêu c¿u này, ta ơn gi¿n là chỉ bỏ i trưßng MãĐĐHg á trong lưới thiết kế trong
truy vÁn vừa tạo phía trên: dùng con chuột nhÁn vào thanh tiêu ề của cột ó, cột chuyển sang
màu en, bÁm phím Delete.
Kết qu¿ thể hiện như hình:
Tuy vậy, ta cũng cách
như sau:
Đánh vào biểu thức:
Clng([Số lượng]*[Đơn
giá]*(1[Chiết khÁu]))
trong dòng Field, chọn
Sum
trong dòng Total. Kết
qu¿
cho ra giống hệt trên.
c. Các truy vấn hành ßng - Action query
Truy vÁn hành ộng là một loại truy vÁn mà có tác ộng thay ổi ến t nhiều b¿n ghi chỉ
trong một l¿n thực hiện. Có 4 kiểu truy vÁn hành ộng:
- Truy vÁn xoá: Delete
lOMoARcPSD|37922327
- Truy vÁn sửa : Update
- Truy vÁn bổ sung (thêm b¿n ghi): Append
- Truy vÁn tạo b¿ng: Make-table
Delete query:
Xoá một nhóm các b¿n ghi từ một hoặc nhiều b¿ng.
Ví dā: Xoá tÁt c¿ các ơn ặt hàng của khách hàng có mã số là ALFKI.
Các bước thiết kế ược mô t¿ như hình dưới.
- NhÁn Create, chọn Query Design, chọn b¿ng Đơn ặt hàng vào trong lưới thiết kế. NhÁn
vào biểu tượng chọn Action query, chọn Delete Query.
- NhÁn úp vào dÁu * á trong b¿ng Đơn ặt hàng. Hành ộng này sẽ chọn tÁt c¿ các trưßng
của b¿ng vào trong lưới thiết kế.
- NhÁn úp vào dòng Khách hàng
trong b¿ng Đơn ặt hàng. Tại dòng Criteria,
ánh vào công thức: =[Tên khách hàng c¿n
xoá].
- NhÁn vào nút chạy truy vÁn.
Khi Access chạy truy vÁn này, tự ộng ưa
ra một cửa sổ hỏi ta Tên khách hàng c¿n x
là gì?. Ta gõ vào
<ALFKI=, nhÁn OK
- Để ¿m b¿o tránh rủi ro, Access sẽ hỏi l¿n cuối nếu ta muốn xoá các b¿n ghi này.
NhÁn Yes nếu ồng ý xoá, Cancel nếu huỷ lệnh.
Đến ây, khi ta nhÁn Yes, 1 b¿n ghi có Mã khách hàng = ALFKI sẽ bị xoá.
Update query:
Thực hiện các thay ổi về mặt tổng thể ến một nhóm các b¿n ghi của một hoặc nhiều b¿ng.
nghĩa dùng chỉnh sửa dữ liệu của các trưßng trong một hoặc nhiều b¿ng Các bước
tiến hành:
- Chọn các b¿ng truy vÁn/nguồn
lOMoARcPSD|37922327
- Chọn menu Design trong nhóm Query Type chọn Update
- Kéo các trưßng c¿n sửa và các trưßng dùng ể lập iều kiện vào hàng Field.
Chú ý: cùng một trưßng có thể là trưßng c¿n sửa, vừa là trưßng iều kiện
- Đặt biểu thức vào ô Update To của các trưßng c¿n sửa. Giá trị của các biểu thức
sẽ là giá trị mới của các trưßng này
- Đặt các biểu thức iều kiện vào các ô Criteria của các trưßng iều kiện
- Ghi thiết kế và ặt tên cho truy vÁn
- Thực hiện truy vÁn.
Kết qu¿: Một số trưßng sẽ ược chuyển ổi theo như thiết kế
Make-table query
Make-table query tạo một b¿ng mới từ một ph¿n hoặc tÁt c¿ dữ liệu chứa trong một
hoặc nhiều b¿ng. Make-table query thưßng ược dùng ể tạo b¿n lưu số liệu, tạo b¿ng chứa tÁt
c¿ các b¿n ghi cũ trước khi xoá chúng ra khỏi CSDL hiện tại.
Quy trình:
- Tạo một truy vÁn, chọn các b¿ng hoặc truy vÁn chứa các b¿n ghi ta muốn
trong b¿ng mới.
- Trong Design view, nhÁn vào mũi tên bên cạnh nút lệnh Query Type trên
thanh Ribbon, nhÁn Make Table. Hộp thoại Make Table xuÁt hiện.
- Trong hộp Table Name, nhập vào tên của b¿ng ta muốn tạo.
- NhÁn Current Database tạo b¿ng mới trong CSDL hiện thßi ang má; hoặc
nhÁn Another Database ánh vào tên của CSDL ta muốn lưu b¿ng mới. Đánh vào tên
ưßng dẫn nếu c¿n.
- NhÁn OK.
- Kéo các trưßng muốn có trong b¿ng mới từ field list vào khung thiết kế truy vÁn
(design grid).
- Nhập vào tiêu chuÁn trong ô Criteria.
- Xem kết qu¿ của b¿ng mới trước khi tạo nó, nhÁn View trên thanh
Ribbon.
Muốn quay lại thiết kế tiếp, nhÁn View .
- NhÁn Run trên thanh Ribbon
Lưu ý:
- BÁm CTRL+BREAK ể ngắt quá trình tạo b¿ng mới khi ang chạy.
- Dữ liệu trong b¿ng mới ược tạo sẽ không kế thừa các thuộc tính của b¿ng gốc.
Append query:
Thêm các b¿n ghi từ một b¿ng vào một b¿ng khác
lOMoARcPSD|37922327
Quy trình:
- Tạo một truy vÁn chứa các b¿n ghi mà ta muốn thêm vào b¿ng khác.
- Trong cửa sổ Design view, nhÁn mũi tên bên cạnh Query Type á trên thanh công
cụ, nhÁn Append. Hộp thoại Append xuÁt hiện.
- Trong hộp Table Name, nhập tên của b¿ng mà ta muốn thêm các b¿n ghi vào.
- NhÁn Current Database, nếu b¿ng á trong database hiện hành; hoặc nhÁn Another
Database và ánh vào tên của database nơi b¿ng ang ược lưu. Đánh vào ưßng dẫn nếu c¿n
thiết.
- Ta cũng có thể nhập ưßng dẫn tới một CSDL Microsoft FoxPro, Paradox, hoặc dBASE.
- NhÁn OK.
- Dùng chuột lôi từ danh sách các trưßng vào lưới thiết kế các trưßng ta muốn thêm
vào b¿ng khác và các trưßng mà ta muốn lÁy làm tiêu chuÁn ể chọn lựa các b¿n ghi.
- Nếu tÁt c¿ các trưßng của hai b¿ng cùng tên như nhau, ta ơn gi¿n chỉ c¿n lôi dÁu (*)
vào lưới thiết kế.
- Nếu các trưßng ta vừa chọn có cùng tên á c¿ hai b¿ng, Access tự ộng iền tên tương ứng
vào dòng Append To. Nếu không, ta ph¿i tự nhập vào tên của các trưßng của b¿ng ta
muốn thêm b¿n ghi tới vào trong dòng Append To.
- Trong ô Criteria, chỉ rõ tiêu chuÁn của các b¿n ghi ược lựa chọn.
- Để kiểm tra các b¿n ghi trước khi chạy query, nhÁn vào View trên thanh công
cụ. Để quay trá lại Design view, nhÁn l¿n nữa View .
- NhÁn Run ể thực hiện truy vÁn.
Ví dā:
Nhân dịp 10 năm ngày thành lập Doanh nghiệp, Giám ốc quyết ịnh sẽ gửi thư c¿m ơn
ến tÁt c¿ các khách hàng tại nội.. Bộ phận Tin học nghiên cứu xem xét dữ liệu, nhận
thÁy tÁt c¿ các thông tin về khách hàng ược lưu á hai b¿ng, một tên là Khách hàng chứa các
thông tin liên quan ến các khách hàng của doanh nghiệp từ năm 1999, một n Khách hàng
chứa các thông tin liên quan ến các khách hàng của Doanh nghiệp từ trước năm 1999.
Thực hiện nhiệm vụ, Bộ phận Tin học khi ó sph¿i kết xuÁt từ hai b¿ng các b¿n ghi
trưßng Địa chỉ giá trị nội vào một b¿ng thứ ba tên Thư khuyến mại. Họ tạo ra
một b¿ng mới có tên Thư khuyến mại, trong ó chứa tÁt c¿ các b¿n ghi của các khách hàng
có trụ sá tại Hà nội.
lOMoARcPSD|37922327
Bước 1: Tạo query Make-table dựa trên
b¿ng Khách hàng. Chỉ ra các trưßng ta
muốn có á trong b¿ng mới. Xem hình.
Bước 2: Chọn Make-table query từ trong
danh sách Action Query. Trong hộp thoại
Make table, ánh vào Thư c¿m ơn rồi nhÁn
OK.
Bước 3: NhÁn Run ể thực hiện truy vÁn. Đóng lại truy vÁn này lại.
Bước 4: Tạo một Append query dựa trên b¿ng Khách hàng cũ. NhÁn New trong cửa sổ
Database, chọn Design view, chọn b¿ng Khách hàng cũ từ danh sách các b¿ng.
Dùng chuột lôi các
trưßng Tên công ty,
Ngưßi ại diện, Địa
chỉ, Tỉnh thành, iện
thoại vào trong lưới thiết
kế (xem hình).
Trong cột chứa
trưßng Tỉnh thành,
tại dòng
Criteria ánh vào
<Hà nội=.
lOMoARcPSD|37922327
Bước 5: Chọn kiểu
Append query, trong hộp thoại
Append, nhập vào Thư c¿m ơn
trong mục Table Name.
Bước 6: Kiểm tra lại trước khi chạy query. NhÁn View. Nếu các b¿n ghi ược liệt kê úng
theo yêu c¿u ặt ra, chuyển sang bước tiếp.
Bước 7: NhÁn Run ể thực hiện truy vÁn. Đóng lại truy vÁn này lại.
Đến ây bộ phận tin học ã lọc xong dữ liệu. Việc in thư, bao gồm phongvà lá thư, cho
từng khách hàng sẽ bằng cách hoặc tự ộng dùng tính năng Mail-merge trong Microsoft
Word, hoặc là sử dụng Report trong Microsoft Access.
d.Xử lý một số tình huống (thông qua ví dụ)
Tình huống 1
Báo cáo tổng doanh số bán của từng s¿n phÁm, liệt kê theo danh mục của s¿n phÁm ó
theo tên, thứ tự tăng d¿n.
Gi¿i pháp:
- Do sắp xếp theo danh mục s¿n phÁm và tên của s¿n phÁm, vậy nên trong truy vÁn ta
ph¿i hai b¿ng Danh mục hàng và S¿n phÁm nhằm lÁy giá trị của hai trưßng Tên danh
mục và Tên s¿n phÁm ể hiển thị.
- Doanh số của một s¿n phÁm trong một ơn ặt hàng bằng số lượng nhân với ơn giá
bán. Dữ liệu này ược lưu trong b¿ng Đơn ặt hàng chi tiết nên ph¿i ưa vào lưới thiết kế.
Để tính tổng doanh số, tại dòng Field nhập vào biểu thức: Đơn giá ta ph¿i dùng hàm Sum tại
dòng Total của lưới thiết kế.
lOMoARcPSD|37922327
- Nhằm sắp xếp, ta chọn
Ascending tại dòng Sort.
- Sau khi ã thiết kế xong, nhÁn View
xem kết qu¿.
Tình huống 2
Báo cáo tổng doanh số bán ra của mỗi danh mục hàng.
Gi¿i pháp:
- Vì c¿n có tên danh mục hàng nên ph¿i ưa b¿ng Danh mục hàng vào trong truy vÁn.
- Doanh số bán ược tính từ b¿ng Đơn ặt hàng chi tiết, bằng cách nhân giá trị của hai
trưßng Đơn giá và Số lượng. Ta dùng hàm Sum ể tính tổng của nó.
- Vì hai b¿ng Danh mục hàng và b¿ng Đơn ặt hàng chi tiết không có trưßng nào chung
liên kết, vậy ph¿i ưa vào một b¿ng trung gian có chứa trưßng chung với c¿ hai b¿ng trên, ó
là b¿ng S¿n phÁm: trưßng Mã s¿n phÁm chung với Đơn ặt hàng chi tiết và trưßng Mã danh
mục chung với b¿ng Danh mục hàng.
- Xác lập mối quan hệ giữa các b¿ng.
lOMoARcPSD|37922327
- Cách thiết kế
giống trưßng hợp
trên, nhưng bỏ i cột của
trưßng Tên s¿n phÁm.
- NhÁn View
ể xem kết qu¿
Tình huống 3
Liệt kê doanh số tÁt c¿ các ơn ặt hàng ã hoàn thành giữa hai ngày nào ó.
Gi¿i pháp:
- TÁt c¿ các thông tin về mỗi một l¿n bán hàng ược lưu trong hai b¿ng Đơn ặt hàng
Đơn ặt hàng chi tiết, do ó ta sẽ ưa hai b¿ng này vào trong lưới thiết kế. Thiết lập mối quan
hệ giữa hai b¿ng này.
- Một khi ơn ặt hàng ã hoàn thành thì tßng Ngày giao hàng sẽ ph¿i chứa giá trị ngày
tháng, bằng không sẽ là giá trị trống. Vì vậy, chọn trưßng Ngày giao hàng làm thông tin ¿u
tiên. Để giới hạn chỉ cho những ơn hàng giữa hai ngày nhÁt ịnh, ta nhập vào công thức:
Between [Ngày bắt ¿u] And [Ngày kết thúc] trong dòng Criteria. LÁy thêm trưßng Mã Đơn
ặt hàng. Tạo thêm thông tin về Doanh số hàng bán (xem hình). Khi chạy truy vÁn y,
Access sẽ không biết [Ngày bắt ¿u] và [Ngày kết thúc] là gì, vì vậy nó coi ó là một biến số,
và do ó sẽ hiển thị một cửa sổ ể hỏi giá trị của các biến số này.
lOMoARcPSD|37922327
- NhÁn nút Datasheet View ể xem kết qu¿ hiển thị.
Đ¿u tiên, Access sẽ hỏi ngày bắt ¿u ... sau ó hỏi ngày kết thúc
…kết qu¿ truy vÁn hiển thị các b¿n ghi
như hình bên.
e. Sā dāng các biểu thức chßn lßc bÁn ghi
Nếu muốn truy vÁn hiển thị theo iều kiện nào ó thì trên hàng Criteria ưa vào iều
kiện hay biểu thức chọn lọc của các trưßng tại cột của trưßng ó Lßc các bÁn
ghi theo biểu thức chßn:
Ta có thể dùng các toán tử sau ây ể lựa chọn các b¿n ghi.
Toán
Ví dā
Ý nghĩa
<
< #1/1/1999#
Trước ngày 1/1/1999
>
> 102
Lớn hơn 102
<=
<= #1/1/1999#
Trước và trong ngày 1/1/1999
>=
>= 102
Lớn hơn hoặc bằng 102
<>
<> #1/1/1999#
Khác ngày 1-1-1999
=
= 1000; = #1/1/99#
Bằng
Betwee
n…and…
Between #1/1/199#
#1/1/2000#
and
Từ ngày 1-1-1999 ế ngày 1-1-
2000
Like
Like <Hà nội=
Bằng Hà nội
Các ký tự thay th¿ (Wild character)
lOMoARcPSD|37922327
Khi thiết kế một truy vÁn, ôi khi ta muốn tìm kiếm theo một khuôn dạng linh hoạt chứ
không ph¿i cố ịnh. Ví dụ Ta muốn tìm tÁt c¿ các kch hàng tên bắt ¿u bằng chữ <H=,…
Khi ó, ta dùng ký tự thay thế với từ khoá Like hoặc not like.
Ký tự
Ý nghĩa
*
Thay thế một số bÁt kỳ các ký tự
?
Thay thế một ký tự tại vị trí ? xuÁt hiện
#
Thay thế một ký tự số tại vị trí # xuÁt hiện
[ ]
Thay các ký tự bÁt kỳ trong ngoặc vuông
!
Thay thế tự bÁt k ngoại trừ ký tự sau dÁu than
trong ngoặc vuông
-
Từ ký tự ến ký tự
Ví dā:
Biểu thức
Các giá trá có thể có
Like <Hư?ng=
Hương, Hưáng, Hưßng,…
Like <L*ng=
Long, Ling, Levering,…
Like <*th=
128
th
, Smith, Breath,…
Like <*on*=
condinments, confection, congress,…
Like <10/*/2000=
TÁt c¿ ngày mồng 10 các tháng
Like <1#23=
1123, 1223, 1323,…
Like <Hư[ơá]ng=
Hương, Hưáng, nhưng không có Hưßng,…
Like <Sm[!au]th=
Khác với Smath và khác Smuth
Like <X[1-9]BC=
X1BC, X2BC,…X9BC
Like <X[a-c]BC=
XaBC, XbBC, XcBC
Tìm lßc các bÁn ghi có hoặc không có giá trá
Nếu muốn chọn các b¿n ghi giá trị của một trưßng nào ó rỗng, thêm từ khoá IS
NULL vào dòng iều kiện Criteria. Ngược lại ta dùng IS NOT NULL.
Ví dā:
lOMoARcPSD|37922327
Trưßng
Ngày chuyển hàng
Ý nghĩa
B¿ng
Đơn ặt hàng
Criteria
is null
Tìm những
hàng i.
ơn
ặt hàng nào vẫn chưa chuyển
Trưßng
Ngày chuyển hàng
Ý nghĩa
B¿ng
Đơn ặt hàng
Criteria
is not null
Tìm những ơn ặt hàng nào ã giao xong hàng cho
khách ( ã hoàn thành hợp ồng).
Lßc các bÁn ghi có chứa giá trá thußc mßt tÁp hÿp nào ó Dùng toán tử IN (danh sách các
giá trị).
Trưßng
Ngày ặt hàng
Khách
hàng
ý nghĩa
B¿ng
Đơn ặt hàng
Khách hàng
Liệt những ngày trong tháng
1 năm 2000 3 khách hàng tên
Long, Hùng hoặc Dũng ã ến ặt
hàng tại doanh nghiệp.
Criteria
Like
#*/01/2000#
IN (Long,
Hùng, Dũng)
f)Các hàm th¤ßng dùng khi thi¿t k¿ mßt truy vấn
Left(chuỗi, n) : Hàm này dùng ể cắt ra n ký tự kể từ phía bên trái của một chuỗi tự.
pháp: Left(chuỗi, số_ký_tự_sẽ_lÁy)
Ví dā: Khi trao ổi nghiệp vụ trên mạng, mỗi bưu cục ược gắn cho một tiêu ề tên. Tiêu ề
này bao gồm hai ph¿n, ph¿n ¿u là ph¿n mã số bưu chính ph¿n tiếp là tên bưu cục. Ví dụ,
trên các Án phÁm nghiệp vụ, ngưßi ta tham chiếu ến Bưu cục Nguyễn Trãi thuộc sá ào
tạo Hà ông bằng tiêu ề 31103 Nguyễn Trãi. Quy tắc ánh số hiệu cho một bưu cục trên mạng
là:
Độ dài mã số tổng cộng: 5 chữ số.
2 ký tự ¿u: Mã tỉnh.
3 ký tự sau: Số hiệu của bưu cục trong mạng nội tỉnh.
Vậy, ể lọc ra các bưu cục thuộc Bưu iện Hà nội, có mã vùng là 10, từ trong b¿ng Túi gói
i ến, ta có thể thiết kế một truy vÁn có cÁu trúc như sau:
lOMoARcPSD|37922327
Field
=LEFT(Mã Bưu cục,
2)
u cục nhận túi
gói
BÁng
Túi gói i ến
Túi gói i ến
Sort
Show
Criteria
= <10=
Right():Dùng hàm Right(chuỗi, n) ể trích ra n ký tự, tính từ ph¿i sang, từ chuỗi ký tự cho
trước.
Gi¿ sử trong b¿ng Bưu cục có các mã bưu cục sau: 10103 A, 15201 B, 30101 C, 28201
D.
Dim sMaxBwucucj as string sMaxBwucucj=Inputbox(<Nhập
vào mã bưu cục=)
Msgbox <Mã số nội tỉnh của Bưu cục là < & Right(sMaxBwucucj,3)
Mid(chuỗi, n, m):Trích ra từ chuỗi m ký tự, kể từ vị trí n.
Trim(chuỗi):Loại bỏ dÁu cách á hai ¿u chuỗi ký tự.
DatePart(Datepart, DateExpr):Thể hiện các giá trị kiểu ngày tháng. Trong ó các gtrị
của Datepart là:
Datepart ý nghĩa Ví dā TrÁ vÁ
[Ngày ặt hàng] = #19-07-2001# [Giß
ến] = 19:07':20''
d Ngày DatePart("d", [Ngày t hàng]) 19 m Tháng DatePart("m", [Ngày ặt
hàng]) 7 yyyy Năm DatePart("yyyy", [Ngày ặt hàng]) 2001
q
Quý
DatePart("q", [Ngày ặt hàng])
3
ww
Tu¿n
DatePart("ww", [Ngày ặt hàng])
w
Ngày
trong tu¿n
DatePart("w", [Ngày ặt hàng])
h
Giß
DatePart("h", [Giß ến])
19
n
Phút
DatePart("n", [Giß ến])
7
s
Giây
DatePart("s", [Giß ến])
20
Sum(biểu thức):Tính tổng của biểu thức. Biểu thức ây có thể chỉ là một trưßng, cũng có
thể là công thức cộng trừ nhân chia của nhiều trưßng.
lOMoARcPSD|37922327
Count: Đếm các giá trị của một trưßng dữ liệu trong một b¿ng. 5.2.3.5
Biểu mẫu nhập liệu (FORM)
a. Khái nißm biểu m¿u
Một biểu mẫu - Form - là một giao diện dạng cửa sổ cho phép ngưßi sử dụng xây dựng
nên các màn hình dùng cập nhật hoặc xem dữ liệu lưu trong c b¿ng, ngoài ra cũng cho
phép ngưßi sử dụng tạo ra các hộp thoại hỏi áp giữa ngưßi sử dụng và hệ thống ứng dụng.
Việc chưa một từ trong tiếng Việt chính xác biểu ạt hết ý nghĩa của khái niệm Form
khiến c chuyên gia tin học khuyên ngưßi dùng nên sử dụng chính từ gốc không dịch. Kể
từ ây trá i, từ Form sẽ ược sử dụng vì trong môi trưßng Access, tÁt c¿ các từ khoá ều bằng
tiếng Anh; việc dùng từ gốc giúp ngưßi dùng làm quen với chương trình nhanh hơn là việc
dùng từ Việt hoá do tránh ược việc ph¿i dịch xuôi rồi lại dịch ngược.
Mối liên kết giữa form nguồn dliệu của ược thể hiện bằng các ối tượng giao
diện ồ họa, ược gọi iều khiển. Kiểu iều khiển ược sử dụng thông thưßng nhÁt ể hiển thị
và nhập liệu là hộp văn b¿n.
Các khung nhìn của form Một Form có ba khung nhìn:
Design view - thiết kế, Form view - dạng cửa sổ và Layout view - dạng lưới dữ liệu.
Ban ¿u, lúc thiết kế form ta dùng chế ộ thiết kế (Design).
lOMoARcPSD|37922327
úng v trí mong muốn, căn hàng,...
Thiết kế xong form dữ liệu, chuyển sang dạng Form view hoặc Datasheet dùng hiển thị
dữ liệu.
thay i
font ch, kiu nét khung, các
hiu ng màu sc,...
Thước o t các iu khin vào
cho phép hin th
các iu khin d liu
iu khin vào form
lOMoARcPSD|37922327
Các khu vực trên mßt form
Form Header: Khu vực trên cùng của một Form. Thông thưßng ngưßi ta sử dụng khu vực
này làm nơi hiển thị dòng tiêu ề của Form.
Form Footer: Khu vực nằm ngang dưới cùng của Form. Khu vực này thưßng chứa các nút
lệnh hành ộng như In, Lọc dữ liệu, Tìm kiếm, Má một Form mới...
Detail: Ph¿n chi tiết của form. Nội dung của tÁt c¿ các trưßng (field) của một b¿ng dữ
liệu (b¿ng) sẽ ược hiển thị á ây. Các ối tượng khác như hình vẽ, b¿ng tính, ối tượng liên kết
OLE cũng ược hiển thị á ph¿n này. Ngưßi ta gọi chung tÁt c¿ các ối tượng y các iều
khiển – control.
Page Header: Khi sử dụng ngắt trang - Page break - trong một form, ta sử dụng khu vực
này ể hiển thị một thanh tiêu ề như nhau cho tÁt c¿ các trang của một form.
lOMoARcPSD|37922327
Page Footer: Khi sử dụng ngắt trang - Page break - trong một form, ta sử dụng khu vực
này duy trì sự hiển thị nhÁt quán cho tÁt c¿ các trang của một form. b. Thi¿t k¿ form:
Trong Access có 2 cách chính ể thiết kế Form
- Tạo Form dùng Form Winzard: Đây là cách nhanh chóng dể có thể tạo ược một form
nhập dữ liệu cho các b¿ng dữ liệu trên một CSDL. Cách này dễ làm nhưng kết qu¿ của nó
không ược tốt lắm, thưßng thì ph¿i chỉnh sửa nhiều thì mới ược Form theo như ý muốn của
ngưßi sử dụng
- Thiết kế Form dùng Design View: Đây là cách tạo Form chuyên nghiệp. Cách này có
nhiều bước phức tạp ồi hỏi nhiều ến kinh nghiệm và trình ộ của ngưßi lập trình. Nhưng kết
qu¿ làm ra luôn áp ứng ược các yêu c¿u khắt khe nhÁt của ngưßi sử dụng
T¿o mái form bằng wizard
1. Trong cửa sổ Database, chọn Create trong nhóm Forms chọn Form Wizard
2. Hộp thoại Form Wizard xuÁt hiện như hình vẽ.
3. Chọn tên b¿ng c¿n tạo Form nhp dữ liệu á mục Tables/Queries. Sau ó Add
(thêm) các trưßng c¿n nhập dữ liệu lên form từ danh sách Available Fields: bằng nút> :
lOMoARcPSD|37922327
4. Chọn kiểu canh lề các ối tượng trên form:chúng ta thẻ chọn một trong các
kiểu á dưới, nhưng tốt nhÁt hãy dùng kiểu Columnar:
5. Nhập tiêu ề cho form
lOMoARcPSD|37922327
6. Chọn Finish ể kết thúc quá trình tạo form:
Thi¿t k¿ form theo nhu c¿u (T¿o Form á ch¿ ß Design View)
Trước khi thực hin thiết kế ta cũng ph¿i thực hiện bước 1 và bước 2 á ph¿n < tạo mới
form bằng wizard= sau ó lựa chọn chế ộ Design View rồi sử dụng các phím chức năng, hộp
công cụ ể tạo Form :
Hộp công cụ tạo Form (Controls)
Để hiển thị hộp công cụ vào Design chọn nhóm Controls.
Hộp công cụ có dạng như sau :
1. Select Objects: Chọn ối tượng
2. Label: Dùng ể tạo một nhãn ể chứa văn b¿n hướng dẫn hoặc tính toán
3. Option Group: Dùng ể tạo một nhóm tự ộng
4. Option Button: Dùng ể tạo một nút lựa chọn
5. Combo box: Dùng ể tạo một danh sách lựa chọn
6. Command Button: Dùng ể tạo nút lệnh khi kích vào sẽ hoành thành một nhiệm
vụ
7. Unbound Objects Freme: Bổ sung vào biểu mẫu một ối tượng OLE
Ý nghĩa các nút:
lOMoARcPSD|37922327
8. Page Break: Cho máy in biết bắt ¿u một trang mới
9. Subform/Subreport: Bổ sung một biểu mẫu phụ vào biểu mẫu chính
10. Rectangle: Tạo một hình chữ nhật
11. Control Wizard: Bật tắt chế ộ Control Wizard
12. T ext Box: Tạo một hộp văn b¿n
13. Toggle Button: Tạo một nút thay ổi từ On sang Off
14. Check Box: Tạo một hộp kiểm tra
15. List Box: Tạo một hộp liệt kê qua ó có thể chọn lựa một giá trị
16. Image: Hiển thị ồ họa trên form
17. Bound Objects Frame: Hiển thị nội dung một trưßng OLE
18. Tab Control: Chèn một iều khiển Tab
19. Line: Vẽ một ưßng thẳng
20. More Controls: Kích vào nút này sẽ má ra danh sách các iều khiển khác có thể
ược thêm vào hệ thống
Thiết kế mẫu biểu bằng hộp công cụ:
-Sử dụng Textbox hoặc Fields list ể thiết kế.Ta thực hiện các bước sau:
- Tại cửa sổ Database: Trên thanh Ribbon ta chọn Create, trong nhóm Forms chọn Form
Design.
- XuÁt hiện Form trắng á chế ộ Design View
- Tạo tiêu ề form
Kích ph¿i chuột lên Form chọn Form Header/Footer
Kích chuột vào nút (lable) trên nhóm lệnh Controls và ưa chuột ra vùng Form
Header, gõ tiêu ề ( ví dụ : Phi¿u chi ti¿t bán hàng)
- Thiết kế các trưßng
Trên thanh Ribbon á nhóm lệnh Tools kích chuột vào Add Existing Fields
Kéo các trưßng c¿n thiết từ hộp thoại vào ph¿n Detail của form
- Cửa sổ thiết kế form như sau:
lOMoARcPSD|37922327
- Chọn File/Save ể lưu biểu mẫu này
- Đóng cửa sổ thiết kế lại. Nếu muốn chạy 1 Form vừa tạo thì từ cửa sổ Database trong
thanh Navigation Pane kich ph¿i chuột vào tên Form, rồi chọn Open .
Sā dāng Combo Box và check Box :
Như ã giới thiệu á trên. Hộp Combo Box ược dùng ể tạo danh sách lựa chọn cho một dữ
liệu cho 1 trưßng bÁt kỳ. Hộp CheckBox ược dùng chọn lựa giá trị Yes hoặc No cho
trưßng có kiểu logic.
Gi¿ sử chúng ta có CSDL sau:
Gi¿ sử b¿ng nguồn Nhân viên ã có dữ liệu Yêu c¿u:
Tạo một form cho phép nhập danh sách bán hàng như sau:
lOMoARcPSD|37922327
Khi nhập dữ liệu thì trưßng Mã nhân viên ược phép lựa chọn giá trị từ một danh sách có
sẵn.
Trình tự thi¿t k¿ nh¤ sau:
Tạo form mới, dùng b¿ng Bán hàng làm nguồn dữ liệu cho Form
Tắt chức năng Control Wizard trong nhóm lệnh Controls trên thanh Ribbon
Kéo các trưßng ( không ph¿i trưßng MãNV) từ hộp Field List ặt vào một vị trí trên
form
Tạo ComboBox nhập mã nhân viên cho trưßng nhân viên bằng ch lựa chọn
giá trị từ danh sách ã có từ b¿ng Nhân viên:
- Chọn nút Combo Box trên nhóm lệnh Controls trên thanh Ribbon.
- Kéo trưßng MaNV từ hộp Field List ặt vào vị trí trên form. Kết qu¿ Access tạo một
combo box thuộc vào trưßng Mã nhân viên
- Má b¿ng thuộc tính của ComboBox vừa tạo cho trưßng nhân viên ( click chuột
ph¿i vào ComboBox vừa tạo). Thiết lập một số thuộc tính như sau
Control Source: Mã nhân viên
Row soruce type:Table/Query
Row soruce: Nhân viên(tên b¿ng/truy vÁn c¿n lÁy dữ liệu)
Column Count: 2 (số cột trong b¿ng/ truy xÁn ược hiển thị tính từ trái sang
ph¿i)
Bound Column: 1 (cột ược chọn nhận dữ liu, á ây ta chọn cột Mã nhân
viên, các cột khác óng vai trò hiển thị). Sā dāng command button:
lOMoARcPSD|37922327
Như giới thiệu á trên Command Button tạo nút lệnh khi kích vào sẽ hoành thành
một nhiệm vụ. Cụ thể có thể sử dụng nút lệnh ó ể chạy 1 query hoặc 1 form bÁt kỳ
Sā dāng Nút lßnh nh¤ sau:
NhÁn chuột chọn nút lệnh Control Wizard trên nhóm lệnh Controls của
thanh Ribbon.
Chọn nút Command Button trên nhóm lệnh
Controls của thanh Ribbon, nhÁn trỏ chuột vào vị trí nơi
nút lệnh sẽ ược ịnh vị.
Cửa sổ Command Button Wizard hiện ra. Trong cửa sổ này, ô Categories
phân loại các nhóm hành ộng, ô Action liệt kê các hành ộng thuộc mỗi một
nhóm hành ộng á bên ô Categories. Ví dụ: nếu muốn nút lệnh này má một
Form(hoặc query) ã tta chọn Form Operations (Miscellaneous) á
bên ô Categories, tiếp ó chọn hành ộng Open Form (run query) á bên ô
Action. NhÁn Next tiếp tục.Tương tự ta thể chọn Close Form nếu
muốn ống Form
Chương trình
hỏi: <Bạn
muốn nút lệnh
Form (hoặc
query) nào ?=, ta
chọn Form(
query) c¿n
bằng ch nhÁn
chuột vào tên
Form(query) trong ô danh sách các
Form( query) .
NhÁn Next ể tiếp tục.
Chọn một trong hai lựa chọn.
lOMoARcPSD|37922327
Lựa chßn ü: Form( query) hiển thị chỉ một số b¿n ghi cụ thể;
Lựa chßn ý: hiển thị tÁt c¿ các b¿n ghi.
NhÁn Next tiếp tục
Tại bước cuối cùng, ta có thể chọn nút lệnh có hình như (Picture) hoặc có
lßi chú dẫn (Text).
Nếu chọn Picture,
chỉ ra hình như
muốn có. Nút lệnh
sẽ có dạng
Nếu chọn Text, ánh nhãn cho nút vào
dòng trống ( vd là ơn ặt hàng). Nút lệnh
sẽ có dạng
Bước tiếp theo, ta ặt
tên cho nút lệnh(ví
dụ ơn ặt hàng) rồi
chọn
Finish. Chuyển sang
chế ộ View ể xem kết qu¿
lOMoARcPSD|37922327
Thay ßi kích th¤ác các khu vực trên mßt Form
Có thể tăng hoặc gi¿m chiều cao, ộ rộng từng vùng của form và report. Khi thay ổi ộ rộng
của một vùng, ta thay ổi ộ rộng của toàn bộ form hoặc report.
1. form (hoặc report) á chế
Design view.
2. Thay ổi chiều cao hoặc ộ rộng bằng
cách ặt con trỏ vào lề dưới hoặc l ph¿i của
vùng.
3. NhÁn giữ và kéo chuột lên xuống
thay ổi cao, trái - ph¿i thay ổi rộng. Để
thay ổi c¿ ộ rộng và chiều cao, ặt con trỏ chuột
vào góc dưới bên ph¿i kéo theo ưßng chéo
theo hướng má rộng.
Chßnh sāa các iÁu khiển trên form
Ta có thể di chuyển, ổi kích thước, căn hàng các iều khiển trên form.
1. Để chọn một iều khiển: click chuột vào iều khiển ó. Nếu muốn chọn
nhiều iều khiển cùng một lúc thì ồng thßi giữ phím SHIFT click chuột vào các iều
khiển.
Chọn iều khiển
2. Khi ta chọn một iều khiển, dùng con chuột kéo rê khung của iều khiển ể
thay ổi kích thước của nó Thay ổi kích thước iều khiển
3. Di chuột hiện ra hình bàn tay, giữ chuột chuyển vị trí cho các
iều khiển.
4. Nếu muốn chỉ di chuyển vị trí của một trong hai, iều khiển hoặc nhãn, di
chuột vào úng ô vuông góc trên bên trái của iều khiển, hoặc nhãn ó, m giữ
chuột ể di chuyển ến chỗ mới
5. Để n hàng các iều khiển, chọn chúng rồi dùng lệnh
\Format\Alignment, chọn tiếp Right (trái), Left (ph¿i), Top (trên), Bottom (dưới).
Dịch chuyển iều khiển và nhãn
Chỉ dịch chuyển iều khiển hoặc nhãn
lOMoARcPSD|37922327
6. Để thay ổi dòng chữ của nhãn, chọn dòng chữ cũ, ánh vào dòng chữ mới.
7. Để thay ổi tên trưßng dữ liệu gắn kết với iều khin, trước hết chọn iều
khiển ó, bÁm trên thanh công cụ, khi cửa sổ Properties hiện ra, trong ph¿n
Control Source chỉ ra tên của trưßng dữ liệu muốn gắn kết.
8. Thêm vào một hộp văn b¿n hiển thị dữ liệu của một trưßng:
9. Thêm một nhãn văn b¿n vào Form:
NhÁn vào biu tượng trên thanh công cụ Toolbox, nhÁn tiếp vào vị trí c¿n hiển thị
trên form, sau ó ánh vào oạn văn b¿n và bÁm ENTER ể kết thúc.
10. Muốn dùng Wizad tạo các iều khiển trên form, luôn giữ nút lệnh
trên thanh công cụ Toolbox á dạng ược chọn, rồi chọn kiểu iều khiển ta muốn
có.
5.2.3.6. Báo biểu (Report)
a. Khái nißm báo biểu
Một báo biểu là một cách trình bày hiệu qu¿ dữ liệu dưới dạng tài liệu in. Ta có thể chỉnh
sửa kích thước hình thức hiển thị của mọi ối tượng trên một báo biểu, cho nên tathể
hiển thị dữ liệu theo cách mà ta muốn.
Ph¿n lớn các thông tin trên một báo biểu ược tập hợp từ các b¿ng dữ liệu, các truy
vÁn. Các thông tin còn lại có ược khi thiết kế báo biểu.
Các khu vực của mßt báo biểu
Khu vực tiêu ề trên của báo biểu - Report header - chỉ xuÁt hiện một l¿n ngay á dòng ¿u
tiên của trang thứ nhÁt. Ta thể dùng khu vực yhiển thị tiêu của báo biểu, logo, ngày
giß in báo biểu,…
:
NhÁn vào nút lệnh Field List
trên thanh công cụ ể hiển thị danh sách các trưßng
dữ liệu hiện có.
ý
nhÁn chuột vào tên
trưßng muốn chọn trong
danh sách các trưßng,…
… rồi kéo và th¿
trưßng ó vào biểu
mẫu
lOMoARcPSD|37922327
Khu vực tiêu ề trên của một trang - Page header - xuÁt hiện á ¿u tÁt c¿ các trang của báo
biểu (Chú ý rằng một báo biểu có thể có nhiều trang). Ta dùng khu vực này ể hiển thị tiêu ề
của cột dữ liệu.
Khu vực chi tiết - Detail - khu vực chính của báo biểu, hiển thị từng b¿n ghi của
nguồn dữ liệu của báo cáo.
Khu vực cuối trang - Page footer - xuÁt hiện á cuối tÁt c¿ các trang của báo biểu. Ta
dùng khu vực này ể hiển thị số thứ tự từng trang của báo biểu.
Khu vực cuối báo biểu - Report footer - xuÁt hiện á dòng cuối cùng của trang cuối cùng
của báo biểu. Trong khu vực này, ngưßi ta thưßng hiển thị con số tổng kết của các báo biểu,
(ví dụ tổng số khách hàng, tổng tiền hàng).
Ngoài các khu vực trên, ta thể thiết kế thêm tiêu ề trên cho từng nhóm các b¿n ghi -
Group header. Ví dụ, khi in ra danh sách các hợp ồng xuÁt hàng trong tháng, ta muốn nhóm
các hợp ồng y lại theo từng khách hàng. Khi ó, trưßng Khách hàng sẽ óng vai trò tiêu
của nhóm các b¿n ghi. Tổng doanh số các hợp ồng của khách hàng này sẽ ược ưa vào ph¿n
tiêu ề dưới - group footer - của trưßng Khách hàng. b. T¿o mái mßt báo biểu
Trước hết, ta dùng chuột chọn nhóm Reports trong thẻ Create của thanh Ribbon á cửa sổ
Database.
Các cách t¿o mái mßt báo biểu
Có ba cách chúng ta tạo mới một báo biểu trong nhóm Reports ta có thể chọn.
- dāng Report: Chức năng Report công cụ tạo Report nhanh dễ dàng, thưßng
dùng ể tạo những Report ơn gi¿n có dữ liệu nguồn từ một b¿ng hoặc một query..
- Sā dāng Report Wizard: Wizard là một chương trình chức năng mà khi thực hiện sẽ hỏi
chi tiết về nguồn dữ liệu, về các trưßng, về cách bố trí xếp ặt, ịnh dạng mà ngưßi thiết kế
mong muốn, từ ó sẽ tạo ra báo biểu.
- dāng Report Design : Chọn Table/Query làm dữ liệu nguồn cho report. Tự thiết kế
report bằng cách kéo th¿ các trưßng dữ liệu từ field list hoặc các control trong nhóm lệnh
Controls trên thanh Ribbon th¿ vào report.
Chuyển ßi giăa các khung nhìn của báo biểu
Một Báo biểu có ba khung nhìn khác nhau:
- Design view - Thiết kế: Dùng khi ta ph¿i chỉnh sửa, thay ổi cÁu trúc của một o biểu
hiện tại.
- Print Preview - Hiển thị trước khi in: dùng ể xem dữ liệu hiển thị trên trang in trước khi
in.
lOMoARcPSD|37922327
- Layout Preview - Hiển thị cách bố trí: Tương tự như Print Preview, nhưng trong cách
hiển thị này, Access chỉ cho hiển thị mẫu một vài b¿n ghi. Hiếm khi ta dùng chức năng này,
nó chỉ hữu dụng khi mà nguồn dữ liệu của báo biểu là quá lớn, nếu ta dùng Print Preview thì
sẽ mÁt rÁt nhiều thßi gian, nhưng nếu dùng Layout Preview thì thßi gian hiển thị g¿n như
tức thßi, bái vì lúc này Access chỉ chọn ra một vài b¿n ghi làm mẫu.
Cách chuyển ổi giữa các khung nhìn:
1. Má báo biểu ã có.
2. NhÁn chuột vào nút lệnh View trên thanh công cụ, chọn
khung nhìn c¿n thiết từ danh sách.
Sā dùng Wizard ể t¿o mái mßt báo biểu
NhÁn chuột vào nút lệnh trên cửa sổ Database.
Cửa sổ Report Wizard hiện ra như
hình bên. Cửa sổ gồm 2 ô chính. Ô
bên trái chứa danh sách các trưßng
của b¿ng dữ liệu hiện thßi. Ô bên
ph¿i hiển thị danh sách các trưßng
mà ta ã chọn ể hiển thị trên o biểu
mới.NhÁn úp vào tên trưßng á ô bên
trái chọn trưßng sẽ ược hiển thị trên
báo biểu report.
lOMoARcPSD|37922327
à ây ta chọn bốn trưßng: ơn ặt
hàng, Mã khách hàng, Ngày ặt hàng,
Phí Vận chuyển.
Ngoài 4 thông tin rÁt quan trọng
này của một ơn ặt hàng, ta cũng c¿n
phi biết chi tiết về các s¿n phÁm ược
bán trong hợp ồng: số lượng, khối
lượng, ơn giá, chiết khÁu. Các thông
tin này ược lưu á b¿ng ơn ặt hàng chi
tiết.
Do ó ta ph¿i chọn ra các trưßng
này từ b¿ng Đơn ặt hàng chi tiết,
bằng cách chọn b¿ng Đơn ặt hàng chi
tiết trong dòng
Tables/Queries
Lúc y Access chuyn sang liệt
các trưßng của b¿ng Đơn ặt hàng
chi tiết á ô bên trái. Các trưßng ta ã
chọn từ b¿ng Đơn ạt hàng trước ó vẫn
còn á ô bên ph¿i.
Chọn b¿ng Đơn
ặt hàng chi tiết
từ danh sách.
lOMoARcPSD|37922327
NhÁn vào nút lệnh >> chọn tÁt
c¿ các trưßng của b¿ng ơn ặt hàng chi
tiết.NhÁn Next ể tiếp tục
Access tiếp ó hỏi ta âu là b¿ng dữ
liệu chính ? Ta chọn b¿ng ơn ặt
hàng.NhÁn Next ể tiếp tục.
Tại bước tiếp theo, ta chọn trưßng
Mã Khách hàng làm giá trị ể tập hợp
các b¿n ghi lại với nhau (tÁt c¿ các
hợp ồng của một khách hàng sẽ ược
tập hợp lại cạnh nhau thành một
nhóm). NhÁn chuột vào Next tiếp
tục.
Trong cửa sổ á bước này, ta chỉ ra
báo biểu sẽ sắp xếp d liệu theo
trưßng nào. Ta có thể chọn một hoặc
nhiều trưßng, hoặc không chọn
trưßng nào.Nếu ta muốn cứ á cuối
mỗi cột tổng số, chọn mục
Summary Options. NhÁn Next tiếp
tục.
lOMoARcPSD|37922327
Layout là cách bố trí, bài xắp của
một ối tượng. Trong
Access, ngưßi ta ã thiết lập sẵn một
số dạng bố trí. Ta có thể chọn bÁt k
dạng bố trí nào bằng cách nhÁn
chuột vào ô Layout. Ta cũng thể
chọn hướng in của báo cáo theo
chiều ứng (Portrait) hay chiều nằm
ngang
(Landsscape) tại mục
Orientation.NhÁn Next ể tiếp tục.
Cuối cùng, ặt tên cho báo biểu
ơn ặt hàng, nhÁn Finish kết thúc
quá trình tạo báo biểu.
Sau khi nhÁn nút lệnh Finish kết thúc quá
trình tạo lập báo biểu report bằng công cụ tự ộng,
Access hiển thị một báo biểu như hình bên.
Trong biểu y, ta thÁy, với mỗi một khách
hàng, tÁt c¿ các hợp ồng của khách hàng ó với
công ty ược liệt l¿n lượt, theo thứ tự về ngày
tháng ký hợp ồng.
rÁt nhiều khách hàng, mỗi khách hàng lại
nhiều hợp ồng cho nên một trang báo biểu
không thể chứa hết, báo biểu này sẽ ph¿i kéo dài nhiều trang. Để xem các trang tiếp theo, ta
sử dụng thanh di chuyển của báo biểu, nằm á góc dưới bên trái mỗi báo biểu.
Với mỗi o biểu ta ều có một thanh công cụ. Ta thể thiết kế riêng cho mỗi báo biểu
một thanh công cụ khác nhau. Dưới ây là thanh công cụ ng¿m ịnh cho mỗi báo biểu.
lOMoARcPSD|37922327
Thi¿t lÁp ánh d¿ng trang in cho báo biểu
Khi thiết kế các báo biu, hoặc ngay trước khi in chúng, ta ph¿i ịnh dng trang in ca báo
biu cho phù hợp vi các máy in mà ta hin có. Cách thức làm như sau:
1. Trên cửa sổ các ối tượng của dữ liệu, nhÁn úp chuột vào tên báo biểu
báo biểu ó.
2. Trên menu File, chọn Page Setup (Thiết lập trang giÁy).
3. NhÁn vào một trong các nhãn sau ể thiết lập các thuộc tính Margins. Điều
chỉnh ộ rộng các lề và kiểm soát in.
Page. Điều chỉnh hướng in, kích thước giÁy, chọn máy in. Thông thưßng ta
chọn khổ A4 (khổ phổ dụng nhÁt), hướng giÁy dọc (Portrait) hoặc ngang (Landscape).
Columns. Thiết lập số cột, kích thước và cách bố trí của các cột.
4. NhÁn OK.
Má xem và in mßt báo biểu ã có
1. Trong cửa sổ Database window, nhÁn chuột vào Reports trong cột Objects.
2. NhÁn chuột vào báo biểu c¿n má.
3. Trên thanh công cụ của cửa sổ Database window, nhÁn chuột vào nút Design ể
thiết kế báo biểu hiện tại, hoặc vào nút Preview ể hiển thị báo biểu trước khi in.
Hißu chßnh mßt báo biểu
Việc dùng quá trình tạo báo biểu tự ộng ã có thể cho phép chúng ta ược một báo biểu
ẹp dựa trên các thông tin sẵn. Tuy nhiên, ược các kết qu¿ xử lý phức tạp từ nhiều
nguồn thông tin khác nhau, ta ph¿i chỉnh sửa trực tiếp các báo biểu.
Cách thiết kế một báo biểu cũng tương tự như thiết kế một biểu mẫu nhập liệu. Trong báo
biểu trên, ta mới thông tin về s¿n phÁm, số lượng, ơn gchiết khÁu. Tuy nhiên, ta
lại không có thành tiền. Ta sẽ bổ sung thông tin này vào báo biểu.
Các chế ộ
hiển thị
Hiển thị từng trang
Gửi kết qu¿ sang
word hoặc excel
Phóng hoặc thu hình
Hiển thị 2 trang của báo cáo
Chọn số trang
hiển thị
lOMoARcPSD|37922327
Bước 1: Chuyển báo biểu ơn ặt hàng
sang chế thiết kế bằng cách nhÁn
chuột vào nút lệnh
(Thiết kế).Lúc
này cÁu trúc của báo biểu ơn ặt hàng
ược thể hiện như hình bên.
Bước 2: Thêm một nhãn tiêu ề (label) vào bên cạnh dòng tiêu hiện tại, bằng cách nhÁn
vào nút Label trên thanh công cụ Toolbox, sau ó nhÁn chuột vào vị trí trên báo biểu.
Đánh
vào dòng chữ <Thành tiền=.
NhÁn úp vào Text box này ể hiển thị
cửa sổ thuộc tính - Properties, trong mục
Other \ Name, ổi tiền của Text box
thành : <Thành tiền=
Trong mục Data\Control Source, ánh
vào công thức:
=[Số lượng]*[Đn giá]*(1-
[Chiết khÁu]).
Chuyển sang chế Nhìn View xem kết qu¿, bằng cách nhÁn chuột vào nút lệnh
trên thanh công cụ.
Sau khi ã sửa ổi, báo biểu ơn t hàng ã có thêm cột thành tiền chứa tổng số tiền ph¿i tr¿
cho mỗi s¿n phÁm trong ơn ặt hàng.
Tuy nhiên, báo biểu còn thiếu thông tin về tổng giá trị của mỗi ơn ặt hàng.
Ta bổ sung thông tin này bằng cách sau:
Bướcc 4: Thêm cột mới chứa giá trị cộng dồn của cột thành tiền.
Dùng chuột thêm một iều khiển mới kiểu Text box vào trong báo biểu, ngay cạnh iều
khiển có tên là Thành tiền, tại vị trí þ, ặt tên là Tổng con.
Tại mục Data\Control Source, nhập vào công thức = [Thành tiền]. Thiết lập mục
Data\Running Sum (tính tổng) thành Over group. Việc thiết lập thuộc nh tính tổng con
Bước 3:
Thêm một hộp văn b¿n (text box) vào ph¿n Detail của báo biểu, bên cạnh vị trí
của trưßng chiết khÁu (vị trí
ý
)
, bằng cách nhÁn chuột vào nút Text box trên thanh
công
cụ.
lOMoARcPSD|37922327
(Over group) cho phép iều khiển này lưu giá trị cộng dồn của từng ơn ặt hàng; sang một ơn
ặt hàng mới thì Tổng con này lại ược tính lại từ 0.
NhÁn chuột vào nút lệnh trên thanh công cụ ể xem kết qu¿. Báo biểu giß ây ã có
thêm cột mới chứa giá trị cộng dồn tiền hàng của mỗi ơn ặt hàng.
Bây giß ta thêm dòng chứa tổng giá trị hợp ồng (bằng tổng của Tiền hàngTiền phí vận
chuyển) vào ph¿n kết thúc của mỗi ơn ặt hàng. Các bước tiến hành như sau:
Cột chứ số tiền
ph¿i tr¿ cho mỗi
s¿n phÁm cộng
dồn
NhÁn chuột ph¿i vào thanh này ể
chọn Sorting and Groupi
Cột mới hiển
thị giá trị
lOMoARcPSD|37922327
Bước 5: NhÁn chuột vào thanh ơn ặt hàng_ Mã Đ Đ Hg Header. NhÁn phímn ph¿i ể
hiện cửa sổ Menu các lệnh, chọn Sorting and Grouping (sắp xếp và phân nhóm). Cửa sổ tiếp
theo hiện ra.:
Trong cửa sổ Sorting and Grouping, chọn dòng
ơn ặt hàng_Mã Đ Đ Hg, thiết lập thuộc tính Group
Footer (tiêu ề dưới) thành Yes.
Việc này ể nhằm tạo ra một kho¿ng trống
phía dưới cứ mỗi khi kết thúc một ơn ặt hàng. Cửa sổ
kho¿ng trống như sau:
Biểu tượng này
chỉ ra rằng các
b¿n ghi á trên
báo biểu ang
ược phân
nhóm và sắp
xếp theo giá tr
của trưßng.
Thay ổi thứ tự sắp xếp của
trưßng. Ascending: tăng,
Descending: gi¿m
Để ược phân nhóm, 1 trưßng ph¿i
có Group Header (tiêu ề trên
nhóm) hoặc Group footer (tiêu ề
dưới)
Muốn thay ổi cách sắp xếp hoặc
thứ tự phân nhóm các b¿n ghi, ta chỉ
ra tên trưßng trong cột
Đến ây ta
ã sử
dụng qua tÁt
c¿ các
chức năng c¿n
thiết
khi xây dựng
một
báo biểu
lOMoARcPSD|37922327
= [Phí Vận chuyển]+[Tổng
con].
Chuyển sang chế View ( ), kết qu¿ báo biểu ơn ặt hàng hiển thị ra ã ô chứa
tổng giá trị ơn hàng á cuối.
Phụ lục: Làm việc với dữ liệu.
1.Sử dụng bộ xây dựng biểu thức – Expression Builder
Khi xây dựng một query hay một form, một report, ta thưßng xuyên ph¿i sử dụng ến bộ
xây dựng công thức Expression builder. Sử dụng công cụ này, chúng ta có thể nhanh chóng
xây dựng ược một công thức tham chiếu ến các ối tượng trong một c dữ liệu một cách
chuÁn xác mà chỉ c¿n sử dụng con chuột.
Bộ xây dựng biểu thức có ba khu vực:
ü Ô công thức: Khu vực phía trên của giao diện là một ô nơi ta xây dựng c biu thức.
Ta có thể trực tiếp nhập vào từ bàn phím biểu thức; hoặc sử dụng danh sách trong các ô phía
dưới – bằng cách nhÁn úp chuột vào tên các ối tượng, toán tử – ể dán chúng vào ô biểu thức
từ ó tạo nên biểu thức.
ý Nút Toán: Tại khu vực giữa của giao diện là c nút nhÁn cho các toán thử thưßng
ược sử dụng nhÁt. NhÁn chuột vào nút nào thì Expression Builder sẽ chèn toán tử ó vào
trong ô công thức. Muốn có danh sách ¿y ủ các toán tử, nhÁn chuột vào Operators á ô phía
dưới bên trái nhóm các toán tử thích hợp. Ô bên phaỉ sẽ hiển thị tÁt c¿ các toán tử của
nhóm ược chọn. þ Các ph¿n tā: có ba ô á nāa d¤ái của giao dißn:
Ô phía trái thư mục các b¿ng, query, form, report, các hàm tính(functions), c
hằng số – constants), các tóan tử – operators.
Ô á giữa lit kê các ối tượng cụ thể hoặc nhóm các ối tượng thành ph¿n của mục ã ược
chọn tại ô bên trái. Ví dụ, nếu nhÁn chuột vào Built-In Functions trong ô bên trái, các loại
hàm của Microsoft Access sẽ ược liệt kê.
Ô bên ph¿i liệt kê các giá trị, nếu có, của các ph¿n tử ã ược chọn á hai ô ¿u.
Trong dòng trống này, ta
thêm một iều khiển dạng
Text box, ặt tên là Giá trị
hợp
ồng, nhập vào trong
mục C
thức:
Kho¿ng trống kết thúc
sau mỗi ơn ặt hàng.
lOMoARcPSD|37922327
2.Tìm kiếm và thay thế dữ liệu
nhiều cách ể tìm kiếm hoặc thay thế các dữ liệu mà ta muốn, dữ liệu ó là một giá
trị nhÁt ịnh, một b¿n ghi hay một nhóm các b¿n ghi
Tìm b¿n ghi bằng cách dùng thanh cuộn á trên lưới dữ liệu Datasheet hoặc trên biểu
mẫu Form, hoặc ánh số thứ tự của b¿n ghi vào ô Record number trên thanh di chuyển.
Sử dụng hộp thoại Tìm kiếm – Find, ể ịnh vị các b¿n ghi hoặc tìm kiếm các giá trị nhÁt
ịnh của các trưßng dữ liu. Nếu muốn thay thế các giá trị nào ó bằng một giá trị khác, sử
dụng hộp thoại Thay thế – Replace.
Sử dụng một bộ lọc Filter, ta thể tạm thßi lập hiển thị một tập hợp các b¿n
ghi cụ thể ể xử lý trên một Form hoặc một lưới dữ liệu – Datasheet.
Sử dụng truy vÁn query, ta có thể làm việc với một tập hợp cụ thể các b¿n ghi trích ra
từ một hoặc nhiều b¿ng khác nhau, thỏa mãn các tiêu chuÁn ã chỉ ra ban ¿u.
3.Sử dụng ký tự ại diện ể tìm kiếm giá trị
Khi c¿n tìm tập hợp các gtrị mà ta chỉ biết một ph¿n của giá trị ó (ví dụ tìm ngưßi
tên bắt ¿u bằng chữ H và kết thúc bằng chữ ng), ta sử dụng ký tự ại diện ể thay vào vị trí các
tự chưa biết. tự ại diện thể sử dụng trong hộp thoại Tìm kiếm Find, hộp thoại
Thay thế Replace, trong truy vÁn query, trong các biểu thức expression.
Trong ACCESS, ta thể sử dụng ký tự ại diện trong hộp thoại Tìm kiếm, Thay thế, trong
truy vÁn query, trong biểu thức ể tìm các giá trị, các b¿n ghi, hoặc các tệp.
tự
dāng
Ví dā
*
Tương ương với một nhóm các chữ cái. thể
ược sử dụng á ¿u hoặc á cuối chuỗi tìm kiếm.
wh* sẽ tìm what, white,
why.
?
Tương ương bÁt cứ một chữ cái nào.
B?ll sẽ tìm ball, bell, và
bill
[ ]
Tương ương với một trong các chữ cái á trong ngoặc
vuông.
B[ae]ll sẽ tìm ball hoặc
bell chứ không tìm bill
!
Loại trừ những chữ cái trong ngoặc vuông.
b[!ae]ll chỉ tìm bill chứ
không tìm bell,ball
-
Tìm các chữ cái trong kho¿ng hai chữ cái cho
trước (theo thứ tự tăng d¿n: A ến Z, chứ không ược
từ Z ến A).
b[a-c]d sẽ tìm bad,
bbd, và bcd
#
Tương ương một số.
1#3 sẽ tìm 103, 113,
123,…
Lưu ý:
tự ại diện ược sử dụng cho dữ liệu kiểu chữ, tuy nhiên ôi khi cũng thể sử dụng
thành công với các kiểu dữ liệu khác, như kiểu ngày tháng.
lOMoARcPSD|37922327
Khi sử dụng các tự ại diện tìm kiếm một dÁu hoa thị (*), dÁu hỏi (?), hiệu số
(#), dÁu ngoặc vuông má ([), dÁu nối (–), ta ph¿i cho dÁu ó vào trong ngoặc vuông. Ví dụ
ể tìm một dÁu hỏi, ta phi nhập vào [?] trong hộp thoại Tìm kiếm Find. Nếu tìm kiếm dÁu
c¿m thán (!), dÁu ngoặc vuông óng (]) thì không c¿n phi cho vào trong ngoặc.
Muốn tìm kiếm cùng c cặp ngoặc vuông thì ta phi nhập vào <[[ ]] < trong hộp tìm
kiếm – Find.
4.Tìm kiếm giá trị cụ thể trong một trường - field
1. Trên Biểu mẫu – Form hoặc lưới dữ liệu – Datasheet, chọn cột của trưßng – field
mà ta muốn tìm kiếm (nếu muốn tìm kiếm dữ liệu á tÁt c¿ các trưßng thì không c¿n ph¿i
chọn).
2. NhÁn nút lệnh Find trên thanh công cụ.
3. Trên dòng Find What (tìm gì), ánh vào giḠtrị muốn tìm.
4. Lựa chọn các tuỳ chọn (options) tìm kiếm.
5. NhÁn Find Next.
5.Thay thế giá trị trong một trường field
1. Trên Biểu mẫu Form hoặc lưới dữ liệu – Datasheet, chọn cột của trưßng – field mà ta
muốn tìm kiếm (nếu muốn tìm kiếm dữ liệu á tÁt c¿ các trưßng thì không c¿n ph¿i chọn).
1. Chọn Replace trên menu Edit.
2. Đánh vào giá trị c¿n tìm trên dòng Find What, ánh vào giá trị mới sẽ thay thế
giá trị cũ vào dòng Replace With.
3. Thiết lập các tuỳ chọn c¿n thiết.
4. Để thay thế tÁt các các giá trị cũ bằng giá trị mới, chọn Replace All.
5. Để thay thế chỉ một số các giá trị bằng gtrị mới, chọn Find next, sau ó nhÁn
Replace. Để bỏ qua không thay thế mà chuyển tiếp ến l¿n xuÁt hiện tiếp theo của gtrị
ó, nhÁn Find Next.
6. Xắp sếp dữ liệu
1. Trong khung nhìn Form View hoặc Datasheet View, nhÁn chuột chọn trưßng c¿n
xắp sếp. Muốn xắp sếp các b¿n ghi á SubDatasheet, nhÁn chuột vào dÁu + ể má rộng
khung nhìn, sau ó chọn trưßng.
2. Làm thao tác sau:
Để xắp sếp tăng d¿n, chọn Sort Ascending .
Để xắp sếp tăng d¿n, chọn Sort Descending .
Nếu ta chọn nhiều cột (trưßng) cùng một lúc ể xp sếp thì ACCESS sẽ xp sếp l¿n lượt
các cột từ trái qua ph¿i
TÓM TÂT CH£¡NG 5
1. Tßng quan vÁ hß quÁn trá CSDL
lOMoARcPSD|37922327
Hệ qu¿n trị CSDL là hệ thống ph¿n mềm iều khiển toàn bộ các chiến lược truy nhập
CSDL
Các chức năng cơ b¿n của hệ qu¿n trị CSDL bao gồm
· Tạo ra và duy trì cÁu trúc dữ liệu
· Cập nhật dữ liệu
· Lưu trữ dữ liệu
· Tìm kiếm và xử lý các dữ liệu lưu trữ
· Cho phép nhiều ngưßi dùng truy xuÁt ồng thßi
· Hỗ trợ tính b¿o mật và riêng tư
· Cung cÁp một cơ chế chỉ mục (index) hiệu qu¿ ể lÁy nhanh các dữ liệu lựa chọn.
· B¿o vệ dữ liệu khỏi mÁt mát bằng các quá trình sao lưu (backup) phục hồi (recovery).
Hiện nay có một số hệ qu¿n trị CSDL quan hệ ược sử dụng rộng rãi trên thị trưßng như
Oracle, Informix, Sybase, Foxpro, Access,…..
2. Hß quÁn trá CSDL Access
Access hệ qu¿n trị CSDL,vì vậy bạn thể dùng M.ACCES qu¿n lý các thông tin
trong CSDL . Trong một file Access, các dữ liệu ược chia vào các b¿ng riêng biệt, gọi
b¿ng; Việc xem, thêm hay cập nhật dữ liệu thực hiện bằng các cửa sổ nhập liệu, gọi là biểu
mẫu - form; Việc tìm kiếm và xử lý các thông tin có chọn lọc thực hiện bằng các truy vÁn -
query; Việc phân tích in dữ liệu theo một khuôn mẫu thiết kế trước sử dụng ến các báo
biểu report; cho phép ngưßi dùng xem, sửa, phân tích các thông tin của c dữ liệu từ
Internet hoặc Intranet bằng các trang truy cập dữ liệu, data access pages.
3. Quy trình thi¿t k¿ mßt CSDL
Trước khi bắt tay vào xây dựng các b¿ng, biểu mẫu, các báo biểu và các thành ph¿n khác
của một CSDL, ta c¿n ph¿i bỏ thßi gian thiết kế chi tiết.
Các b¤ác c¢ bÁn ể thi¿t k¿ mßt CSDL là:
1. Xác ịnh mục ích của CSDL: CSDL dùng ể lưu trữ thông tin gì, c¿n rút ra những
thông tin gì từ CSDL.
2. Xác ịnh các b¿ng dữ liệu b¿ng - c¿n trong CSDL: một B¿ng không ược chứa
dữ liệu trùng lặp, và thông tin cũng không nên bị trùng lặp giữa các b¿ng. Mỗi một b¿ng
chỉ nên chứa thông tin liên quan ến một chủ ề.
3. Xác ịnh các trưßng dữ liệu field - c¿n trong mỗi b¿ng dữ liệu: Mỗi b¿ng
chứa thông tin về cùng một chủ thể, mỗi field của một b¿ng lại chứa các thông tin riêng biệt
về chủ thể ó. Ta chỉ nên ghi nhận các thông tin c¿n thiết từ thực tế, không nên có các trưßng
tính toán calculated field. Lưu trữ thông tin dưới dạng chi tiết nhÁt có thể (ví dụ: Họ, Tên
chứ không nên Họ và Tên).
4. Xác ịnh c trưßng chứa giá trị duy nhÁt á mỗi b¿n ghi: Để Access kết nối ược
các thông tin lưu trữ trong các b¿ng riêng biệt . ví dụ: kết nối các khách hàng với ơn ặt hàng
của ngưßi ó .Mỗi b¿ng c¿n phi một trưßng hoặc một nhóm các trưßng chứa giá trị duy
nhÁt dùng phân biệt giữa các b¿n ghi trong một b¿ng. Một trưßng như vậy gọi trưßng
khoá - Primary key.
lOMoARcPSD|37922327
5. Xác ịnh các mối quan hệ giữa các b¿ng: Ta chỉ ra cho Access cách ể tìm kiếm
và ưa các thông tin liên quan lại tập hợp với nhau.
6. Tinh chỉnh thiết kế: Sau khi ã thiết kế, ta c¿n vận hành thử nghiệm CSDL ¿m
b¿o các chức năng c¿n ều thực hiện suôn sẻ úng như mong ợi. Nếu phát hiện những thông
tin gì không c¿n thiết thì ta nên loại bỏ ể tránh sự cồng kềnh.
7. Nhập dữ liệu tạo các ối tượng CSDL: Khi ã hài lòng với cÁu trúc các b¿ng
biểu và các mối liên kết là lúc phi nhập liệu. Dựa trên dữ liệu ã nhập ta có thể dễ dàng xây
dựng các biểu mẫu, báo biểu, truy vÁn ể phục vụ công tác xử lý ¿u vào và ¿u ra thông tin.
8. Sử dụng công cụ phân tích của Access: Access cung cÁp công cụ B¿ng Analyzer
Wizard giúp ngưßi dùng phân tích thiết kế ã có và chỉnh sửa chúng.
5.3 SĀ DĀNG NGÔN NGĂ VISUAL BASIC FOR APPLICATION
5.3.1 Giới thiệu chung
Ta có thể sử dụng ngôn ngVisual Basic for application viết các oạn chương trình trong
các ứng dụng của Access. Mặc d¿u Access ã ược trang bị rÁt nhiều chương trình có sẵn ược
gọi là Macro, nhưng d¿n d¿n ngưßi ta thÁy rằng còn có rÁt nhiều iều c¿n làm mà các Macro
chưa áp ứng ược. Việc sdụng Macro nhiều khi cũng rÁt bÁt tiện, ta không biết cách
thức hoạt ộng bên trong các macro. Các chương trình trong Access thưßng gồm các ph¿n
khai báo chung các hàm, thủ tục. Các ph¿n khai báo chung ycác thủ tục ược tập hợp
trong hai loại Module là module chuÁn (Standard Module) và Module lớp (Class Module).
Bộ mã lệnh chuÁn: Bộ mã lệnh chuÁn chứa các oạn mã lệnh mà có thể chạy bÁt cứ âu
trong ứng dụng. Ta thể tạo một bộ lệnh chuÁn mới bằng cách tương tự như khi
tạop các ối tượng khác. ta chọn ối tượng làm việc là Modules, sau ó nhÁn vào nút New,
hoặc chọn Insert từ thanh thực ơn ròi chọn Module.
Blệnh lớp: Chúng ta sử dụng bộ mã lệnh lớp thể tạo các ối tượng mới của riêng
mình. Các thủ tục hàm chúng ta ịnh nghĩa trong bộ lệnh sẽ trá thành các phương
thức của ối tượng. c thuộc tính chúng ta ịnh nghĩa bng các lệnh Property Get,
Property Let, Property Set sẽ trá thành các thuộc tính của ối tượng. Để tạo mới một bộ
lệnh lớp ta thực hiện chọn Insert, Class Module. Các oạn lệnh nằm trong một biểu
mẫu hoặc báo cáo cũng là các bộ mã lệnh lớp.
5.3.2 Các thành phần trong bộ mã lệnh
Trong bộ mã lệnh có thể chứa các thành ph¿n sau:
Các khai báo (Declaration): Là các câu lệnh dùng ịnh nghĩa các biến, hằng, loại dữ liệu
do ngưßi dùng ịnh nghĩa.
Thủ tục biến cố (Event Procedure): là các thủ tục ược gọi tới khi một biến cố nào ó của
biểu mẫu, báo cáo hoặc các iều khiển x¿y ra. dụ thủ tục hay dùng nhÁt <Tên ối
tượng>_Click() thủ tục biến cố ược thực hiện khi ngưßi sử dụng Click chuột trên ối
tượng tương ứng.
Thủ tục chung (General Procedure): là các thủ tục mà không trực tiếp liên quan ến một
ối tượng hoặc một biến cố nào c¿. Chúng ta có thể tạo các thủ tục chung này bên trong
một bộ lệnh chuÁn hoặc một bộ lệnh lớp. Các thủ tục chung thể thủ tục hoặc
hàm.
lOMoARcPSD|37922327
5.3.3 Sử dụng ối tượng DoCmd (Do Command)
Trong khi sử dụng ngôn ngữ VB for Applications chúng ta có thể thực hiện các hành ộng
tương ứng trong công cụ tập lệnh bằng cách sử dụng các phương thức của ối tượng
DoCmd. Cú
pháp chung:
Docmd.<Tên ph¤¢ng thức> [Các tham số]
dụ. thể óng biểm mẫu SINHVIEN chúng ta dùng phương thức Close của ối tượng
Docmd
Docmd.Close acForm, "Sinhvien" trong ó acForm hằng số chỉ ịnh loại ối tượng biểu
mẫu muốn óng và chuỗi "Sinhvien" là tên của biểu mẫu SINHVIEN. Khi phương thức c¿n
nhiều tham số thì ta dùng dÁu phÁy ể ngăn cách các tham số.
Một số phương thức thưßng dùng của ối tượng docmd.
Tên ph¤¢ng
thức
Ví dā
Ý nghĩa
FindNext
FindRecord
GoToControl
GoToRecord
OpenTable
OpenQuery
OpenForm
DoCmd.OpenForm "Sinhvien"
Má biểu mẫu Sinhvien
OpenReport
DoCmd.OpenReport
acViewPreview
DoCmd.OpenReport
acViewNormal
"Baocao1",
"Baocao1",
báo cáo BAOCAO1 trên
màn hình
In báo cáo BAOCAO1
ể xem
OpenModule
Quit
DoCmd.Quit
Thoát khỏi Access
ReName
RunCommand
RunSQL
Save
DoCmd.Close acForm, "sinhvien",
acSaveYes
Đóng biu mẫu SINHVIEN, trước khi
óng thì hỏi có Save không.
SelectObject
5.3.4 Các cấu trúc iều khiển chương trình
Các cÁu trúc iều khiển là các u lệnh cho phép ngưßi lập trình có thể iều khiển thứ tự vận
hành các câu lệnh bên trong chương trình khi chúng ược thực hiện. Nếu không các câu
lệnh iều khiển thì chương trình sẽ ược thực hiện tu¿n tự từ trên xuống theo úng thứ tự các
câu lệnh mà ta ã viết.
lOMoARcPSD|37922327
a/ Cấu trúc if ... then ...
if < iều kiện> then <một lệnh>
if < iều kiện> then
[các lệnh]
endif
if < iều kiện> then [các lệnh 1] else
[các lệnh 2]
endif
Ví dā.
if mDate<Now then mDate=Now if
mDate<Now then mDate=Now En if
6.4.2. Cấu trúc Select Case...
Select Case <biểu thức số nguyên>
Case <miền giá trị 1>
<lệnh 1>
Case <miền giá trị 2>
<lệnh 2>
...
Case <miền giá trị n>
<lệnh n>
Case Else
<lệnh n+1>
End Select
Ví dā.
Select Case performance
Case 1
Bonus = salary * 0.1
Case 2, 3
Bonus = salary * 0.09
Case 4 To 6
Bonus = salary * 0.07
Case Is > 8
Bonus = 100
Case Else
Bonus = 0
End Select
b/ Cấu trúc Do While...Loop
Do while < iều kiện>
<các lệnh>
Loop
Do
lOMoARcPSD|37922327
<các lệnh>
Loop while < iều kiện>
Có thể thay while bằng Until
While < iều kiện>
<các lệnh>
Wend
Chú ý. While Until tác dụng ngược nhau: While < iều kiện> sẽ dừng khi iều kiện
sai, còn Until < iều kiện> lại dừng khi iều kiện úng.
c/ Cấu trúc For... Next
For <biến>=<biểu thức 1> To <biểu thức 2> [bước nh¿y]
<các lệnh>
[Exit for]
Next [biến]
For Each <ph¿n tử> In <nhóm>
<các lệnh>
[Exit for]
Next [ph¿n tử]
d/ Thoát khỏi thủ tục, vòng lặp
Exit Sub, Exit Function, Exit Do, Exit For
5.3.5 Mßt số ch¤¢ng trình m¿u
LÁp trình trong Access
Giống như ngôn ngữ C và một số ngôn ngữ cÁp cao khác, trong Access các công việc ược
thực hiện thông qua các hàm (Function) hoặc thủ tục (Procedure). Bên ngoài hàm chỉ
lệnh khai báo, không có các lệnh loại khác như phép gán chẳng hạn.
a/ Khai báo các biến
Ví dụ về khai báo các biến:
Dim ws As Workspace
Dim db As Database
Dim tbl As TableDef
Dim tdf as QueryDef
Dim rst as Recordset
Dim fld As Field
Dim tblname As String
Dim mm as Single
Dim n as integer
Dim a as Double
lOMoARcPSD|37922327
b/ Thủ tục và hàm
Có hai loại thủ tục: Thủ tục sự kiện, là thủ tục gắn liền với một sự kiện nào ó,
Ví dụ. command1_click() là thủ tục ược thực hiện khi ta nhắp chuột vào nút
lệnh có tên Command1.
Thủ tục cũng có thể có tên không gắn với sự kiện, thí dụ hàm msgbox chẳng hạn. Lúc này
muốn gọi hàm hoặc thủ tục thì ta ph¿i ghi tên hàm cùng các tham số, d msgbox "Chao
ban".
Các ví dụ khác về thủ tục và hàm không gắn với sự kiện:
Public Sub Databases() Dim
ws As Workspace
Dim db As Database
Dim db1 As Database
Dim db2 As Database
Set ws = DBEngine(0)
Set db1 = CurrentDb
Set db2 = ws.OpenDatabase("d:\hoc_acc\qlsv1.mdb")
For Each db In ws.Databases
MsgBox db.Name
Next db
End Sub
Public Sub Open_Report(strReportName As String)
DoCmd.OpenReport strReportName, acViewPreview
End Sub
Public Sub Print_Report(strReportName As String)
'Print specified report.
DoCmd.OpenReport strReportName, acViewNormal
End Sub
c/ Tạo các thủ tục sự kiện
Chúng ta sẽ làm việc chủ yếu với thủ tục sự kiện. Để thể tạo thủ tục sự kiện cho một ối
tượng hay iều khiển nào ó, ví dụ tạo thủ tục tương ứng với một nút lệnh, ta làm như sau:
Trước hết ta chọn ối tượng, sau ó nhắp chuột o " ũa th¿n". Nếu chương trình ã có sẵn thì
trên màn hình sẽ hiện ra cửa sổ soạn th¿o. Nếu chưa có chương trình thì ta thÁy
hộp thoại sau:
Ta chọn Code Builder và thÁy xuÁt hiện cửa sổ soạn th¿o, ví dụ:
lOMoARcPSD|37922327
Hộp Combo bên trái chứa các ối tượng, còn hộp Combo bên ph¿i chứa các sự kiện. Ta
thể chọn các ối tượng từ cửa sổ bên trái, sau ó nhắp vào hộp combo bên ph¿i ể chọn sự kiện:
Sau khi chọn xong thì tên thủ tục ược tự ộng tạo ra và ta chỉ việc gõ các dòng lệnh o trong
ó.
Ví dā.
Ta có thể tạo một b¿ng chọn, sau ó tạo trên ó các nút lệnh Form, óng form, má report,
óng report, thoát về Windows, thoát về Access như sau:
Má Form.
DoCmd.OpenForm <Chuỗi ký tự tên Form>
dụ.
DoCmd.OpenForm "[Danh Sach]"
Đóng Form.
dụ.
DoCmd.Close acForm, "NhanSu", acSaveYes
Má Report
dụ.
Má ể xem
DoCmd.OpenReport strReportName, acViewPreview
In Report.
DoCmd.OpenReport strReportName, acViewNormal
d/ Các hàm trong Form "NhanSu"
Option Compare Database
Option Explicit
Private Sub MAH_GotFocus()
lOMoARcPSD|37922327
Dim db As Database, qdf As QueryDef Dim strSQL As String, strName As String strName =
"HUYENLookUp Query" strSQL = "SELECT MAH,TenHUYEN FROM HUYEN WHERE MAT= '"
& Me.MAT
& "'"
Set db = CurrentDb
db.QueryDefs.Refresh For Each
qdf In db.QueryDefs If qdf.Name
= strName Then
db.QueryDefs.Delete qdf.Name
End If
Next qdf
Set qdf = db.CreateQueryDef(strName, strSQL)
'qdf.Close
'Set db = Nothing
Me.MAH.RowSource = strName
End Sub
Private Sub Luong_AfterUpdate()
Me.ThuNhap = Val(Me.Luong) + Val(Me.PhuCap)
End Sub
Private Sub PhuCap_AfterUpdate()
Me.ThuNhap = Val(Me.Luong) + Val(Me.PhuCap)
End Sub
Private Sub cmdClose_Click()
DoCmd.Close acForm, "NhanSu", acSaveYes
End Sub
====================================
Private Sub cmdMakeTblQuery_Click() Dim
strName As String, strSQL As String
strName = "NhanSu vut"
strSQL = "SELECT NhanSu.Hoten, NhanSu.Dantoc, TINH.TenTinh " & _
"INTO [" & strName & "]" & _
"FROM TINH INNER JOIN NhanSu ON TINH.MAT = NhanSu.MAT " & _
"WHERE (((NhanSu.Luong)<100 Or (NhanSu.Luong)>400))"
Dim db As Database, tdf As TableDef
Set db = CurrentDb
db.TableDefs.Refresh For Each tdf In
db.TableDefs If tdf.Name = strName
Then db.TableDefs.Delete
tdf.Name
End If
Next tdf
CurrentDb.Execute strSQL
MsgBox "Query " & strName & " da duoc tao"
End Sub
lOMoARcPSD|37922327
Private Sub cmdUpDateQuery_Click() Dim
strSQL As String
strSQL = "UPDATE NhanSu SET NhanSu.Luong = 100 WHERE(([PhuCap]=10) and
[DanToc]='Kinh')"
CurrentDb.Execute strSQL
MsgBox "Table NhanSu da duoc cap nhat"
End Sub
Private Sub cmdDeleteQuery_Click() Dim
strSQL As String
strSQL = "DELETE * from NhanSu WHERE(([PhuCap]=10) and [DanToc]='Kinh')"
CurrentDb.Execute strSQL
MsgBox "Mot so ban ghi da bi xoa tu Table NhanSu"
End Sub
Private Sub cmdCrosstabQuery_Click()
Dim db As Database, qdf As QueryDef
Dim strSQL As String, strName As String strName = "Cross Query vut"
strSQL = "TRANSFORM Max(NhanSu.Luong) AS MaxOfLuong " & _
"SELECT NhanSu.Dantoc " & _
"FROM NhanSu " & _
"GROUP BY NhanSu.Dantoc " & _
"PIVOT NhanSu.MAT"
Set db = CurrentDb
db.QueryDefs.Refresh For Each
qdf In db.QueryDefs If qdf.Name
= strName Then
db.QueryDefs.Delete qdf.Name
End If
Next qdf
Set qdf = db.CreateQueryDef(strName, strSQL)
MsgBox "Query " & strName & " da duoc tao"
' Khong the su dung: CurrentDb.Execute strSQL
End Sub
======================================
Private Sub Form_Load()
Me.OrderBy = "[MAKHOA],[HO],[TEN]"
Me.OrderByOn = True
End Sub
lOMoARcPSD|37922327
Private Sub gofirst_Click()
Dim rst As Recordset Set rst
= Me.RecordsetClone
rst.MoveFirst
Me.Bookmark = rst.Bookmark
End Sub
Private Sub golast_Click()
Me.RecordsetClone.MoveLast
Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub
Private Sub goprev_Click()
Me.RecordsetClone.MovePrevious
If Me.RecordsetClone.BOF Then
Me.RecordsetClone.MoveFirst
End If
Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub
Private Sub gonext_Click()
Me.RecordsetClone.MoveNext
If Me.RecordsetClone.EOF Then
Me.RecordsetClone.MoveLast
End If
Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub
Private Sub mah_GotFocus()
Dim strSQL As String, strName As String strName = "HUYENLookUp Query" strSQL =
"SELECT MAH,TenHUYEN FROM HUYEN WHERE MAT= '" & Me.MAT
& "'"
NewQuery strName, strSQL
Me.MAH.RowSource = strName
End Sub
Private Sub Timkiem_Click()
Dim strMsg As String, strInput As String
' Prompt user for input.
strInput = InputBox("Hay nhap ma sinh vien can tim:")
If strInput = "" Then 'user chose "cancel"
Exit Sub
End If
Dim rst As Recordset Set rst
= Me.RecordsetClone
rst.FindFirst "MASV = '" & strInput & "'"
If rst.NoMatch Then
MsgBox "khong tim thay ma sinh vien " & strInput, vbInformation
lOMoARcPSD|37922327
Else
Me.Bookmark = rst.Bookmark
End If
End Sub
Private Sub Them_Click()
Dim strMsg As String, strInput As String
strInput = InputBox("Hay nhap ma sinh vien can them:")
If strInput = "" Then 'user chose "cancel"
Exit Sub
End If
Dim rst As Recordset Set rst =
Me.RecordsetClone rst.FindFirst "MASV
= '" & strInput & "'" If Not rst.NoMatch
Then
MsgBox "Ma sinh vien " & strInput & " da co, khong them duoc!", vbExclamation
Exit Sub
End If
With rst
.AddNew ' Add new record.
!MASV = strInput ' Add data.
!DIEMVT = 22
.Update ' Save changes.
End With
rst.MoveLast
Me.Bookmark = rst.Bookmark
'DoCmd.GoToRecord , , acNewRec
End Sub
Private Sub Dong_Click()
DoCmd.Close acForm, "sinhvien", acSaveYes
End Sub
Private Sub viewdatasheet_Click()
DoCmd.OpenQuery "SINHVIEN Query", acViewNormal
End Sub
Private Sub Xoa_Click()
Dim strMsg As String, strInput As String
' Prompt user for input.
strInput = InputBox("Hay nhap ma sinh vien can xoa:")
If strInput = "" Then 'user chose "cancel"
Exit Sub
End If
Dim rst As Recordset Set rst
= Me.RecordsetClone
rst.FindFirst "MASV = '" & strInput & "'"
If rst.NoMatch Then
MsgBox "khong tim thay ma khoa " & strInput, vbInformation
lOMoARcPSD|37922327
Exit Sub
Else
Me.Bookmark = rst.Bookmark End
If
strMsg = "Ban xoa sinh vien co ma " & strInput & "?" If
MsgBox(strMsg, vbYesNo, "Chu y!") = vbNo Then
Exit Sub
Else
rst.Delete
If Not rst.BOF Then
rst.MovePrevious
End If
If Not Me.RecordsetClone.BOF Then
Me.Bookmark = rst.Bookmark
End If
End If
End Sub
Public Function ExitMicrosoftAccess() As Integer Dim
strMsg As String
strMsg = "Thoat khoi Access va tro ve Windows?"
If MsgBox(strMsg, vbYesNo, "Chu y!") = vbNo Then
Exit Function
End If
'Exit Microsoft Access.
DoCmd.Quit
End Function
Public Function DisplayDatabaseWindow() As Integer
Dim strDocName As String strDocName = "Main
Switchboard" ' Close Main Switchboard form.
DoCmd.Close
' Give focus to Database window; select "Main Switchboard" form
DoCmd.SelectObject acForm, strDocName, True
End Function
lOMoARcPSD|37922327
lOMoARcPSD|37922327
327
Downloaded by Rot Ca (rotca780@gmail.com)
CÂU HàI VÀ BÀI TÀP CH£¡NG 5
Câu hái
1.Tệp CSDL của ACCESS có uôi (ph¿n má rộng ) là:
dbf
mdb
xls
2. Khi bắt ¿u vào làm việc với M.Acces, nếu muốn thiết lập một CSDL mới.
Ta chọn:
Blank Database
Open an Existing Database
3. Khi bắt ¿u khái ộng.M.Access, nếu muốn 1 tệp CSDL ra xem,
sửa…. Ta chọn:
Blank Wizard
Open an Existing Database
4. Đối tượng nào là ối tượng nằm trong tệp CSDL của Acces
Table, Query
Form, Macro
Report, Module
C¿ 3 nhóm trên
5. Cửa sổ Database bao gồm các nút nào:
Các nút ối tượng: B¿ng, Query, Form, Report, Macro. Moduls…
Các nút hành ộng (Open, Design, New)
C¿ hai nhóm nút trên
6. Trong cửa sổ Database nút hành ộng Open dùng ể:
Má 1 ối tượng
Đóng 1 ối tượng
Tạo 1 ối tượng mới
7. Trong cửa sổ Database nút hành ộng New dùng ể: Má 1 ối tượng
lOMoARcPSD|37922327
328
Downloaded by Rot Ca (rotca780@gmail.com)
Đóng 1 ối tượng
Tạo 1 ối tượng mới
8. Trong cửa sổ Database nút hành ộng Design dùng ể:
Chỉnh sửa thiết kế 1 ối tượng
Đóng 1 ối tượng
Tạo 1 ối tượng mới
9. Khi ang làm việc với M.Access muốn tạo ra một tệp CSDL mới khác ta
chọn File trên thanh menu sau ó chọn:
New
Open
Close
10. Khi ang làm việc với M.Access muốn má 1 tệp CSDL khác( ã có) ta chọn
File trên thanh menu sau ó chọn:
New
Open
Save as
11. Khi ang làm việc với M.Access muốn óng tệp CSDL ang ược má ta chọn
File trên thanh menu sau ó chọn:
Save
Open
Close
12. Khi ang làm việc với M.Access muốn thoát ra khỏi M.Acces ể trá về hệ iều
hành Windows ta chọn File trên thanh menu sau ó chọn:
Close
Open
Exit
13. Một tệp CSDL của M.Access gồm có:
1 b¿ng
Nhiều b¿ng
lOMoARcPSD|37922327
329
Downloaded by Rot Ca (rotca780@gmail.com)
2 b¿ng
14. Một tệp CSDL của M.Access gồm có:
1 Query
2 Query
Nhiều Query
15.Trong cửa sổ database muốn tạo b¿ng mới ta chọn Table(B¿ng) sau ó chọn:
New
Design
Open
Creat
16. Trong cửa sổ database muốn má 1 b¿ng á chế ộ nhập liệu ta chọn Table(B¿ng) sau ó
chọn tên b¿ng c¿n má rồi chọn tiếp:
New
Design
Open
Use
17. Trong cửa sổ database muốn chỉnh sửa lại cÁu trúc của b¿ng (ví dụ thêm 1 trưßng mới
vào b¿ng) ta chọn Table(B¿ng) sau ó chọn tên b¿ng c¿n chỉnh rồi chọn tiếp:
New
Design
Open
print
18. Khi tạo b¿ng, muốn nhập tên trưßng ta chọn cột:
Field name
Data type
Properties
Edit
19.Khi tạo b¿ng, muốn chỉ ịnh kiểu dữ liệu cho trưßng thì trên hàng của trưßng ó ta chọn
cột:
lOMoARcPSD|37922327
330
Downloaded by Rot Ca (rotca780@gmail.com)
Field name
Data type
Insert
20.Khi tạo khoá chính cho trưßng thì trước hết ta chọn trưßng ó, sau ó chọn insert trên thanh
menu rồi tiếp tục chọn:
select all
primary key copy
lOMoARcPSD|37922327
cut
21. Khi tạo b¿ng dữ liệu, ta muốn khai báo một trưßng có kiểu số thì trên cột Data Type
tại dòng tương ứng của trưßng ta chọn:
Number
Text
Date/time
Yes/no
22. Khi tạo b¿ng dữ liệu, ta muốn khai báo một trưßng kiểu ối t¤ÿng hình Ánh thì
trên cột Data Type tại dòng tương ứng của trưßng ta chọn:
OLE Object
Text
Hyperlink
Currency
23. Muốn xây dựng liên kết giữa các b¿ng có liên quan thì ta ph¿i: thêm các b¿ng có liên
quan vào cửa sổ?
Relationships window
Database
file
open
24.Trong cửa sổ Database muốn tạo 1 query mới ta chọn Query sau ó chọn:
New
Design
Open
file
25. Trong cửa sổ Database muốn chỉnh sửa 1 query ta chọn Query sau ó chọn tên query
c¿n sửa rồi chọn tiếp:
save
New
Design
Open
lOMoARcPSD|37922327
26. Trong cửa sổ Database muốn thực hiện 1 query ta chọn Query sau ó chọn tên query
thực hiện rồi chọn tiếp:
save as
New
Design
Open
27. Truy vÁn nào trong các truy vÁn sau là truy vÁn xóa:
Delete query
Open query
Append query
Make-table query
28.Truy vÁn nào trong các truy vÁn sau là truy vÁn bổ sung
Insert query
Update query
Append query
Make-table query
29.Truy vÁn nào trong các truy vÁn sau là truy vÁn tạo B¿ng:
New query
B¿ng query
Append query
Make-table query
30. Muốn tạo mới form bằng wizard trước hết trong cửa sổ Database, chọn Forms, nhÁn
New.Trong hộp thoại New Form chọn:
Form wizard
Design view
Datasheet
B¿ng
31. Muốn thiết kế form theo nhu c¿u trước hết trong cửa sổ Database, chọn Forms, chọn
New.Trong hộp thoại New Form sau ó ta tiếp tục chọn:
Form wizard
Design view
Datasheet
lOMoARcPSD|37922327
B¿ng
32. Muốn tạo mới một báo biểu trước hết tại cửa sổ Database ta chọn:
B¿ng
Form
Report
Module
33. Sau khi ã thưc hiện xong câu 32 muốn tạo Report á chế ộ Wizard ta chọn:
Design View
Report Wizard
AutoReport: tabular Bài tÁp thực hành
Xây dựng chương trình qu¿n lý sinh viên
Yêu c¿u về giao diện:
Sau khi thực hiện xong bài tập này bạn sẽ có một chương trình qu¿n lý tuy rÁt nhỏ, gọn
nhưng ¿y các chức năng: Nhập, xem dữ liệu, thực hiện các chức năng tìm kiếm, xóa
b¿n ghi, in các báo cáo. Khi chạy chương trình ta sẽ thÁy màn hình như sau:
- Các nút lệnh trên b¿ng chọn có các chức năng như sau:
- Khi nhÁn vào nút "Thoát khỏi Access" thì sẽ thoát khỏi Access và trá về
Windows
- Khi nhÁn vào nút "Về cửa sổ Database" thì thoát khỏi b¿ng chọn, trá về cửa sổ
Database của Access. Từ cửa sổ này ta có thể tạo mới, sửa ổi các ối tượng.
- Khi nhÁn vào nút "Nhập danh sách khoa" ta thÁy cửa sổ sau xuÁt hiện:
lOMoARcPSD|37922327
- Trên cửa sổ này ta thể nhập số liệu cho danh sách khoa: thêm mới, xóa, tìm kiếm...
- Khi nhÁn vào nút "Nhập danh sách sinh viên" ta thÁy xuÁt hiện cửa sổ:
- Khi nhÁn vào nút "Danh sách khoa" trong ph¿n "Xem và in báo cáo", ta thÁy xuÁt
hiện danh sách khoa trên màn hình thể in danh sách y khi nhÁn vào biểu tượng
máy in.
- NhÁn vào nút "Danh sách sinh viên" trong ph¿n báo cáo ta thÁy xuÁt hiện b¿ng
danh sách sinh viên và có thể in tương tự như trên.
lOMoARcPSD|37922327
TÀI LIÞU THAM KHÀO
[1] Phạm Văn Àt, Hướng dẫn sử dụng Microsoft Access- Nhà xuÁt b¿n khoa học và k
thuật, 1997.
[2] Nguyễn Thiện Tâm, Giáo trình Microsoft Access 2000 - Nhà xuÁt b¿n Đại Học Quốc
Gia TP.HCM, 2003.
[3] Phạm Thế Quế, Giáo trình Cơ sá dữ liệu- Nhà xuÁt b¿n Bưu Điện, 2004.
[4] Microsoft Access 2000: Buiding Application with Form and Report
| 1/86

Preview text:

lOMoARcPSD| 37922327
HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ACCESS GIàI THIÞU
Chương này cung cÁp cho sinh viên các kiến thức sau:
- Tổng quan về hệ qu¿n trị cơ sá dữ liệu
- Giới thiệu về hệ qu¿n trị cơ sá dữ liệu Access
- Các kiến thức cơ b¿n trong việc tạo lập cơ sá dữ liệu của Access, thiết kế xây
dựng b¿ng ( Table), mẫu biểu (Form), truy vÁn ( Query), Báo biểu ( Report)
5.1 TÞNG QUAN VÀ HÞ QUÀN TRà C¡ Sà DĂ LIÞU
5.1.1 Cơ sở dữ liệu (CSDL)
Có thể hiểu CSDL (Database) là một bộ sưu tập rÁt lớn về các loại dữ liệu tác nghiệp của
một cơ quan, xí nghiệp… ược tổ chức lưu trữ tập trung hay phân tán trên các thiết bị nhớ của
mạng máy tính và ược các hệ ứng dụng truy xuÁt, khai thác theo chế dộ trực tuyến hay tương
tác. Cụ thể có một số khái niệm ược hiểu như sau :
- CSDL là kho lưu trữ có tổ chức về các loại dữ liệu tác nghiệp, bao gồm các loại dữ liệu
về văn b¿n, ồ họa, âm thanh… ược mã hóa dưới dạng chuỗi bit 0 và 1 và ược lưu trữ trong
các bộ nhớ của máy tính. CSDL ph¿n ánh trung thực thế giới dữ liệu hiện thực khách quan.
- CSDL dùng chung cho nhiều ngưßi. CSDL là tài nguyên thông tin chung cho nhiều ngưßi
cùng sử dụng. BÁt kỳ ngưßi sử dụng nào trên máy tính, tại các thiết bị ¿u cuối, về nguyên
tắc ều có quyền truy nhập khai thác toàn bộ hay một ph¿n dữ liệu theo chế ộ trực tuyến hay
tương tác mà không phụ thuộc vào vị trí ịa lý của ngưßi sử dụng với các tài nguyên ó.
- CSDL ược các hệ ứng dụng khai thác, ể tìm kiếm, tra cứu, sửa ổi bổ sung hay loại bỏ
dữ liệu. Tìm kiếm và tra cứu thông tin là chức năng phổ biến nhÁt, quan trọng nhÁt của các
hệ CSDL. Hệ qu¿n trị CSDL (DBMS - DataBase Management System) là ph¿n mềm iều
khiển các chiến lược xây dựng CSDL. Khi ngưßi sử dụng ưa ra yêu c¿u truy nhập bằng một
ngôn ngữ dữ liệu nào ó thì DBMS tiếp nhận, thực hiện các thao tác trên CSDL lưu trữ và
tr¿ lại kết qu¿ (nếu có).
- Hiện nay, CSDL quan hệ (Relationship Database) ược sử dụng rộng rãi nhÁt. Đối tượng
nghiên cứu của CSDL quan hệ là thực thể và mối quan hệ giữa các thực thể. Thực thể và mối
quan hệ giữa các thực thể là hai ối tượng khác nhau về căn b¿n. Mối quan hệ giữa các thực
thể cũng là một loại thực thể ặc biệt. Trong cách tiếp cận CSDL quan hệ, ngưßi ta xây dựng
cơ sá lý thuyết ại số quan hệ xây dựng các quan hệ chuÁn khi kết nối không tổn thÁt thông
tin và khi biểu diễn dữ liệu là duy nhÁt. Dữ liệu ược lưu trữ trong bộ nhớ của máy tính không
những ph¿i tính ến yếu tố về tối ưu không gian lưu tữ, mà ph¿i ¿m b¿o tính khách quan,
trung thực dữ liệu hiện thực. Nghĩa là ph¿i ¿m b¿o tính nhÁt quán của dữ liệu và dữ liệu ược
sự vẹn toàn của dữ liệu.
5.1.2 Hệ quản trị CSDL :
a. Giái thißu: Hệ qu¿n trị CSDL là hệ thống ph¿n mềm iều khiển toàn bộ các chiến lược truy nhập CSDL lOMoARcPSD| 37922327
Các chức năng cơ b¿n của hệ qu¿n trị CSDL bao gồm -
Tạo ra và duy trì cÁu trúc dữ liệu - Cập nhật dữ liệu - Lưu trữ dữ liệu -
Tìm kiếm và xử lý các dữ liệu lưu trữ -
Cho phép nhiều ngưßi dùng truy xuÁt ồng thßi -
Hỗ trợ tính b¿o mật và riêng tư -
Cung cÁp một cơ chế chỉ mục (index) hiệu qu¿ ể lÁy nhanh các dữ liệu lựa chọn. -
B¿o vệ dữ liệu khỏi mÁt mát bằng các quá trình sao lưu và phục hồi.
b. Phân lo¿i hß quÁn trá CSDL:Về cơ b¿n, hiện nay có 3 loại hệ qu¿n trị CSDL chính là:
Hệ quÁn trị CSDL phân cấp chứa dữ liệu trong một cấu trúc như cây
Hệ này thiết lập một quan hệ cha-con trong dữ liệu. à ỉnh của cây, còn gọi là root, có thể
có một số nút bÁt kỳ. Các nút này lại có thể có một số nút con bÁt kỳ, v.v... Các hệ CSDL
phân cÁp ngày nay ã lạc hậu.
Hệ quản trị CSDL mạng chứa dữ liệu ở dạng các bản ghi và các liên kết
Hệ thống này cho phép nhiều quan hệ nhiều-nhiều hơn hệ CSDL phân cÁp. Một hệ qu¿n
trị CSDL mạng lưu trữ có hiệu qu¿ và rÁt nhanh, cho phép qu¿n lý các cÁu trúc dữ liệu phức
tạp. Tuy nhiên, chúng lại rÁt cứng nhắc và yêu c¿u nặng nề về thiết kế. Một hệ thống ăng
ký vé máy bay là một ví dụ của loại này.
Hệ quản trị CSDL quan hệ (Relationship DBMS)
Hệ qu¿n trị CSDL quan hệ có lẽ là một hệ qu¿n trị CSDL có cÁu trúc ơn gi¿n nhÁt. Trong
một hệ qu¿n trị CSDL quan hệ, dữ liệu ược tổ chức thành các b¿ng. Các b¿ng lại bao gồm
các b¿n ghi và các b¿n ghi chứa các trưßng. Mỗi trưßng tương ứng với một mục dữ liệu. Hai
hay nhiều b¿ng có thể liên kết nếu chúng có một hay nhiều trưßng chung.
Hệ qu¿n trị CSDL quan hệ ược sử dụng khá dễ dàng và phát triển nhiều trong những năm
g¿n ây. Hiện nay có một số hệ qu¿n trị CSDL quan hệ ược sử dụng rộng rãi trên thị trưßng
như Oracle, Informix, Sybase, Foxpro, Access,…..
Microsoft Access là một hệ qu¿n trị CSDL ơn gi¿n, dễ sử dụng, rÁt thích hợp cho các
ứng dụng vừa và nhỏ. Tài liệu này sẽ trình bày về các khái niệm và cách sử dụng một cách
căn b¿n hệ qu¿n trị CSDL này.
5.2 HÞ QUÀN TRà CSDL ACCESS
5.2.1 Tổng quan về Access
Về cơ b¿n, Access là một hệ qu¿n trị CSDL. Tương tự các s¿n phÁm khác thuộc loại này,
Access lưu trữ và thu thập các thông tin (thưßng gọi là dữ liệu), hiển thị các thông tin yêu
c¿u và tự ộng hoá các thao tác ược lặp lại (thí dụ duy trì các tài kho¿n hoặc một hệ thống
thông tin cá nhân, thực hiện việc kiểm soát và lập b¿ng kiểm kê). Với Access, ta có thể tạo
ra các biểu nhập dữ liệu dễ sử dụng. Ta có thể hiển thị các thông tin theo ý muốn và tạo các báo cáo phức tạp. lOMoARcPSD| 37922327
Access cũng là một ứng dụng CSDL mạnh của Windows, nó là một s¿n phÁm ược thiết
kế ể hỗ trợ ngưßi phát triển hoặc ngưßi dùng cuối. Bên cạnh tính tiện dụng và nhÁt quán của
Microsoft Window, Microsoft Access cũng bổ sung thêm tính hiệu qu¿ trong qu¿n lý CSDL.
Do c¿ Access và Window ều là những s¿n phÁm của Microsoft nên c¿ hai phối hợp với nhau
hoạt ộng rÁt tốt. Access có kh¿ năng chạy trên nền Windows95, Windows 98, Windows
ME, Windows 2000 …, do ó Access có mọi lợi thế của Windows. Ta có thể cắt dán, sao
chép các dữ liệu từ bÁt kỳ một ứng dụng nào của Windows vào Access hoặc ngược lại. Ta
cũng có thể tạo ra thiết kế biểu mẫu trong Access và cắt dán vào thiết kế báo cáo.
Khi sử dụng các ối tượng OLE (Object Linking and Embedding - Liên kết và nhúng ối
tượng) trong các s¿n phÁm của Windows và Microsoft Office (như Excel, Word, PowerPoint
và Outlook), ta có thể má rộng kh¿ năng của Access ể hợp nhÁt các ối tượng có thể xem ược
của các s¿n phÁm Microsoft này mà không c¿n ph¿i sao chép nội dung của chúng và dán
vào Access. Kh¿ năng này cho phép ta có thể làm việc với các dữ liệu thực tế có sẵn trong
các s¿n phÁm này mà không c¿n ph¿i sao chép thông tin. Bằng cách sử dụng OLE, ta có thể
thực sự thay ổi các thông tin trong ối tượng biểu cơ sá (như Excel, Word, v.v...). Với các má
rộng của Internet trong Access, ta có thể lập các biểu tương tác với các dữ liệu lÁy trực tiếp
từ các trang Web WWW và có thể trực tiếp chuyển các biểu ta lập thành các trang truy cập
dữ liệu cho các mạng nội bộ hợp nhÁt làm việc trực tiếp với trình duyệt Internet của ta.
Là một hệ qu¿n trị dữ liệu quan hệ, Access cho phép ngưßi sử dụng cùng lúc có thế truy
nhập các thông tin từ hai b¿ng trá lên - thậm chí có thể liên kết các b¿ng CSDL ể lạo lập
b¿ng mới. Access có thể làm gi¿m tính phức tạp của các dữ liệu và làm cho công việc dễ
thực hiện hơn. Có thể nối các b¿ng Access của ta với các dữ liệu của máy tính lớn hoặc máy
chủ - thậm chí có thể sử dụng một b¿ng ược tạo trong các chương trình dBase hoặc Excel.
Có thể dễ dàng kết hợp các kết qu¿ kết nối với một b¿ng tính trong Excel.
Kh¿ năng kết nối của Access với các dữ liệu bên ngoài (lưu giữ trong các dạng CSDL
khác) làm cho Access trá thành một chương trình rÁt thiết thực. Có thể sử dụng Access trong
một môi trưßng mạng ể liên kết với một loạt các b¿ng từ các CSDL khác - vừa á dạng liên
kết nội bộ (trên cùng một máy) vừa liên kết xa (thậm chí với CSDL của một máy tính lớn
như Oracle hoặc DB2). Access có thể kết nối trực tiếp với các b¿ng bên ngoài này hoặc có
thể nhập về sử dụng nội bộ. Khi ã kết nối hoặc nhập các b¿ng bên ngoài về, ta có thể tạo lập
các biểu và các báo cáo làm việc với các thông tin - ể thay ổi hoặc xem hoặc in các thông tin
5.2.2 Khởi ộng, cửa sổ làm việc của Microsoft Access
5.2.2.1 Khởi ộng Microsoft Access
Microsoft Access là hệ qu¿n trị CSDL ược cài ặt trên môi trưßng Windows nên ta có thể
cài ặt và khái ộng Access tương tự như khái ộng các chương trình ứng dụng khác như
Micrsoft Word, Excel… Có thể khái ộng theo các bước như sau:
Trên thanh Start má Program -> Microsoft Office -> Microsoft Access 2010 lOMoARcPSD| 37922327
Khi ó hộp thoại ¿u tiên xuÁt hiện trên màn hình lOMoARcPSD| 37922327
Hộp thoại này cho phép chúng ta chọn các hành ộng sau:
o Blank database : Tạo mới hoàn toàn một tập tin CSDL Access trống (tập tin ó
ph¿n má rộng là accdb - chưa có dữ liệu) o Blank web database: o
Recent templates: o Sample
templates: o My templates:
o Open: Má một tập tin CSDL Access ã ược tạo trước ó
5.2.2.2 Các thành phần trong cửa sổ khởi ộng
Sau khi khái ộng Microsoft Access, cửa sổ của Microsoft Access xuÁt hiện. Các thành
ph¿n trong cửa sổ này gồm:
a. Thanh Quick Access: Hiển thị bên trái thanh tiêu ề, mặc ịnh thanh Quick Access gồm
các nút công cụ Save, Undo,…
Bên ph¿i của Quick Access chứa nút Customize, khi cơ sá dữ liệu ang má, nếu click
nút Customize sẽ xuÁt hiện một menu giúp bạn chỉ ịnh các nút lệnh hiển thị trên thanh
Quick Access, nếu các lệnh không có trong menu, bạn có thể kích vào nút More
Commands hoặc kích ph¿i trên thanh Quick Access chọn Customize Quick Access Toolbar.
Kích vào More Commands….cửa sổ hiện ra như sau: lOMoARcPSD| 37922327 b. Vùng làm việc:
Khi khởi ộng Access, trong cửa sổ khởi ộng, mặc ịnh tab File và lệnh New trong tab
File ược chọn, cửa sổ ược chia thành 3 khung:
- Khung bên trái gồm các lệnh trong tab File
- Khung giữa: chứa các loại tập tin cơ sở dữ liệu mà bạn có thể tạo mới.
- Khung bên phải: ể nhập tên và chọn vị trí lưu tập tin mới tạo và thực thi lệnh tạo
mới cơ sở dữ liệu.
c. Thanh Ribbon: Thanh Ribbon ược tạo bái nhiều tab khác nhau, nếu truy cập vào một tab
bạn có thể kích. lOMoARcPSD| 37922327
Ví dụ: Để má một tập tin CSDL chúng ta ph¿i vào File rồi chọn Open.
d. Thanh Navigation Pane
Navigation Pane là khung chứa nội dung chính của cơ sá dữ liệu. Từ khung Navigation
Pane, bạn có thể má bÁt kỳ Table, Query, Form, Report, Macro, hoặc module trong
cơ sá dữ liệu bằng cách kích úp vào tên của ối tượng.
Bằng cách kích ph¿i vào tên của ối tượng trong Navigation Pane, bạn có thể thực hiện
các thao tác với ối tượng như: ổi tên, sao chép, xóa, import, export một ối tượng…
NhÁn phím F11 hoặc kích vào mũi tên kép á góc trên bên ph¿i của khung Navigation
Pane ể hiển thị hoặc Án khung Navigation Pane.
e. Thanh trạng thái (Status bar): Thể hiện tình trạng hiện hành của các phím dặc biệt
CapsLock, Numlock…), các thông báo, hướng dẫn sử dụng Microsoft Access . Thanh ti Tha ê nh ti u ề ê u ề Thanh ribbon trạng thái lOMoARcPSD| 37922327
Nói chung các thao tác với thanh công cụ giống với các thanh công cụ trong Winword
5.2.2.3 Các thao tác ối với tệp tin CSDL
Tạo một tệp mới: Khi khái ộng Access tại cửa sổ khái ộng thì cũng có thể tạo nên một
tệp CSDL mới bằng cách chọn Blank Database từ của sổ khái ộng của Access.
Mặt khác tại cửa sổ Database có thể làm như sau: File -> New sau ó chọn Database, OK.
Tiếp tục ph¿i ưa tên tệp vào rồi chọn Create.
Mở một tệp CSDL của Acces ã tồn tại trong máy tính: Chúng ta cũng có thể má một
tệp CSDL ã tồn tại trong Access ngay từ màn hình khái ộng bằng cách chọn Open.Mặt khác
tại cửa sổ Database có thể làm như sau: File -> Open, chọn Tên tệp tin, OK Đóng tệp CSDL:
Chọn File -> Close hoặc óng cửa sổ Thoát khỏi Access: Chọn File -> Exit.
5.2.2.4 Các ối tượng bên trong tập tin CSDL Access:
Một tệp CSDL gồm có 7 ối tượng cơ b¿n sau:
BÁng (Table): Là thành ph¿n cơ sá của tập tin CSDL của Access, dùng ể lưu trữ dữ
liệu. Hệ thống b¿ng chính là cÁu trúc CSDL. Do ó ây là dữ liệu ¿u tiên ph¿i ược tạo ra trước.
Bên trong một b¿ng, dữ liệu ược lưu thành nhiều cột và nhiều hàng
Truy vấn (Query): Là công cụ cho phép ngưßi sử dụng dùng ngôn ngữ truy vÁn có
cÁu trúc SQL (Structure Query Language) hoặc công cụ truy vÁn bằng ví dụ QBE (Query
by Example) ể thực hiện các truy vÁn rút trích, chọn lựa dữ liệu hoặc cập nhật dữ liệu (thêm,
sửa, xóa) trên các b¿ng. Truy vÁn bằng thí dụ là công cụ hỗ trợ việc thực hiện các truy vÁn
mà không c¿n ph¿i viết lệnh SQL, mà chủ yếu chỉ dùng kỹ thuật kéo - th¿ trên cơ sá ồ
họa.Trong tài liệu này chúng tôi chủ yếu i vào truy vÁn QBE.
Biểu m¿u (Form): Cho phép ngưßi sử dụng xây dựng nên các màn hình dùng ể cập
nhật hoặc xem dữ liệu lưu trong các b¿ng, ngoài ra cũng cho phép ngưßi sử dụng tạo ra các
hộp thoại hỏi áp giữa ngưßi sử dụng và hệ thống ứng dụng.
Báo cáo (Report): Cho phép chúng ta tạo ra kết xuÁt từ các dữ liệu ã lưu trong các
b¿ng, sau ó sắp xếp lại và ịnh dạng theo một khuôn dạng cho trước và từ ó có thể ưa kết
xuÁt này ra màn hình hoặc máy in hoặc các dạng tập tin Word/ Excel.
TÁp lßnh (Macro): Là công cụ cung cÁp cho ngưßi sử dụng tạo ra các hành ộng
ơn gi¿n trong Microsoft Access như má biểu mẫu, báo cáo, thực hiện một truy vÁn… mà
không c¿n ph¿i biết gì về ngôn ngữ lập trình Visual Basic.
Bß mã lßnh (Module): Với ngôn ngữ Visual Basic cho phép ngưßi sử dụng xây
dựng các hàm hoặc thủ tục của riêng mình ể thực hiện một hành ộng phức tạp nào ó mà
không thể làm bằng công cụ tập lệnh, hoặc với mục ích cho chương trình chạy nhanh hơn.
Các trang Web dă lißu (Pages): Cho phép chúng ta có thể tạo ra các trang Web dữ
liệu mà trên ó có chứa dữ liệu ộng lÁy từ một CSDL nào ó. Ngưßi sử dụng có thể cập nhật
dữ liệu trực tiếp vào cơ sá dữ liệu thông qua trình duyệt Web (Microsoft Internet Explorer) .
5.2.2.5. Làm việc với cửa sổ dữ liệu trong Microsoft Access: lOMoARcPSD| 37922327
Cửa sổ CSDL (cửa sổ Database) là cửa sổ làm việc chính của Microsoft Access, trên cửa
sổ này cho phép ngưßi sử dụng tạo mới, hoặc sửa ổi hoặc xóa các ối tượng cơ b¿n trong tập
tin CSDL Access bằng cách chọn các dãy nút dọc và ngang
a. Các thành ph¿n chính trong cāa sß CSDL của Microsoft Access
Các nút ối tượng: B¿ng, Query, Form, Report, Macro. Moduls… cho phép chúng ta
lựa chọn một loại ối tượng làm việc hiện hành trong cửa sổ CSDL.
Các nút hành ộng: Open, Design, New: cho phép chúng ta má, sửa và tạo mới các ối
tượng làm việc hiện hành (là ối tượng ang ược chọn trong danh sách các ối tượng) b. Đóng
mßt ối t¤ÿng ang má

Kích ph¿i vào tên ối tượng ang má chọn Close hoặc nhắp vào nút Close trên cửa sổ chứa
ối tượng. c. Xóa mßt ối t¤ÿng
Chọn ối tượng c¿n xóa, chọn Home rồi Án Delete, rồi xác nhận lại ồng ý xóa thật không (chọn YES).
d. Đßi tên mßt ối t¤ÿng
Chọn ối tượng c¿n ổi tên trên thanh Navigation Pane, chọn Rename, sau ó ghi vào tên
mới (BÁm ESC ể tr¿ lại tên cũ trước ó) e. Àn hoặc hißn cāa sß CSDL Àn: Chọn Window -> Hide
Hiện: Chọn Window -> Unhide (hoặc nhÁn phím F11)
5.2.3 Làm việc với các ối tượng trong Access
Trước khi bắt tay vào xây dựng các b¿ng, biểu mẫu, các báo biểu và các thành ph¿n khác
của một CSDL, ta c¿n ph¿i bỏ thßi gian thiết kế chi tiết. Một thiết kế tốt là chìa khoá cho sự
thành công của mọi CSDL, nó cho phép ngưßi dùng thao tác một cách dễ dàng, chương trình
chạy một cách hiệu qu¿ và chính xác.
5.2.3.1 Quy trình thiết kế CSDL
Các bước cơ b¿n ể thiết kế một CSDL là: 1.
Xác ịnh mục ích của CSDL: CSDL dùng ể lưu trữ thông tin gì, c¿n rút ra những thông tin gì từ CSDL. 2.
Xác ịnh các bảng dữ liệu, table, cần có trong CSDL: một b¿ng không ược chứa
dữ liệu trùng lặp, và thông tin cũng không nên ể bị trùng lặp giữa các b¿ng. Mỗi một b¿ng
chỉ nên chứa thông tin liên quan ến một chủ ề. 3.
Xác ịnh các trường dữ liệu, field, cần có trong mỗi bảng dữ liệu: Mỗi b¿ng chứa
thông tin về cùng một chủ thể, mỗi trưßng của một b¿ng lại chứa các thông tin riêng biệt về
chủ thể ó. Ta chỉ nên ghi nhận các thông tin c¿n thiết từ thực tế, không nên có các trưßng
tính toán - calculated field. Lưu trữ thông tin dưới dạng chi tiết nhÁt có thể (ví dụ: Họ, Tên
chứ không nên Họ và Tên). 4.
Xác ịnh các trường chứa giá trị duy nhất ở mỗi bản ghi: Để Access kết nối ược
các thông tin lưu trữ trong các b¿ng riêng biệt . Ví dụ: kết nối các khách hàng với ơn ặt hàng
của ngưßi ó. Mỗi b¿ng c¿n ph¿i có một trưßng hoặc một nhóm các trưßng chứa giá trị duy lOMoARcPSD| 37922327
nhÁt dùng ể phân biệt giữa các b¿n ghi trong một b¿ng. Một trưßng như vậy gọi là trưßng khoá - Primary key. 5.
Xác ịnh các mối quan hệ giữa các bảng: Ta chỉ ra cho Access cách ể tìm kiếm
và ưa các thông tin liên quan lại tập hợp với nhau. 6.
Tinh chỉnh thiết kế: Sau khi ã thiết kế, ta c¿n vận hành thử nghiệm CSDL ể ¿m
b¿o các chức năng c¿n có ều thực hiện suôn sẻ úng như mong ợi. Nếu phát hiện những thông
tin gì không c¿n thiết thì ta nên loại bỏ ể tránh sự cồng kềnh. 7.
Nhập dữ liệu và tạo các ối tượng CSDL: Khi ã hài lòng với cÁu trúc các b¿ng
biểu và các mối liên kết là lúc ph¿i nhập liệu. Dựa trên dữ liệu ã nhập ta có thể dễ dàng xây
dựng các biểu mẫu, báo biểu, truy vÁn ể phục vụ công tác xử lý ¿u vào và ¿u ra thông tin. 8.
Sử dụng công cụ phân tích của Access: Access cung cÁp công cụ B¿ng Analyzer
Wizard giúp ngưßi dùng phân tích thiết kế ã có và chỉnh sửa chúng.
5.2.3.2 Tạo và quản lý các bảng dữ liệu (Table)
Nói chung, một b¿ng dữ liệu là tập hợp các dữ liệu về một chủ ề nhÁt ịnh (ví dụ s¿n
phÁm, ngưßi bán). Sử dụng mỗi b¿ng riêng cho mỗi ối tượng cho phép ta lưu dữ liệu một
cách rõ ràng, hiệu qủa , tránh lưu nhiều l¿n một thông tin, gi¿m thiểu lỗi nhập liệu.
B¿ng tổ chức dữ liệu theo cột (gọi là trưßng - field), và theo hàng (gọi là b¿n ghirecord).
Ta dùng một trưßng chung ể liên kết hai b¿ng. Việc này cho phép Access kết xuÁt hiển
thị dữ liệu từ các b¿n ghi á các b¿ng dữ liệu khác nhau có liên quan ể xem, sửa, hoặc in ra báo cáo Mỗi trưßng trong b¿ng s¿n phÁm chứa B¿ng: S¿n phÁm
cùng một kiểu thông Tên S¿n PhÁm Mã nhà cung cÁp Số lượng
trong kho tin cho tÁt c¿ các s¿n GiÁy Vĩnh Phúc 1 20 phÁm, như số lượng. GiÁy Bãi bằng 2 50 GiÁy Indo 3 20
Mỗi một b¿n ghi chứa tÁt c¿ thông tin liên quan ến một s¿n phÁm, như là tên
s¿n phÁm, mã nhà cung cÁp, số lượng trong kho ... B¿ng: Nhà cung cÁp Trưßng dữ liệu
Mã nhà cung Tên nhà cung cÁp chung liên kết dữ cÁp liệu từ hai b¿ng 1 Nhà máy giÁy Vĩnh 2 Nhà máy giÁy Bãi Bằng 3
Công ty xuÁt nhập khÁu h¿i phòng B¿ng: S¿n phÁm
Tên S¿n PhÁm Nhà cung cÁp Số liệu trong kho Giẫy Vĩnh Phúc 1 20 GiÁy Bãi Bằng 2 50 GiÁy Indo 3 20 lOMoARcPSD| 37922327
a. Thi¿t k¿ mßt bÁng dă lißu
Cách 1: Tạo b¿ng dữ liệu bằng cách nhập dữ liệu 1. Chọn cửa sổ Database . 2.
NhÁn Tables bên dưới Objects, rồi chọn New trong cửa sổ Database. 3.
NhÁn úp Datasheet View. Một lưới dữ liệu trống ược hiển thị với các tên ng¿m
ịnh của các cột là Field1, Field2,... 4.
Đổi tên cột bằng cách nháy úp chuột vào tiêu ề các cột Field1, Field2…, rồi nhập vào tên mới.. 5.
Nhập dữ liệu vào lưới nhập liệu, nhớ rằng mỗi cột chỉ ược nhập một kiểu dữ liệu
duy nhÁt từ dòng thứ nhÁt ến dòng cuối cùng. Tức là, nếu dòng ¿u dữ liệu kiểu số, kiểu
ngày,... thì các dòng tiếp theo cột ó dữ liệu cũng ph¿i là kiểu số, kiểu ngày. Access sẽ tạo
kiểu dữ liệu (data type) và dạng hiển thị (display format) tưng ứng cho mỗi cột. Các cột bỏ
trống sẽ bị xoá khi ta ghi lại lưới nhập liệu (DataSheet). 6.
Chọn Save trên thanh công cụ ể ghi lại mọi thay ổi. Access sẽ hỏi nếu bạn có
muốn tạo một mã khoá chính cho b¿ng vừa tạo (Primary key).
Cách 2: Tự thiết kế b¿ng dữ liệu
Trình tự thiết kế 1.
Chuyển sang cửa sổ CSDL. Ta có thể dùng phím F11 ể chuyển ổi giữa các cửa sổ. 2.
NhÁn Tables bên dưới Objects, rồi New trong cửa sổ Database. 3.
NhÁn úp chuột vào Design View ể chọn chế ộ thiết kế. 4.
Định nghĩa các trưßng của b¿ng. 5.
Thiết lập trưßng khóa – Primary key – trước khi ghi lại thiết kế
Lưu ý: Không nhÁt thiết ph¿i xác ịnh trưßng khóa, nhưng nên tạo trưßng khóa, vì căn cứ
vào các trưßng khóa này, về sau khi ta thiết kế các truy vÁn, biểu mẫu, báo biểu, Access sẽ
tự ộng xác ịnh các liên kết c¿n thiết ể kết nối dữ liệu. 6.
NhÁn chuột vào nút lệnh Save
trên thanh Quick Access ể ghi lại mọi thay
ổi, nhập vào tên của b¿ng.
Cửa sổ thiết kế
Trong chế ộ thiết kế, ta có thể thiết kế một b¿ng từ ¿u, hoặc thêm, xoá, hoặc sửa ổi theo
sá thích các trưßng của một b¿ng ã có. Trong chế ộ này, cửa sổ giao diện có các khu vực chính dưới ây: lOMoARcPSD| 37922327
Field Name - Tên trưßng: Nếu ta muốn theo dõi thêm các thông tin, hãy bổ sung thêm các
trưßng mới. Nếu tên của một trưßng ã có chưa ủ biểu ạt ý nghĩa, ta có thể ổi tên trưßng.
Data types - Kiểu dữ liệu: Việc thiết lập kiểu dữ liệu của một trưßng ể ịnh nghĩa kiểu dữ
liệu ta sẽ nhập vào trưßng ó. (Kiểu dữ liệu: tính chÁt của một trưßng mà xác ịnh kiểu dữ liệu
nào sẽ ược lưu trữ trong trưßng. Ví dụ, trưßng có thuộc tính Data type là Text có thể lưu dữ
liệu dạng chữ hoặc số, nhưng một trưßng Number chỉ có thể chứa dữ liệu số).
Primary Key - Khoá chính: Sử dụng một mã số duy nhÁt, gọi là khoá chính ể phân biệt
mỗi một b¿n ghi trong b¿ng. Một khoá chính của b¿ng dùng ể tham chiếu ến các b¿n ghi liên
kết trong các b¿ng khác. Khóa chính có thể là một hoặc nhiều trưßng (cột) mà duy nhÁt giá
trị của nó có thể dùng ể phân biệt các b¿n ghi của một b¿ng. Một khoá chính không thể chứa
giá trị rỗng - Null và ph¿i là chỉ mục sắp xếp duy nhÁt.
Field properties - Thuộc tính của trưßng: Các thuộc tính của trưßng là tập hợp các
Các kiểu dă lißu của mßt tr¤ßng:
Sử dụng thuộc tính kiểu dữ liệu ể chỉ ịnh kiểu dữ liệu sẽ ược lưu trong trưßng. Mỗi trưßng
chỉ có thể chứa thông tin của một kiểu dữ liệu. Kiểu dă lißu Kích th¤ác Mô tÁ lOMoARcPSD| 37922327
Tối a 255 ký tự, quy ịnh
(Ng¿m ịnh) Ký tự hoặc tổ hợp giữa ký bái thuộc tính FieldSize Text
tự và chữ số, hoặc cũng có thể chứa só (kích thước trưßng).
không c¿n tính toán như số iện thoại. Memo Những oạn văn b¿n dài Tối a 65,535 ký tự 1, 2, 4, hoặc 8 bytes
Dữ liệu số dùngtrong các phép tính Number
(16 bytes nếu chọn kiểu số toán số học. là Replication ID).
Các giá trị ngày tháng hoặc thßi gian
Date/Time tính từ năm 100 ến năm 9999. 8 bytes.
Kiểu tiền tệ. Độ chính xác ến 15 số về Currency
bên trái dÁu phÁy và 4 chữ số về bên ph¿i 8 bytes.
Số theo thứ tự tăng d¿n, mỗi l¿n 1 ơn
vị) hoặc số ngẫu nhiên do Access sinh ra 4 bytes (16 bytes nếu
khi thêm một b¿n ghi mới ể phân biệt giữa AutoNumber
thuộc tính FieldSize ược
các b¿n ghi trong một b¿ng.Trưßng
thiết lập là Replication ID).
AutoNumber không thể bị sửa ổi..
Trưßng chỉ chứa một trong hai giá trị Yes/No
(Yes/No, True/False, hoặc On/Off). 1 bit.
Một ối tượng (như trang tính Excel, văn Tối a 1 gigabyte (giới
b¿n Word, hình hoạ, âm thanh) ược liên
hạn bái kho¿ng còn trống
OLE Object kết hoặc nhúng vào b¿ng. trên ổ ĩa) Hyperlink Liên kết Tối a 2048 ký tự
Tạo ra một trưßng mà cho phép ta nhập Cùng kích thước với Lookup
liệu bằng cách chọn giá trị từ một b¿ng
trưßng khoá dùng ể thực Wizard
khác, hoặc từ một danh sách các giá trị. hiện thao tác tìm kiếm.
Ta chỉ có thể thiết lập các thuộc tính này á ph¿n trên cửa sổ thiết kế b¿ng dữ liệu (b¿ng Design view). b. Chßnh sāa bÁng
Thêm mßt tr¤ßng vào bÁng dă lißu trong ch¿ ß thi¿t k¿ Design view: lOMoARcPSD| 37922327
1. Má b¿ng á chế ộ Design view.
2. NhÁn dòng muốn chèn thêm cột, nhÁn Insert Rows trong tab Design trên thanh ribbon.
3. Trong cột Field Name nhập tên cho trưßng.
4. Trong cột Data Type, nhÁn vào mũi tên,
chọn kiểu dữ liệu từ danh sách
5. Thiết lập các thuộc tính cho trưßng.
6. Ghi lại mọi sự thay ổi khi óng thoát.
Quy ánh tính hÿp lß của dă lißu tr¤ác khi l¤u 1.
Má b¿ng á chế ộ Design view. 2. NhÁn chuột vào nút
trên thanh công cụ ể hiển thị trang thuộc tính của
b¿ng. Trên dòng Validation Rule, nhập vào quy tắc xác ịnh tính hợp lệ của dữ liệu. 3.
Trên dòng ValidationText, ánh vào lßi thông báo khi dữ liệu nhập vào vi phạm
quy tắc dữ liệu. Ví dụ, Ví dụ: Doanh nghiệp xác ịnh là hàng chỉ có
thể ược giao ến khách sớm nhÁt là sau một
ngày. Vậy quy tắc xác ịnh tính hợp lệ của dữ
liệu là: [Hạn giao hàng]
>= [Ngày ặt hàng] + 1 (hình bên)
Nếu ta nhập vào hạn giao hàng cùng ngày
hoặc trước ngày ặt hàng, Access hiển thị ngay
lßi c¿nh báo (Validation text). •
T¿o chß māc sÃp x¿p dă lißu 1.
Má b¿ng trong chế ộ Design view. 2.
NhÁn chuột vào nút lệnh Indexes trên thanh công cụ. lOMoARcPSD| 37922327 3.
Tại dòng còn trống ¿u tiên trong cột Index Name, ánh vào tên của chỉ mục. 4.
Trong cột Field Name, nhÁn chuột vào mũi tên bên ph¿i, chọn trưßng dùng làm chỉ mục sắp xếp. 5.
Nếu muốn chọn nhiều trưßng ể làm chỉ mục, tại dòng tiếp theo trên cột Field
Name, chọn trưßng tiếp theo (Lưu ý ể cột Index Name bỏ trống trên dòng ó).
Làm lại bước này cho ến khi ã có tÁt c¿ các trưßng muốn có trong chỉ mục (tối a là 10 trưßng). •
T¿o khóa chính PrimaryKey
Một trưßng có tính chÁt khóa là một trưßng chứa giá trị duy nhÁt, khác nhau giữa các
b¿n ghi, dùng ể phân biệt giữa b¿n ghi này và b¿n ghi khác. Để thiết lập tính chÁt khóa cho
trưßng, má cửa sổ Indexes, nhÁn chuột vào tên trưßng, chuyển thuộc tính
Primary và Unique thành Yes. •
T¿o mßt tr¤ßng tìm ki¿m dă lißu tÿ các bÁng dă lißu khác
Khi nhập dữ liệu cho một ơn ặt hàng, ta ph¿i nhập vào tên khách hàng.
Nếu thông tin về khách hàng ó ã ược lưu á trong b¿ng Khách hàng thì
tốt hơn là ta tìm mã số của khách hàng ó và nhập vào b¿ng ơn ặt hàng.
Ta nên chọn cách làm này, vì nếu ta nhập vào bằng tay thì rÁt dễ sai sót.
Khi nhập liệu bị lỗi, Access sẽ không thể nhận ra khách hàng.
Để làm ược iều này, khi thiết kế b¿ng ơn ặt hàng, ta ph¿i làm như sau : -
NhÁn chuột vào trưßng Khách hàng, chọn Lookup Wizard trong cột Data
type. Trong cửa sổ sau hiện ra tiếp theo, chọn mục thứ nhÁt. NhÁn Next ể tiếp tục lOMoARcPSD| 37922327 -
Access hỏi chọn b¿ng nào chứa dữ liệu c¿n tìm. Chọn b¿ng Khách hàng. NhÁn Next ể tiếp tục. -
Access hỏi giá trị của trưßng nào sẽ ược chọn hiển thị. Nếu ta chọn cùng lúc
nhiều trưßng, chỉ trưßng trên cùng sẽ lưu dữ liệu vào trong b¿n ghi mới. à ây ta chọn 3
trưßng: Mã khách hàng, Tên công ty, và Địa chỉ. lOMoARcPSD| 37922327 -
Có tÁt c¿ 3 cột tương ứng với 3 trưßng, nhưng ta chọn mục Hide Key column
ể dÁu không hiển thị trưßng khoá. NhÁn Next ể tiếp tục. -
Bước cuối cùng ta ặt tên cho trưßng : Mã Khách hàng. lOMoARcPSD| 37922327 -
Ghi lại mọi sự thay ổi bằng cách nhÁn chuột lên nút lệnh Save trên thanh công cụ.
Má b¿ng Đơn ặt hàng á chế ộ nhập liệu. Với mỗi b¿n ghi bÁt kỳ, khi ta c¿n nhập vào một
khách hàng, nhÁn chuột vào mũi tên á bên ph¿i của cột Khách hàng, một danh sách các
khách hàng từ trước ến nay của Doanh nghiệp hiện ra gồm 2 cột, cột Tên Khách hàng và cột
Địa chỉ Khách hàng. NhÁn chuột vào tên khách hàng trên danh sách này ể nhập dữ liệu vào trưßng.
Rõ ràng với cách thiết kế trưßng tìm kiếm như thế này, ta có thể kiểm soát hoàn toàn quá
trình nhập liệu, dữ liệu nhập vào luôn luôn úng. Nếu bạn nhập vào tên một khách hàng mà
chưa có á b¿ng Khách hàng, chương trình sẽ báo lỗi. Hơn nữa, dù về mặt hiển thị, cột Khách
hàng á b¿ng ơn ặt hàng hiển thị tên khách hàng, nhưng thực tế cột này lại lưu giá trị Mã
Khách hàng. Điều này cho phép gi¿m kích thước của CSDL vì mã khách hàng thì ngắn hơn tên khách hàng. •
Má mßt bÁng dă lißu 1.
Trong cửa sổ Database, click Tables dưới Objects. lOMoARcPSD| 37922327 2.
Chọn tên của B¿ng muốn má. 3.
Để má b¿ng á chế ộ thiết kế, Design view, nhÁn Design trong thanh công cụ của cửa sổ Database. 4.
Để má b¿ng trong khung nhìn dạng lưới, Datasheet, nhÁn Open. •
Sā dāng thanh công cā của Trang dă lißu Datasheet
Sau khi ã thiết kế xong b¿ng dữ liệu , bÁm
ể chuyển dang chế ộ nhập liệu.
Các nút lệnh thao tác chính ối với một b¿ng trên thanh công cụ Toolbar:
Cắt, copy, dán dữ liệu.
In, xem trước khi in một báo cáo
Sắp xếp theo thứ tự tăng d¿n, gi¿m d¿n
Lọc dữ liệu theo giá trị chọn, theo form.
Tìm kiếm thông tin, thay thế bằng thông tin mới. Thêm, xoá một b¿n ghi.
Mô hình liên kết giữa các b¿ng trong một CSDL.
Liên kết với các ứng dụng Office khác.
Xoá một dòng, một b¿n ghi
Lập Khóa chính cho một b¿ng. Ngoài ra: -
Để thêm một trưßng dữ liệu, chọn Column trong menu Insert. -
Để ổi tên một cột dữ liệu, nháy úp mũi tên chuột lên tiêu ề cột, ánh vào tên mới. -
Để thay ổi thứ tự của một cột, nhÁn trỏ chuột vào cột ó, giữ chuột và kéo cột ó ến vị trí mới. -
Muốn giÁu i một cột, dùng chuột chọn cột ó, chọn lệnh Hide columns trong menu Format. -
Muốn luôn cho một cột ược hiển thị dù cho ta cuộn màn hình, dùng lệnh
Format\Freeze columns. -
Muốn thay ổi ộ rộng của một cột, một dòng: lOMoARcPSD| 37922327
Trưßng mã nhân viên xuÁt hiện trong c¿ hai
Nháy úp chuột vào lề của cột ể b¿ng
thay ổi chiều rộng của cột úng bằng chiều rộng của dữ liệu
NhÁn và giữ trỏ chuột, kéo lề Khóa ngoại
của dòng, cột ể thay ổi chiều cao, ộ rộng của dòng hay cột ó.
5.2.3.3 Tạo các liên kết giữa các bảng dữ liệu
a. T¿i sao l¿i phÁi xác ánh liên k¿t ?
Sau khi ã xây dựng và nhập xong dữ liệu vào các b¿ng, ta ph¿i chỉ cho Microsoft Access
làm thế nào ể kết xuÁt các dữ liệu. Bước ¿u tiên là ể làm iều ó là xác ịnh các mối liên kết,
relationship, giữa các b¿ng.
Ví dụ á ây, các trưßng từ 3 b¿ng khác nhau (nhân viên,khách hàng, bán hàng ) ược tập
hợp lại ể hiển thị nội dung của cùng một hóa ơn bán hàng . Sự tập hợp này ược thực hiện
nhß có các liên kết giữa các b¿ng.
Liên kết sẽ tìm kiếm các b¿n ghi có giá trị giống
nhau tại trưßng dữ liệu
chung, thông thưßng là giữa trưßng có thuộc tính khóa chính, vì nó chứa giá trị ID duy
nhÁt ặc trưng cho từng b¿n ghi, và một khoá ngoại - Foreign key - từ b¿ng khác.
Ví dụ, mỗi nhân viên có thể liên kết ến nhiều mặt hàng mà nhân viên ó ã bán, bằng cách
tạo relationship giữa b¿ng nhân viên và b¿ng bán hàng thông qua trưßng Mã nhân viên
b. Các lo¿i quan hß
Quan hß Mßt – NhiÁu
Mối quan hệ một-nhiều là loại hình phổ biến nhÁt của liên kết. Trong liên kết này, một
b¿n ghi á B¿ng A có thể có nhiều b¿n ghi tương ứng á B¿ng B, nhưng mỗi b¿n ghi á B¿ng B
chỉ có một b¿n ghi tương ứng duy nhÁt á B¿ng A. lOMoARcPSD| 37922327
Ví dụ, b¿ng nhân viên có liên kết một-nhiều với b¿ng bán hàng vì mỗi nhân viên có thể
bán nhiều hàng, trong khi một hàng chỉ có thể thực hiện bái một nhân viên. Một nhân viên Có thể bá n nhiều hàng
Nhưng một hàng chỉ ược bán bái một nhân viên •
Quan hß nhiÁu – nhiÁu
Trong loại hình này, một b¿n ghi á B¿ng A có thể có nhiều b¿n ghi tương ứng á B¿ng B
và ngược lại. Quan hệ này chỉ ược thể hiện khi có một B¿ng thứ 3 chứa dữ liệu từ c¿ hai B¿ng A và B¿ng B.
Ví dụ, mối liên kết giữa b¿ng nhân viên và b¿ng khách hàng là nhiều - nhiều vì nhân viên
có thể bán cho nhiều khách hàng và mỗi khách hàng có thể mua nhiều mặt hàng của nhiều nhân viên •
Quan hß mßt – mßt
Trong mối quan hệ loại này, mỗi b¿n ghi á B¿ng A chỉ có một b¿n ghi duy nhÁt tương
ứng á B¿ng B và ngược lại. Dạng quan hệ này thưßng hiếm, bái thông tin loại này có thể lưu
luôn vào một b¿ng chung..
c. Xác ánh liên k¿t
Xây dựng liên kết bằng cách thêm các b¿ng có liên quan vào cửa sổ Relationships
Window, rồi kéo trưßng khóa từ b¿ng này và th¿ vào trưßng tương ứng của b¿ng kia lOMoARcPSD| 37922327
Kiểu liên kết Access tạo ra sẽ dựa trên các trưßng liên kết ược xác ịnh :
- Liên kết một – nhiều nếu chỉ có một trong các trưßng liên kết là khoá chính hoặc có
thuộc tính chỉ mục duy nhÁt (unique index)
- Liên kết một – một nếu c¿ hai trưßng liên kết là khóa chính hoặc có thuộc tính unique indexes.
- Liên kết Nhiều – nhiều khi có một b¿ng thứ 3 có khóa chính bao gồm hai trưßng là
khoá ngoại (foreign key: một hoặc nhiều trưßng mà tham chiếu ến trưßng khóa
chính của các b¿ng khác) từ hai b¿ng kia.
5.2.3.4 Truy vấn - Query
Như ã nói á trên, truy vÁn là công cụ mạnh của Access cho phép ngưßi sử dụng dùng ngôn
ngữ truy vÁn có cÁu trúc SQL (Structure Query Language) hoặc công cụ truy vÁn bằng ví dụ
QBE (Query by Example) ể thực hiện việc rút trích, chọn lựa dữ liệu hoặc cập nhật dữ liệu
(thêm, sửa, xóa) trên các b¿ng. Có nhiều loại truy vÁn, thông dụng nhÁt là Select query,
ngoài ra còn có một số loại khác như: Update query, Append query, Delete query, rosstab query…
a. Quy trình t¿o mái mßt query
Trong cửa sổ Database, nhÁn Create chọn Query Design nếu muốn tự thiết kế truy vÁn,
chọn Query Wizard nếu muốn Access tự tạo ra các truy vÁn cho mình.
Nếu ta chọn Query Design, cửa sổ Show Table hiện ra yêu c¿u ta chọn các b¿ng c¿n ể xử
lý thông tin. NhÁn úp chuột vào tên của b¿ng mà ta lÁy các b¿n ghi của nó làm cơ sá. lOMoARcPSD| 37922327 Lưới thiết kế dữ liệu Datagrid Chọn các b¿ng chứa các b¿n ghi ta muốn xử lý
Xác ịnh mối liên kết giữa các b¿ng trong truy vÁn, nếu có (Dùng chuột kéo trưßng liên
kết giữa hai b¿ng từ b¿ng này sang b¿ng kia). lOMoARcPSD| 37922327 NhÁp úp chuột ể chèn tên trưßng vào lưới thiết kế,… … hoặc dùng chuột ọn tên trưßng từ
Tại dòng Field, nhÁn vào mũi tên bên ph¿i của cột ể làm hiện ra danh sách các trưßng dữ
liệu (Field list),chọn trưßng c¿n thiết từ danh sách. Hoặc ta có thể dùng chuột nhÁn úp vào
tên trưßng hiện ra á phía trên, Access tự ộng chèn trưßng ó vào lưới thiết kế
b. Cách thức chßnh sāa mßt query
Thêm mßt bÁng hoặc mßt truy vấn khác vào mßt truy vấn 1.
Má truy vÁn á chế ộ Design view. 2. NhÁn Show Table lOMoARcPSD| 37922327 3.
Trong hộp thoại Show Tables, nhÁn tab liệt kê danh sách các ối tượng chứa dữ
liệu ta c¿n làm việc. Nếu b¿ng ta c¿n lại á một CSDL khác thì ph¿i liên kết b¿ng ó vào CSDL hiện hành trước. 4.
NhÁn vào tên của ối tượng ta muốn thêm vào truy vÁn. 5. NhÁn Add, rồi Close. Chú ý: -
Có thể thêm b¿ng hoặc truy vÁn khác vào một truy vÁn bằng cách dùng chuột
kéo b¿ng hay truy vÁn ó từ cửa sổ Database vào cửa sổ thiết kế của truy vÁn (Design view). -
Nếu có nhiều b¿ng hay truy vÁn trong một truy vÁn, chúng c¿n ph¿i ược kết nối. •
Фa dă lißu tÿ nhiÁu bÁng hoặc truy vấn vào mßt truy vấn
Khi thêm nhiều b¿ng hoặc truy vÁn vào một truy vÁn, ta c¿n kiểm tra trưßng chung giữa
chúng ph¿i ược kết nối với nhau ể Access có thể kết nối dữ liệu.
Nếu các b¿ng trong một truy vÁn không ược kết nối với nhau, trực tiếp hoặc gián tiếp,
Access không thể xác ịnh ược các b¿n ghi nào ược kết nối với các b¿n ghi nào, do ó nó hiển
thị tÁt c¿ các tổ hợp các b¿n ghi (gọi là một "cross-product" hay "Cartesian product") giữa
các b¿ng. Vì vậy, nếu mỗi b¿ng có 10 b¿n ghi, kết qu¿ của truy vÁn trên cơ sá hai b¿ng sẽ
chứa 100 b¿n ghi (10*10). Điều ó cũng có nghĩa là truy vÁn c¿n nhiều thßi gian ể chạy và
thậm chí sẽ tạo ra các kết qu¿ vô nghĩa.
Nếu ta ã tạo các quan hệ giữa các b¿ng trong cửa sổ Relationships, Access tự ộng hiển thị
ưßng liên kết khi ta thêm các b¿ng vào truy vÁn trong chế ộ Design view. Nếu ã chọn duy
trì tính toàn vẹn tham chiếu, Access cũng sẽ hiển thị "1" á trên ưßng kết nối cho biết b¿ng
nào là á bên một trong mối quan hệ một - nhiều và dÁu vô hạn á bên b¿ng nhiều.
Nếu chưa bao giß tạo quan hệ, Access tự ộng tạo các liên kết nếu ta thêm hai b¿ng vào
một truy vÁn và các b¿ng có một trưßng cùng tên, chứa kiểu dữ liệu tương thích lẫn nhau,
và nếu một trong những trưßng liên kết có thuộc tính khóa chính. Biểu tượng một và nhiều
không ược hiển thị trong trưßng hợp này, bái vì ta không chọn duy trì tính toàn vẹn tham chiếu. lOMoARcPSD| 37922327 Kết nối một nhiều chọn toàn vẹn tham chiếu Kết nối một nhiều không chọn toàn vẹn tham chiếu Chọn các b¿n ghi á 2 b¿ng mà có giá trị
trưßng liên kết như nhau
Cách thực hißn các tính toán trong mßt truy vấn
Có nhiều kiểu tính toán trong một truy vÁn: tính tổng, tính trung bình giá trị của một
trưßng, nhân giá trị của nhiều trưßng, … Kết qu¿ hiển thị dựa trên dữ liệu hiện tại ược lưu
trong các b¿ng, và Access sẽ chạy lại các tính toán khi ta má một truy vÁn, vì vậy kết qu¿
luôn ph¿n ánh số liệu mới nhÁt.
Để tính toán, ta có thể sử dụng các hàm do Access cung cÁp hoặc các hàm do ta tự viết
ra. Sử dụng các hàm có sẵn, ược gọi là hàm tính tổng - totals calculation, nếu ta muốn tính
toán trên một nhóm hoặc toàn bộ các b¿n ghi. Các hàm này bao gồm sum, average, count,
minimum, maximum, standard deviation, hoặc variance. Lưu ý chỉ chọn một hàm tính tổng
cho mỗi trưßng ta c¿n xử lý số liệu, trong dòng Total trong lưới thiết kế.
Trong lưới thiết kế, ta có thể chỉ ra các tiêu chuÁn ể hạn chế nhóm các b¿n ghi sẽ ược tính toán.
Một tính toán tuỳ chọn cho phép ta tính toán các giá trị dạng số, ngày tháng và ký tự dựa
trên các số liệu từ một hoặc nhiều trưßng, ví dụ tính tiền thuế, tổng tiền tr¿, … Để làm ược
iều này, ta ph¿i tạo trưßng tính toán, calculated field, ngay trong lưới thiết kế, bằng cách
nhập vào biểu thức vào một ô Field còn trống trong lưới thiết kế truy vÁn. Ví dā:
Tính tổng số ơn vị s¿n phÁm còn á trong kho bằng cách cộng hai trưßng Số lượng s¿n
phÁm còn trong kho và Số lượng s¿n phÁm ã ặt hàng sắp nhập kho: Sum([SLgKho]+[SLgĐHg]).
Ta cũng có thể dùng Update query ể sửa ổi ồng loạt giá trị cho một trưßng, ví dụ tăng ồng
loạt 5% giá bán các s¿n phÁm. Ví dā:
Để khen thưáng nhân viên giao dịch, Giám ốc muốn biết thành tích bán hàng mà họ ã
thực hiện ược. Khi ó, phòng bán hàng ph¿i liệt kê chi tiết từng hợp ồng bán hàng mà mỗi
nhân viên ã thực hiện ược. Thông tin thể hiện bao gồm Tên nhân viên, Mã ơn ặt hàng, tổng
giá trị hàng bán trong ơn ặt hàng ó (không tính tiền vận chuyển). lOMoARcPSD| 37922327 Ta thiết kế như sau:
Cột thứ 3 là một trưßng tính toán. Trưßng này ược ặt tên là thức tính toán là:
[Số lượng]*[Đơn giá]*(1-[Chiết khÁu])
Để ¿m b¿o thống nhÁt kích thước của kết qu¿, ta dùng hàm CLng (convert long) nhằm
mục ích chuyển ổi dữ liệu kiểu số sang loại Long Integer. Clng([Số lượng]*[Đơn giá]*(1- [Chiết khÁu]))
Ta muốn tính tổng giá trị của hợp ồng, vậy nên dùng hàm Sum:
Sum(Clng([Số lượng]*[Đơn giá]*(1-[Chiết khÁu])))
Kết qu¿ khi chạy truy vÁn sẽ như sau:
à ây ta thÁy nhân viên mang mã NV01 bán ược 2 hợp ồng, số 1 và số 5, với giá trị mỗi
hợp ồng là $600 và $ 1.500. lOMoARcPSD| 37922327
Đến ây, Giám ốc muốn tổng kết mỗi nhân viên ạt ược doanh số bán hàng là bao nhiêu:Yêu
c¿u này có nghĩa là, ông ta không quan tâm ến cá nhân mỗi ơn ặt hàng (mã, ngày tháng, số
lượng mỗi loại s¿n phÁm,…), mà chỉ quan tâm ến tổng tiền hàng cộng dồn mà nhân viên ó ã bán ược.
Thực hiện yêu c¿u này, ta ơn gi¿n là chỉ bỏ i trưßng MãĐĐHg á trong lưới thiết kế trong
truy vÁn vừa tạo phía trên: dùng con chuột nhÁn vào thanh tiêu ề của cột ó, cột chuyển sang màu en, bÁm phím Delete.
Kết qu¿ thể hiện như hình: Tuy vậy, ta cũng có cách như sau: Đánh vào biểu thức: Clng([Số lượng]*[Đơn giá]*(1[Chiết khÁu])) trong dòng Field, chọn Sum trong dòng Total. Kết qu¿ cho ra giống hệt trên.
c. Các truy vấn hành ßng - Action query
Truy vÁn hành ộng là một loại truy vÁn mà có tác ộng thay ổi ến rÁt nhiều b¿n ghi chỉ
trong một l¿n thực hiện. Có 4 kiểu truy vÁn hành ộng: - Truy vÁn xoá: Delete lOMoARcPSD| 37922327 - Truy vÁn sửa : Update -
Truy vÁn bổ sung (thêm b¿n ghi): Append -
Truy vÁn tạo b¿ng: Make-table Delete query:
Xoá một nhóm các b¿n ghi từ một hoặc nhiều b¿ng.
Ví dā: Xoá tÁt c¿ các ơn ặt hàng của khách hàng có mã số là ALFKI.
Các bước thiết kế ược mô t¿ như hình dưới.
- NhÁn Create, chọn Query Design, chọn b¿ng Đơn ặt hàng vào trong lưới thiết kế. NhÁn
vào biểu tượng chọn Action query, chọn Delete Query.
- NhÁn úp vào dÁu * á trong b¿ng Đơn ặt hàng. Hành ộng này sẽ chọn tÁt c¿ các trưßng
của b¿ng vào trong lưới thiết kế.
- NhÁn úp vào dòng Mã Khách hàng
trong b¿ng Đơn ặt hàng. Tại dòng Criteria,
ánh vào công thức: =[Tên khách hàng c¿n xoá]. - NhÁn vào nút ể chạy truy vÁn.
Khi Access chạy truy vÁn này, nó tự ộng ưa
ra một cửa sổ hỏi ta Tên khách hàng c¿n xoá là gì?. Ta gõ vào
- Để ¿m b¿o tránh rủi ro, Access sẽ hỏi l¿n cuối nếu ta muốn xoá các b¿n ghi này.
NhÁn Yes nếu ồng ý xoá, Cancel nếu huỷ lệnh.
Đến ây, khi ta nhÁn Yes, 1 b¿n ghi có Mã khách hàng = ALFKI sẽ bị xoá. Update query:
Thực hiện các thay ổi về mặt tổng thể ến một nhóm các b¿n ghi của một hoặc nhiều b¿ng.
Có nghĩa là dùng ể chỉnh sửa dữ liệu của các trưßng trong một hoặc nhiều b¿ng Các bước tiến hành: -
Chọn các b¿ng truy vÁn/nguồn lOMoARcPSD| 37922327 -
Chọn menu Design trong nhóm Query Type chọn Update -
Kéo các trưßng c¿n sửa và các trưßng dùng ể lập iều kiện vào hàng Field.
Chú ý: cùng một trưßng có thể là trưßng c¿n sửa, vừa là trưßng iều kiện -
Đặt biểu thức vào ô Update To của các trưßng c¿n sửa. Giá trị của các biểu thức
sẽ là giá trị mới của các trưßng này -
Đặt các biểu thức iều kiện vào các ô Criteria của các trưßng iều kiện -
Ghi thiết kế và ặt tên cho truy vÁn - Thực hiện truy vÁn.
Kết qu¿: Một số trưßng sẽ ược chuyển ổi theo như thiết kế Make-table query
Make-table query ể tạo một b¿ng mới từ một ph¿n hoặc tÁt c¿ dữ liệu chứa trong một
hoặc nhiều b¿ng. Make-table query thưßng ược dùng ể tạo b¿n lưu số liệu, tạo b¿ng chứa tÁt
c¿ các b¿n ghi cũ trước khi xoá chúng ra khỏi CSDL hiện tại. Quy trình: -
Tạo một truy vÁn, chọn các b¿ng hoặc truy vÁn chứa các b¿n ghi ta muốn có trong b¿ng mới. -
Trong Design view, nhÁn vào mũi tên bên cạnh nút lệnh Query Type trên
thanh Ribbon, nhÁn Make Table. Hộp thoại Make Table xuÁt hiện. -
Trong hộp Table Name, nhập vào tên của b¿ng ta muốn tạo. -
NhÁn Current Database ể tạo b¿ng mới trong CSDL hiện thßi ang má; hoặc
nhÁn Another Database và ánh vào tên của CSDL ta muốn lưu b¿ng mới. Đánh vào tên ưßng dẫn nếu c¿n. - NhÁn OK. -
Kéo các trưßng muốn có trong b¿ng mới từ field list vào khung thiết kế truy vÁn (design grid). -
Nhập vào tiêu chuÁn trong ô Criteria. -
Xem kết qu¿ của b¿ng mới trước khi tạo nó, nhÁn View trên thanh Ribbon.
Muốn quay lại thiết kế tiếp, nhÁn View . - NhÁn Run trên thanh Ribbon Lưu ý: -
BÁm CTRL+BREAK ể ngắt quá trình tạo b¿ng mới khi ang chạy. -
Dữ liệu trong b¿ng mới ược tạo sẽ không kế thừa các thuộc tính của b¿ng gốc. Append query:
Thêm các b¿n ghi từ một b¿ng vào một b¿ng khác lOMoARcPSD| 37922327 Quy trình:
- Tạo một truy vÁn chứa các b¿n ghi mà ta muốn thêm vào b¿ng khác.
- Trong cửa sổ Design view, nhÁn mũi tên bên cạnh Query Type á trên thanh công
cụ, nhÁn Append. Hộp thoại Append xuÁt hiện.
- Trong hộp Table Name, nhập tên của b¿ng mà ta muốn thêm các b¿n ghi vào.
- NhÁn Current Database, nếu b¿ng á trong database hiện hành; hoặc nhÁn Another
Database và ánh vào tên của database nơi b¿ng ang ược lưu. Đánh vào ưßng dẫn nếu c¿n thiết.
- Ta cũng có thể nhập ưßng dẫn tới một CSDL Microsoft FoxPro, Paradox, hoặc dBASE. - NhÁn OK.
- Dùng chuột lôi từ danh sách các trưßng vào lưới thiết kế các trưßng mà ta muốn thêm
vào b¿ng khác và các trưßng mà ta muốn lÁy làm tiêu chuÁn ể chọn lựa các b¿n ghi.
- Nếu tÁt c¿ các trưßng của hai b¿ng có cùng tên như nhau, ta ơn gi¿n chỉ c¿n lôi dÁu (*) vào lưới thiết kế.
- Nếu các trưßng ta vừa chọn có cùng tên á c¿ hai b¿ng, Access tự ộng iền tên tương ứng
vào dòng Append To. Nếu không, ta ph¿i tự nhập vào tên của các trưßng của b¿ng mà ta
muốn thêm b¿n ghi tới vào trong dòng Append To.
- Trong ô Criteria, chỉ rõ tiêu chuÁn của các b¿n ghi ược lựa chọn.
- Để kiểm tra các b¿n ghi trước khi chạy query, nhÁn vào View trên thanh công
cụ. Để quay trá lại Design view, nhÁn l¿n nữa View . - NhÁn Run ể thực hiện truy vÁn. Ví dā:
Nhân dịp 10 năm ngày thành lập Doanh nghiệp, Giám ốc quyết ịnh sẽ gửi thư c¿m ơn
ến tÁt c¿ các khách hàng tại Hà nội.. Bộ phận Tin học nghiên cứu xem xét dữ liệu, nhận
thÁy tÁt c¿ các thông tin về khách hàng ược lưu á hai b¿ng, một tên là Khách hàng chứa các
thông tin liên quan ến các khách hàng của doanh nghiệp từ năm 1999, một tên là Khách hàng
cũ chứa các thông tin liên quan ến các khách hàng của Doanh nghiệp từ trước năm 1999.
Thực hiện nhiệm vụ, Bộ phận Tin học khi ó sẽ ph¿i kết xuÁt từ hai b¿ng các b¿n ghi mà
trưßng Địa chỉ có giá trị là Hà nội vào một b¿ng thứ ba tên là Thư khuyến mại. Họ tạo ra
một b¿ng mới có tên là Thư khuyến mại, trong ó chứa tÁt c¿ các b¿n ghi của các khách hàng
có trụ sá tại Hà nội. lOMoARcPSD| 37922327
Bước 1: Tạo query Make-table dựa trên
b¿ng Khách hàng. Chỉ ra các trưßng mà ta
muốn có á trong b¿ng mới. Xem hình.
Bước 2: Chọn Make-table query từ trong
danh sách Action Query. Trong hộp thoại
Make table, ánh vào Thư c¿m ơn rồi nhÁn OK.
Bước 3: NhÁn Run
ể thực hiện truy vÁn. Đóng lại truy vÁn này lại.
Bước 4: Tạo một Append query dựa trên b¿ng Khách hàng cũ. NhÁn New trong cửa sổ
Database, chọn Design view, chọn b¿ng Khách hàng cũ từ danh sách các b¿ng. Dùng chuột lôi các trưßng Tên công ty, Ngưßi ại diện, Địa chỉ, Tỉnh thành, iện
thoại vào trong lưới thiết kế (xem hình). Trong cột chứa trưßng Tỉnh thành, tại dòng Criteria ánh vào lOMoARcPSD| 37922327 Bước 5: Chọn kiểu
Append query, trong hộp thoại
Append, nhập vào Thư c¿m ơn trong mục Table Name.
Bước 6: Kiểm tra lại trước khi chạy query. NhÁn View. Nếu các b¿n ghi ược liệt kê úng
theo yêu c¿u ặt ra, chuyển sang bước tiếp.
Bước 7: NhÁn Run
ể thực hiện truy vÁn. Đóng lại truy vÁn này lại.
Đến ây bộ phận tin học ã lọc xong dữ liệu. Việc in thư, bao gồm phong bì và lá thư, cho
từng khách hàng sẽ bằng cách hoặc là tự ộng dùng tính năng Mail-merge trong Microsoft
Word, hoặc là sử dụng Report trong Microsoft Access.
d.Xử lý một số tình huống (thông qua ví dụ) Tình huống 1
Báo cáo tổng doanh số bán của từng s¿n phÁm, liệt kê theo danh mục của s¿n phÁm ó và
theo tên, thứ tự tăng d¿n. Gi¿i pháp:
- Do sắp xếp theo danh mục s¿n phÁm và tên của s¿n phÁm, vậy nên trong truy vÁn ta
ph¿i có hai b¿ng Danh mục hàng và S¿n phÁm nhằm lÁy giá trị của hai trưßng Tên danh
mục và Tên s¿n phÁm ể hiển thị.
- Doanh số của một s¿n phÁm trong một ơn ặt hàng là bằng số lượng nhân với ơn giá
bán. Dữ liệu này ược lưu trong b¿ng Đơn ặt hàng chi tiết nên ph¿i ưa nó vào lưới thiết kế.
Để tính tổng doanh số, tại dòng Field nhập vào biểu thức: Đơn giá ta ph¿i dùng hàm Sum tại
dòng Total của lưới thiết kế. lOMoARcPSD| 37922327
- Nhằm sắp xếp, ta chọn
Ascending tại dòng Sort.
- Sau khi ã thiết kế xong, nhÁn View ể xem kết qu¿. Tình huống 2
Báo cáo tổng doanh số bán ra của mỗi danh mục hàng. Gi¿i pháp:
- Vì c¿n có tên danh mục hàng nên ph¿i ưa b¿ng Danh mục hàng vào trong truy vÁn.
- Doanh số bán ược tính từ b¿ng Đơn ặt hàng chi tiết, bằng cách nhân giá trị của hai
trưßng Đơn giá và Số lượng. Ta dùng hàm Sum ể tính tổng của nó.
- Vì hai b¿ng Danh mục hàng và b¿ng Đơn ặt hàng chi tiết không có trưßng nào chung ể
liên kết, vậy ph¿i ưa vào một b¿ng trung gian có chứa trưßng chung với c¿ hai b¿ng trên, ó
là b¿ng S¿n phÁm: trưßng Mã s¿n phÁm chung với Đơn ặt hàng chi tiết và trưßng Mã danh
mục chung với b¿ng Danh mục hàng.
- Xác lập mối quan hệ giữa các b¿ng. lOMoARcPSD| 37922327 - Cách thiết kế giống trưßng hợp
trên, nhưng bỏ i cột của trưßng Tên s¿n phÁm. - NhÁn View ể xem kết qu¿ Tình huống 3
Liệt kê doanh số tÁt c¿ các ơn ặt hàng ã hoàn thành giữa hai ngày nào ó. Gi¿i pháp:
- TÁt c¿ các thông tin về mỗi một l¿n bán hàng ược lưu trong hai b¿ng Đơn ặt hàng và
Đơn ặt hàng chi tiết, do ó ta sẽ ưa hai b¿ng này vào trong lưới thiết kế. Thiết lập mối quan hệ giữa hai b¿ng này.
- Một khi ơn ặt hàng ã hoàn thành thì trưßng Ngày giao hàng sẽ ph¿i chứa giá trị ngày
tháng, bằng không sẽ là giá trị trống. Vì vậy, chọn trưßng Ngày giao hàng làm thông tin ¿u
tiên. Để giới hạn chỉ cho những ơn hàng giữa hai ngày nhÁt ịnh, ta nhập vào công thức:
Between [Ngày bắt ¿u] And [Ngày kết thúc] trong dòng Criteria. LÁy thêm trưßng Mã Đơn
ặt hàng. Tạo thêm thông tin về Doanh số hàng bán (xem hình). Khi chạy truy vÁn này,
Access sẽ không biết [Ngày bắt ¿u] và [Ngày kết thúc] là gì, vì vậy nó coi ó là một biến số,
và do ó sẽ hiển thị một cửa sổ ể hỏi giá trị của các biến số này. lOMoARcPSD| 37922327
- NhÁn nút Datasheet View ể xem kết qu¿ hiển thị.
Đ¿u tiên, Access sẽ hỏi ngày bắt ¿u
... sau ó hỏi ngày kết thúc
…kết qu¿ truy vÁn hiển thị các b¿n ghi như hình bên.
e. Sā dāng các biểu thức chßn lßc bÁn ghi
Nếu muốn truy vÁn hiển thị theo iều kiện nào ó thì trên hàng Criteria ưa vào iều
kiện hay biểu thức chọn lọc của các trưßng tại cột của trưßng ó Lßc các bÁn
ghi theo biểu thức chßn:
Ta có thể dùng các toán tử sau ây ể lựa chọn các b¿n ghi. Ví dā Ý nghĩa Toán < < #1/1/1999# Trước ngày 1/1/1999 > > 102 Lớn hơn 102 <= <= #1/1/1999#
Trước và trong ngày 1/1/1999 Lớn hơn hoặc bằng 102 >= >= 102 <> <> #1/1/1999# Khác ngày 1-1-1999 = = 1000; = #1/1/99# Bằng Betwee Between #1/1/199# and
Từ ngày 1-1-1999 ế ngày 1-1- n…and… #1/1/2000# 2000 Like Like Bằng Hà nội •
Các ký tự thay th¿ (Wild character) lOMoARcPSD| 37922327
Khi thiết kế một truy vÁn, ôi khi ta muốn tìm kiếm theo một khuôn dạng linh hoạt chứ
không ph¿i cố ịnh. Ví dụ Ta muốn tìm tÁt c¿ các khách hàng có tên bắt ¿u bằng chữ Khi ó, ta dùng ký tự thay thế với từ khoá Like hoặc not like. Ký tự Ý nghĩa
Thay thế một số bÁt kỳ các ký tự *
Thay thế một ký tự tại vị trí ? xuÁt hiện ?
Thay thế một ký tự số tại vị trí # xuÁt hiện #
Thay các ký tự bÁt kỳ trong ngoặc vuông [ ] !
Thay thế ký tự bÁt kỳ ngoại trừ ký tự sau dÁu than trong ngoặc vuông - Từ ký tự ến ký tự Ví dā: Biểu thức
Các giá trá có thể có
Like Hương, Hưáng, Hưßng,… Like Long, Ling, Levering,… Like <*th= 128th, Smith, Breath,… Like <*on*=
condinments, confection, congress,… Like <10/*/2000=
TÁt c¿ ngày mồng 10 các tháng Like <1#23= 1123, 1223, 1323,…
Like Hương, Hưáng, nhưng không có Hưßng,…
Like Khác với Smath và khác Smuth Like X1BC, X2BC,…X9BC Like XaBC, XbBC, XcBC •
Tìm lßc các bÁn ghi có hoặc không có giá trá
Nếu muốn chọn các b¿n ghi có giá trị của một trưßng nào ó là rỗng, thêm từ khoá IS
NULL vào dòng iều kiện Criteria. Ngược lại ta dùng IS NOT NULL. Ví dā: lOMoARcPSD| 37922327 Trưßng
Ngày chuyển hàng Ý nghĩa B¿ng Đơn ặt hàng … Criteria is null
Tìm những ơn ặt hàng nào vẫn chưa chuyển hàng i. Trưßng
Ngày chuyển hàng Ý nghĩa B¿ng Đơn ặt hàng … Criteria is not null
Tìm những ơn ặt hàng nào ã giao xong hàng cho
khách ( ã hoàn thành hợp ồng). •
Lßc các bÁn ghi có chứa giá trá thußc mßt tÁp hÿp nào ó Dùng toán tử IN (danh sách các giá trị). Trưßng Ngày ặt hàng Mã Khách ý nghĩa hàng B¿ng Đơn ặt hàng Khách hàng
Liệt kê những ngày trong tháng
1 năm 2000 mà 3 khách hàng có tên … … …
là Long, Hùng hoặc là Dũng ã ến ặt hàng tại doanh nghiệp. Criteria Like IN (Long, #*/01/2000# Hùng, Dũng)
f)Các hàm th¤ßng dùng khi thi¿t k¿ mßt truy vấn
Left(chuỗi, n) : Hàm này dùng ể cắt ra n ký tự kể từ phía bên trái của một chuỗi ký tự. Cú
pháp: Left(chuỗi, số_ký_tự_sẽ_lÁy)
Ví dā: Khi trao ổi nghiệp vụ trên mạng, mỗi bưu cục ược gắn cho một tiêu ề tên. Tiêu ề
này bao gồm hai ph¿n, ph¿n ¿u là ph¿n mã số bưu chính và ph¿n tiếp là tên bưu cục. Ví dụ,
trên các Án phÁm nghiệp vụ, ngưßi ta tham chiếu ến Bưu cục Nguyễn Trãi thuộc cơ sá ào
tạo Hà ông bằng tiêu ề 31103 Nguyễn Trãi. Quy tắc ánh số hiệu cho một bưu cục trên mạng là:
 Độ dài mã số tổng cộng: 5 chữ số.
 2 ký tự ¿u: Mã tỉnh.
 3 ký tự sau: Số hiệu của bưu cục trong mạng nội tỉnh.
Vậy, ể lọc ra các bưu cục thuộc Bưu iện Hà nội, có mã vùng là 10, từ trong b¿ng Túi gói
i ến, ta có thể thiết kế một truy vÁn có cÁu trúc như sau: lOMoARcPSD| 37922327 =LEFT(Mã Bưu cục, Bưu cục nhận túi Field 2) gói BÁng Túi gói i ến Túi gói i ến Sort   Show = <10= Criteria
Right():Dùng hàm Right(chuỗi, n) ể trích ra n ký tự, tính từ ph¿i sang, từ chuỗi ký tự cho trước.
Gi¿ sử trong b¿ng Bưu cục có các mã bưu cục sau: 10103 A, 15201 B, 30101 C, 28201 D.
Dim sMaxBwucucj as string sMaxBwucucj=Inputbox(vào mã bưu cục=)
Msgbox Mid(chuỗi, n, m):Trích ra từ chuỗi m ký tự, kể từ vị trí n.
Trim(chuỗi):Loại bỏ dÁu cách á hai ¿u chuỗi ký tự.
DatePart(Datepart, DateExpr):Thể hiện các giá trị kiểu ngày tháng. Trong ó các giá trị của Datepart là: Datepart ý nghĩa Ví dā TrÁ vÁ
[Ngày ặt hàng] = #19-07-2001# [Giß ến] = 19:07':20''
d Ngày DatePart("d", [Ngày ặt hàng]) 19 m Tháng DatePart("m", [Ngày ặt
hàng]) 7 yyyy Năm DatePart("yyyy", [Ngày ặt hàng]) 2001 q Quý
DatePart("q", [Ngày ặt hàng]) 3 ww Tu¿n
DatePart("ww", [Ngày ặt hàng]) w Ngày
DatePart("w", [Ngày ặt hàng]) trong tu¿n h Giß DatePart("h", [Giß ến]) 19 n Phút DatePart("n", [Giß ến]) 7 s Giây DatePart("s", [Giß ến]) 20
Sum(biểu thức):Tính tổng của biểu thức. Biểu thức ây có thể chỉ là một trưßng, cũng có
thể là công thức cộng trừ nhân chia của nhiều trưßng. lOMoARcPSD| 37922327
Count: Đếm các giá trị của một trưßng dữ liệu trong một b¿ng. 5.2.3.5
Biểu mẫu nhập liệu (FORM)
a. Khái nißm biểu m¿u
Một biểu mẫu - Form - là một giao diện dạng cửa sổ cho phép ngưßi sử dụng xây dựng
nên các màn hình dùng ể cập nhật hoặc xem dữ liệu lưu trong các b¿ng, ngoài ra cũng cho
phép ngưßi sử dụng tạo ra các hộp thoại hỏi áp giữa ngưßi sử dụng và hệ thống ứng dụng.
Việc chưa có một từ trong tiếng Việt ủ chính xác ể biểu ạt hết ý nghĩa của khái niệm Form
khiến các chuyên gia tin học khuyên ngưßi dùng nên sử dụng chính từ gốc không dịch. Kể
từ ây trá i, từ Form sẽ ược sử dụng vì trong môi trưßng Access, tÁt c¿ các từ khoá ều bằng
tiếng Anh; việc dùng từ gốc giúp ngưßi dùng làm quen với chương trình nhanh hơn là việc
dùng từ Việt hoá do tránh ược việc ph¿i dịch xuôi rồi lại dịch ngược.
Mối liên kết giữa form và nguồn dữ liệu của nó ược thể hiện bằng các ối tượng có giao
diện ồ họa, ược gọi là iều khiển. Kiểu iều khiển ược sử dụng thông thưßng nhÁt ể hiển thị
và nhập liệu là hộp văn b¿n. •
Các khung nhìn của form Một Form có ba khung nhìn:
Design view - thiết kế, Form view - dạng cửa sổ và Layout view - dạng lưới dữ liệu.
Ban ¿u, lúc thiết kế form ta dùng chế ộ thiết kế (Design). lOMoARcPSD| 37922327 iều khiển vào form ể thay ổi
font chữ, kiểu nét khung, các hiệu ứng màu sắc,... cho phép hiển thị
các iều khiển dữ liệu
Thước o ể ặt các iều khiển vào
úng vị trí mong muốn, căn hàng,...
Thiết kế xong form dữ liệu, chuyển sang dạng Form view hoặc Datasheet dùng hiển thị dữ liệu. lOMoARcPSD| 37922327 •
Các khu vực trên mßt form
Form Header: Khu vực trên cùng của một Form. Thông thưßng ngưßi ta sử dụng khu vực
này làm nơi hiển thị dòng tiêu ề của Form.
Form Footer: Khu vực nằm ngang dưới cùng của Form. Khu vực này thưßng chứa các nút
lệnh hành ộng như In, Lọc dữ liệu, Tìm kiếm, Má một Form mới...
Detail: Ph¿n chi tiết của form. Nội dung của tÁt c¿ các trưßng (field) của một b¿ng dữ
liệu (b¿ng) sẽ ược hiển thị á ây. Các ối tượng khác như hình vẽ, b¿ng tính, ối tượng liên kết
OLE cũng ược hiển thị á ph¿n này. Ngưßi ta gọi chung tÁt c¿ các ối tượng này là các iều khiển – control.
Page Header: Khi sử dụng ngắt trang - Page break - trong một form, ta sử dụng khu vực
này ể hiển thị một thanh tiêu ề như nhau cho tÁt c¿ các trang của một form. lOMoARcPSD| 37922327
Page Footer: Khi sử dụng ngắt trang - Page break - trong một form, ta sử dụng khu vực
này ể duy trì sự hiển thị nhÁt quán cho tÁt c¿ các trang của một form. b. Thi¿t k¿ form:
Trong Access có 2 cách chính ể thiết kế Form
- Tạo Form dùng Form Winzard: Đây là cách nhanh chóng dể có thể tạo ược một form
nhập dữ liệu cho các b¿ng dữ liệu trên một CSDL. Cách này dễ làm nhưng kết qu¿ của nó
không ược tốt lắm, thưßng thì ph¿i chỉnh sửa nhiều thì mới ược Form theo như ý muốn của ngưßi sử dụng
- Thiết kế Form dùng Design View: Đây là cách tạo Form chuyên nghiệp. Cách này có
nhiều bước phức tạp ồi hỏi nhiều ến kinh nghiệm và trình ộ của ngưßi lập trình. Nhưng kết
qu¿ làm ra luôn áp ứng ược các yêu c¿u khắt khe nhÁt của ngưßi sử dụng
T¿o mái form bằng wizard 1.
Trong cửa sổ Database, chọn Create trong nhóm Forms chọn Form Wizard 2.
Hộp thoại Form Wizard xuÁt hiện như hình vẽ. 3.
Chọn tên b¿ng c¿n tạo Form nhập dữ liệu á mục Tables/Queries. Sau ó Add
(thêm) các trưßng c¿n nhập dữ liệu lên form từ danh sách Available Fields: bằng nút> : lOMoARcPSD| 37922327 4.
Chọn kiểu canh lề các ối tượng trên form:chúng ta có thẻ chọn một trong các
kiểu á dưới, nhưng tốt nhÁt hãy dùng kiểu Columnar: 5. Nhập tiêu ề cho form lOMoARcPSD| 37922327 6.
Chọn Finish ể kết thúc quá trình tạo form:
Thi¿t k¿ form theo nhu c¿u (T¿o Form á ch¿ ß Design View)
Trước khi thực hiện thiết kế ta cũng ph¿i thực hiện bước 1 và bước 2 á ph¿n < tạo mới
form bằng wizard= sau ó lựa chọn chế ộ Design View rồi sử dụng các phím chức năng, hộp công cụ ể tạo Form :
Hộp công cụ tạo Form (Controls)
Để hiển thị hộp công cụ vào Design chọn nhóm Controls.
Hộp công cụ có dạng như sau :
Ý nghĩa các nút: 1.
Select Objects: Chọn ối tượng 2.
Label: Dùng ể tạo một nhãn ể chứa văn b¿n hướng dẫn hoặc tính toán 3.
Option Group: Dùng ể tạo một nhóm tự ộng 4.
Option Button: Dùng ể tạo một nút lựa chọn 5.
Combo box: Dùng ể tạo một danh sách lựa chọn 6.
Command Button: Dùng ể tạo nút lệnh ể khi kích vào sẽ hoành thành một nhiệm vụ 7.
Unbound Objects Freme: Bổ sung vào biểu mẫu một ối tượng OLE lOMoARcPSD| 37922327 8.
Page Break: Cho máy in biết bắt ¿u một trang mới 9.
Subform/Subreport: Bổ sung một biểu mẫu phụ vào biểu mẫu chính
10. Rectangle: Tạo một hình chữ nhật
11. Control Wizard: Bật tắt chế ộ Control Wizard
12. T ext Box: Tạo một hộp văn b¿n
13. Toggle Button: Tạo một nút thay ổi từ On sang Off
14. Check Box: Tạo một hộp kiểm tra
15. List Box: Tạo một hộp liệt kê qua ó có thể chọn lựa một giá trị
16. Image: Hiển thị ồ họa trên form
17. Bound Objects Frame: Hiển thị nội dung một trưßng OLE
18. Tab Control: Chèn một iều khiển Tab
19. Line: Vẽ một ưßng thẳng
20. More Controls: Kích vào nút này sẽ má ra danh sách các iều khiển khác có thể
ược thêm vào hệ thống
Thiết kế mẫu biểu bằng hộp công cụ:
-Sử dụng Textbox hoặc Fields list ể thiết kế.Ta thực hiện các bước sau:
- Tại cửa sổ Database: Trên thanh Ribbon ta chọn Create, trong nhóm Forms chọn Form Design.
- XuÁt hiện Form trắng á chế ộ Design View - Tạo tiêu ề form
Kích ph¿i chuột lên Form chọn Form Header/Footer
Kích chuột vào nút (lable) trên nhóm lệnh Controls và ưa chuột ra vùng Form
Header, gõ tiêu ề ( ví dụ : Phi¿u chi ti¿t bán hàng) - Thiết kế các trưßng
Trên thanh Ribbon á nhóm lệnh Tools kích chuột vào Add Existing Fields
Kéo các trưßng c¿n thiết từ hộp thoại vào ph¿n Detail của form
- Cửa sổ thiết kế form như sau: lOMoARcPSD| 37922327
- Chọn File/Save ể lưu biểu mẫu này
- Đóng cửa sổ thiết kế lại. Nếu muốn chạy 1 Form vừa tạo thì từ cửa sổ Database trong
thanh Navigation Pane kich ph¿i chuột vào tên Form, rồi chọn Open .
Sā dāng Combo Box và check Box :
Như ã giới thiệu á trên. Hộp Combo Box ược dùng ể tạo danh sách lựa chọn cho một dữ
liệu cho 1 trưßng bÁt kỳ. Hộp CheckBox ược dùng ể chọn lựa giá trị Yes hoặc No cho trưßng có kiểu logic.
Gi¿ sử chúng ta có CSDL sau:
Gi¿ sử b¿ng nguồn Nhân viên ã có dữ liệu Yêu c¿u:
Tạo một form cho phép nhập danh sách bán hàng như sau: lOMoARcPSD| 37922327
Khi nhập dữ liệu thì trưßng Mã nhân viên ược phép lựa chọn giá trị từ một danh sách có sẵn.
Trình tự thi¿t k¿ nh¤ sau:
Tạo form mới, dùng b¿ng Bán hàng làm nguồn dữ liệu cho Form
Tắt chức năng Control Wizard trong nhóm lệnh Controls trên thanh Ribbon
Kéo các trưßng ( không ph¿i trưßng MãNV) từ hộp Field List ặt vào một vị trí trên form
Tạo ComboBox ể nhập mã nhân viên cho trưßng Mã nhân viên bằng cách lựa chọn
giá trị từ danh sách ã có từ b¿ng Nhân viên:
- Chọn nút Combo Box trên nhóm lệnh Controls trên thanh Ribbon.
- Kéo trưßng MaNV từ hộp Field List ặt vào vị trí trên form. Kết qu¿ Access tạo một
combo box thuộc vào trưßng Mã nhân viên
- Má b¿ng thuộc tính của ComboBox vừa tạo cho trưßng Mã nhân viên ( click chuột
ph¿i vào ComboBox vừa tạo). Thiết lập một số thuộc tính như sau
Control Source: Mã nhân viên
Row soruce type:Table/Query
Row soruce: Nhân viên(tên b¿ng/truy vÁn c¿n lÁy dữ liệu)
Column Count: 2 (số cột trong b¿ng/ truy xÁn ược hiển thị tính từ trái sang ph¿i)
Bound Column: 1 (cột ược chọn ể nhận dữ liệu, á ây ta chọn cột Mã nhân
viên, các cột khác óng vai trò hiển thị).  Sā dāng command button: lOMoARcPSD| 37922327
Như giới thiệu á trên Command Button ể tạo nút lệnh mà khi kích vào sẽ hoành thành
một nhiệm vụ. Cụ thể có thể sử dụng nút lệnh ó ể chạy 1 query hoặc 1 form bÁt kỳ
Sā dāng Nút lßnh nh¤ sau:
 NhÁn chuột chọn nút lệnh Control Wizard trên nhóm lệnh Controls của thanh Ribbon.
 Chọn nút Command Button trên nhóm lệnh
Controls của thanh Ribbon, nhÁn trỏ chuột vào vị trí nơi
nút lệnh sẽ ược ịnh vị.
 Cửa sổ Command Button Wizard hiện ra. Trong cửa sổ này, ô Categories
phân loại các nhóm hành ộng, ô Action liệt kê các hành ộng thuộc mỗi một
nhóm hành ộng á bên ô Categories. Ví dụ: nếu muốn nút lệnh này má một
Form(hoặc query) ã có thì ta chọn Form Operations (Miscellaneous) á
bên ô Categories, tiếp ó chọn hành ộng Open Form (run query) á bên ô
Action. NhÁn Next ể tiếp tục.Tương tự ta có thể chọn Close Form nếu muốn ống Form  Chương trình hỏi: muốn nút lệnh má Form (hoặc query) nào ?=, ta chọn Form( query) c¿n má bằng cách nhÁn chuột vào tên
Form(query) trong ô danh sách các Form( query) . NhÁn Next ể tiếp tục.
 Chọn một trong hai lựa chọn. lOMoARcPSD| 37922327
Lựa chßn ü: má Form( query) và hiển thị chỉ một số b¿n ghi cụ thể;
Lựa chßn ý: hiển thị tÁt c¿ các b¿n ghi. NhÁn Next ể tiếp tục
 Tại bước cuối cùng, ta có thể chọn nút lệnh có hình như (Picture) hoặc có lßi chú dẫn (Text). Nếu chọn Picture, chỉ ra hình như muốn có. Nút lệnh sẽ có dạng
Nếu chọn Text, ánh nhãn cho nút vào
dòng trống ( vd là ơn ặt hàng). Nút lệnh sẽ có dạng Bước tiếp theo, ta ặt tên cho nút lệnh(ví dụ ơn ặt hàng) rồi chọn Finish. Chuyển sang
chế ộ View ể xem kết qu¿ lOMoARcPSD| 37922327
Thay ßi kích th¤ác các khu vực trên mßt Form
Có thể tăng hoặc gi¿m chiều cao, ộ rộng từng vùng của form và report. Khi thay ổi ộ rộng
của một vùng, ta thay ổi ộ rộng của toàn bộ form hoặc report. 1.
Má form (hoặc report) á chế ộ Design view. 2.
Thay ổi chiều cao hoặc ộ rộng bằng
cách ặt con trỏ vào lề dưới hoặc lề ph¿i của vùng. 3.
NhÁn giữ và kéo chuột lên xuống ể
thay ổi ộ cao, trái - ph¿i ể thay ổi ộ rộng. Để
thay ổi c¿ ộ rộng và chiều cao, ặt con trỏ chuột
vào góc dưới bên ph¿i và kéo theo ưßng chéo theo hướng má rộng.
Chßnh sāa các iÁu khiển trên form
Ta có thể di chuyển, ổi kích thước, căn hàng các iều khiển trên form. 1.
Để chọn một iều khiển: click chuột vào iều khiển ó. Nếu muốn chọn
nhiều iều khiển cùng một lúc thì ồng thßi giữ phím SHIFT và click chuột vào các iều khiển. Chọn iều khiển 2.
Khi ta chọn một iều khiển, dùng con chuột kéo rê khung của iều khiển ể
thay ổi kích thước của nó Thay ổi kích thước iều khiển 3.
Di chuột ể hiện ra hình bàn tay, giữ và rê chuột ể chuyển vị trí cho các iều khiển.
Dịch chuyển iều khiển và nhãn 4.
Nếu muốn chỉ di chuyển vị trí của một trong hai, iều khiển hoặc nhãn, di
chuột vào úng ô vuông góc trên bên trái của iều khiển, hoặc nhãn ó, bÁm và giữ
chuột ể di chuyển ến chỗ mới
Chỉ dịch chuyển iều khiển hoặc nhãn 5.
Để căn hàng các iều khiển, chọn chúng rồi dùng lệnh
\Format\Alignment, chọn tiếp Right (trái), Left (ph¿i), Top (trên), Bottom (dưới). lOMoARcPSD| 37922327 6.
Để thay ổi dòng chữ của nhãn, chọn dòng chữ cũ, ánh vào dòng chữ mới. 7.
Để thay ổi tên trưßng dữ liệu gắn kết với iều khiển, trước hết chọn iều khiển ó, bÁm
trên thanh công cụ, khi cửa sổ Properties hiện ra, trong ph¿n
Control Source chỉ ra tên của trưßng dữ liệu muốn gắn kết. 8.
Thêm vào một hộp văn b¿n hiển thị dữ liệu của một trưßng:
: NhÁn vào nút lệnh Field List
trên thanh công cụ ể hiển thị danh sách các trưßng dữ liệu hiện có. ý nhÁn chuột vào tên trưßng muốn chọn trong danh sách các trưßng,… … rồi kéo và th¿ trưßng ó vào biểu mẫu 9.
Thêm một nhãn văn b¿n vào Form: NhÁn vào biểu tượng
trên thanh công cụ Toolbox, nhÁn tiếp vào vị trí c¿n hiển thị
trên form, sau ó ánh vào oạn văn b¿n và bÁm ENTER ể kết thúc. 10.
Muốn dùng Wizad ể tạo các iều khiển trên form, luôn giữ nút lệnh
trên thanh công cụ Toolbox á dạng ược chọn, rồi chọn kiểu iều khiển mà ta muốn có.
5.2.3.6. Báo biểu (Report)
a. Khái nißm báo biểu
Một báo biểu là một cách trình bày hiệu qu¿ dữ liệu dưới dạng tài liệu in. Ta có thể chỉnh
sửa kích thước và hình thức hiển thị của mọi ối tượng trên một báo biểu, cho nên ta có thể
hiển thị dữ liệu theo cách mà ta muốn.
Ph¿n lớn các thông tin có trên một báo biểu ược tập hợp từ các b¿ng dữ liệu, các truy
vÁn. Các thông tin còn lại có ược khi thiết kế báo biểu.
Các khu vực của mßt báo biểu
Khu vực tiêu ề trên của báo biểu - Report header - chỉ xuÁt hiện một l¿n ngay á dòng ¿u
tiên của trang thứ nhÁt. Ta có thể dùng khu vực này ể hiển thị tiêu ề của báo biểu, logo, ngày giß in báo biểu,… lOMoARcPSD| 37922327
Khu vực tiêu ề trên của một trang - Page header - xuÁt hiện á ¿u tÁt c¿ các trang của báo
biểu (Chú ý rằng một báo biểu có thể có nhiều trang). Ta dùng khu vực này ể hiển thị tiêu ề của cột dữ liệu.
Khu vực chi tiết - Detail - là khu vực chính của báo biểu, nó hiển thị từng b¿n ghi của
nguồn dữ liệu của báo cáo.
Khu vực cuối trang - Page footer - xuÁt hiện á cuối tÁt c¿ các trang của báo biểu. Ta
dùng khu vực này ể hiển thị số thứ tự từng trang của báo biểu.
Khu vực cuối báo biểu - Report footer - xuÁt hiện á dòng cuối cùng của trang cuối cùng
của báo biểu. Trong khu vực này, ngưßi ta thưßng hiển thị con số tổng kết của các báo biểu,
(ví dụ tổng số khách hàng, tổng tiền hàng).
Ngoài các khu vực trên, ta có thể thiết kế thêm tiêu ề trên cho từng nhóm các b¿n ghi -
Group header. Ví dụ, khi in ra danh sách các hợp ồng xuÁt hàng trong tháng, ta muốn nhóm
các hợp ồng này lại theo từng khách hàng. Khi ó, trưßng Khách hàng sẽ óng vai trò tiêu ề
của nhóm các b¿n ghi. Tổng doanh số các hợp ồng của khách hàng này sẽ ược ưa vào ph¿n
tiêu ề dưới - group footer - của trưßng Khách hàng. b. T¿o mái mßt báo biểu
Trước hết, ta dùng chuột chọn nhóm Reports trong thẻ Create của thanh Ribbon á cửa sổ Database.
Các cách t¿o mái mßt báo biểu
Có ba cách ể chúng ta tạo mới một báo biểu trong nhóm Reports ta có thể chọn.
- Sā dāng Report: Chức năng Report là công cụ tạo Report nhanh và dễ dàng, thưßng
dùng ể tạo những Report ơn gi¿n có dữ liệu nguồn từ một b¿ng hoặc một query..
- Sā dāng Report Wizard: Wizard là một chương trình chức năng mà khi thực hiện sẽ hỏi
chi tiết về nguồn dữ liệu, về các trưßng, về cách bố trí xếp ặt, ịnh dạng mà ngưßi thiết kế
mong muốn, từ ó sẽ tạo ra báo biểu.
- Sā dāng Report Design : Chọn Table/Query làm dữ liệu nguồn cho report. Tự thiết kế
report bằng cách kéo th¿ các trưßng dữ liệu từ field list hoặc các control trong nhóm lệnh
Controls trên thanh Ribbon th¿ vào report.
Chuyển ßi giăa các khung nhìn của báo biểu
Một Báo biểu có ba khung nhìn khác nhau:
- Design view - Thiết kế: Dùng khi ta ph¿i chỉnh sửa, thay ổi cÁu trúc của một báo biểu hiện tại.
- Print Preview - Hiển thị trước khi in: dùng ể xem dữ liệu hiển thị trên trang in trước khi in. lOMoARcPSD| 37922327
- Layout Preview - Hiển thị cách bố trí: Tương tự như Print Preview, nhưng trong cách
hiển thị này, Access chỉ cho hiển thị mẫu một vài b¿n ghi. Hiếm khi ta dùng chức năng này,
nó chỉ hữu dụng khi mà nguồn dữ liệu của báo biểu là quá lớn, nếu ta dùng Print Preview thì
sẽ mÁt rÁt nhiều thßi gian, nhưng nếu dùng Layout Preview thì thßi gian hiển thị g¿n như
tức thßi, bái vì lúc này Access chỉ chọn ra một vài b¿n ghi làm mẫu.
Cách chuyển ổi giữa các khung nhìn: 1. Má báo biểu ã có. 2.
NhÁn chuột vào nút lệnh View trên thanh công cụ, chọn
khung nhìn c¿n thiết từ danh sách.
Sā dùng Wizard ể t¿o mái mßt báo biểu
NhÁn chuột vào nút lệnh trên cửa sổ Database.
Cửa sổ Report Wizard hiện ra như
hình bên. Cửa sổ gồm 2 ô chính. Ô
bên trái chứa danh sách các trưßng
của b¿ng dữ liệu hiện thßi. Ô bên
ph¿i hiển thị danh sách các trưßng
mà ta ã chọn ể hiển thị trên báo biểu
mới.NhÁn úp vào tên trưßng á ô bên
trái ể chọn trưßng sẽ ược hiển thị trên báo biểu report. lOMoARcPSD| 37922327
à ây ta chọn bốn trưßng: Mã ơn ặt
hàng, Mã khách hàng, Ngày ặt hàng, Phí Vận chuyển.
Ngoài 4 thông tin rÁt quan trọng
này của một ơn ặt hàng, ta cũng c¿n
phi biết chi tiết về các s¿n phÁm ược
bán trong hợp ồng: số lượng, khối
lượng, ơn giá, chiết khÁu. Các thông
tin này ược lưu á b¿ng ơn ặt hàng chi tiết.
Do ó ta ph¿i chọn ra các trưßng Chọn b¿ng Đơn
này từ b¿ng Đơn ặt hàng chi tiết, ặt hàng chi tiết
bằng cách chọn b¿ng Đơn ặt hàng chi từ danh sách. tiết trong dòng Tables/Queries
Lúc này Access chuyển sang liệt
kê các trưßng của b¿ng Đơn ặt hàng
chi tiết á ô bên trái. Các trưßng ta ã
chọn từ b¿ng Đơn ạt hàng trước ó vẫn còn á ô bên ph¿i. lOMoARcPSD| 37922327
NhÁn vào nút lệnh >> ể chọn tÁt
c¿ các trưßng của b¿ng ơn ặt hàng chi
tiết.NhÁn Next ể tiếp tục
Access tiếp ó hỏi ta âu là b¿ng dữ
liệu chính ? Ta chọn b¿ng ơn ặt
hàng.NhÁn Next ể tiếp tục.
Tại bước tiếp theo, ta chọn trưßng
Mã Khách hàng làm giá trị ể tập hợp
các b¿n ghi lại với nhau (tÁt c¿ các
hợp ồng của một khách hàng sẽ ược
tập hợp lại cạnh nhau thành một
nhóm). NhÁn chuột vào Next ể tiếp tục.
Trong cửa sổ á bước này, ta chỉ ra
báo biểu sẽ sắp xếp dữ liệu theo
trưßng nào. Ta có thể chọn một hoặc
nhiều trưßng, hoặc không chọn
trưßng nào.Nếu ta muốn cứ á cuối
mỗi cột có tổng số, chọn mục
Summary Options. NhÁn Next ể tiếp tục. lOMoARcPSD| 37922327
Layout là cách bố trí, bài xắp của một ối tượng. Trong
Access, ngưßi ta ã thiết lập sẵn một
số dạng bố trí. Ta có thể chọn bÁt kỳ
dạng bố trí nào bằng cách nhÁn
chuột vào ô Layout. Ta cũng có thể
chọn hướng in của báo cáo theo
chiều ứng (Portrait) hay chiều nằm ngang (Landsscape) tại mục
Orientation.NhÁn Next ể tiếp tục.
Cuối cùng, ặt tên cho báo biểu là
ơn ặt hàng, nhÁn Finish ể kết thúc
quá trình tạo báo biểu.
Sau khi nhÁn nút lệnh Finish ể kết thúc quá
trình tạo lập báo biểu report bằng công cụ tự ộng,
Access hiển thị một báo biểu như hình bên.
Trong biểu này, ta thÁy, với mỗi một khách
hàng, tÁt c¿ các hợp ồng của khách hàng ó với
công ty ược liệt kê l¿n lượt, theo thứ tự về ngày tháng ký hợp ồng.
Vì có rÁt nhiều khách hàng, mỗi khách hàng lại
có nhiều hợp ồng cho nên một trang báo biểu
không thể chứa hết, báo biểu này sẽ ph¿i kéo dài nhiều trang. Để xem các trang tiếp theo, ta
sử dụng thanh di chuyển của báo biểu, nằm á góc dưới bên trái mỗi báo biểu.
Với mỗi báo biểu ta ều có một thanh công cụ. Ta có thể thiết kế riêng cho mỗi báo biểu
một thanh công cụ khác nhau. Dưới ây là thanh công cụ ng¿m ịnh cho mỗi báo biểu. lOMoARcPSD| 37922327
Hiển thị 2 trang của báo cáo Gửi kết qu¿ sang Các chế ộ hiển thị word hoặc excel Phóng hoặc thu hình Hiển thị từng trang Chọn số trang hiển thị
Thi¿t lÁp ánh d¿ng trang in cho báo biểu
Khi thiết kế các báo biểu, hoặc ngay trước khi in chúng, ta ph¿i ịnh dạng trang in của báo
biểu cho phù hợp với các máy in mà ta hiện có. Cách thức làm như sau: 1.
Trên cửa sổ các ối tượng của cơ sá dữ liệu, nhÁn úp chuột vào tên báo biểu ể má báo biểu ó. 2.
Trên menu File, chọn Page Setup (Thiết lập trang giÁy). 3.
NhÁn vào một trong các nhãn sau ể thiết lập các thuộc tính  Margins. Điều
chỉnh ộ rộng các lề và kiểm soát in. 
Page. Điều chỉnh hướng in, kích thước giÁy, chọn máy in. Thông thưßng ta
chọn khổ A4 (khổ phổ dụng nhÁt), hướng giÁy dọc (Portrait) hoặc ngang (Landscape). 
Columns. Thiết lập số cột, kích thước và cách bố trí của các cột. 4. NhÁn OK.
Má xem và in mßt báo biểu ã có 1.
Trong cửa sổ Database window, nhÁn chuột vào Reports trong cột Objects. 2.
NhÁn chuột vào báo biểu c¿n má. 3.
Trên thanh công cụ của cửa sổ Database window, nhÁn chuột vào nút Design ể
thiết kế báo biểu hiện tại, hoặc vào nút Preview ể hiển thị báo biểu trước khi in.
Hißu chßnh mßt báo biểu
Việc dùng quá trình tạo báo biểu tự ộng ã có thể cho phép chúng ta có ược một báo biểu
ẹp dựa trên các thông tin có sẵn. Tuy nhiên, ể có ược các kết qu¿ xử lý phức tạp từ nhiều
nguồn thông tin khác nhau, ta ph¿i chỉnh sửa trực tiếp các báo biểu.
Cách thiết kế một báo biểu cũng tương tự như thiết kế một biểu mẫu nhập liệu. Trong báo
biểu trên, ta mới có thông tin về s¿n phÁm, số lượng, ơn giá và chiết khÁu. Tuy nhiên, ta
lại không có thành tiền. Ta sẽ bổ sung thông tin này vào báo biểu. lOMoARcPSD| 37922327
Bước 1: Chuyển báo biểu ơn ặt hàng
sang chế ộ thiết kế bằng cách nhÁn chuột vào nút lệnh (Thiết kế).Lúc
này cÁu trúc của báo biểu ơn ặt hàng
ược thể hiện như hình bên.
Bước 2: Thêm một nhãn tiêu ề (label) vào bên cạnh dòng tiêu ề hiện tại, bằng cách nhÁn
vào nút Label trên thanh công cụ Toolbox, sau ó nhÁn chuột vào vị trí trên báo biểu. Đánh vào dòng chữ
Bước 3: Thêm một hộp văn b¿n (text box) vào ph¿n Detail của báo biểu, bên cạnh vị trí
của trưßng chiết khÁu (vị trí ý ) , bằng cách nhÁn chuột vào nút Text box trên thanh công cụ.
NhÁn úp vào Text box này ể hiển thị
cửa sổ thuộc tính - Properties, trong mục
Other \ Name, ổi tiền của Text box
thành : Trong mục Data\Control Source, ánh vào công thức:
=[Số lượng]*[Đn giá]*(1- [Chiết khÁu]).
Chuyển sang chế ộ Nhìn – View ể xem kết qu¿, bằng cách nhÁn chuột vào nút lệnh trên thanh công cụ.
Sau khi ã sửa ổi, báo biểu ơn ặt hàng ã có thêm cột thành tiền chứa tổng số tiền ph¿i tr¿
cho mỗi s¿n phÁm trong ơn ặt hàng.
Tuy nhiên, báo biểu còn thiếu thông tin về tổng giá trị của mỗi ơn ặt hàng.
Ta bổ sung thông tin này bằng cách sau:
Bướcc 4: Thêm cột mới chứa giá trị cộng dồn của cột thành tiền.
Dùng chuột thêm một iều khiển mới kiểu Text box vào trong báo biểu, ngay cạnh iều
khiển có tên là Thành tiền, tại vị trí þ, ặt tên là Tổng con.
Tại mục Data\Control Source, nhập vào công thức = [Thành tiền]. Thiết lập mục
Data\Running Sum (tính tổng) thành Over group. Việc thiết lập thuộc tính tính tổng con lOMoARcPSD| 37922327
(Over group) cho phép iều khiển này lưu giá trị cộng dồn của từng ơn ặt hàng; sang một ơn
ặt hàng mới thì Tổng con này lại ược tính lại từ 0. Cột chứ số tiền ph¿i tr¿ cho mỗi s¿n phÁm cộng dồn
NhÁn chuột vào nút lệnh
trên thanh công cụ ể xem kết qu¿. Báo biểu giß ây ã có
thêm cột mới chứa giá trị cộng dồn tiền hàng của mỗi ơn ặt hàng.
Bây giß ta thêm dòng chứa tổng giá trị hợp ồng (bằng tổng của Tiền hàng và Tiền phí vận
chuyển) vào ph¿n kết thúc của mỗi ơn ặt hàng. Các bước tiến hành như sau:
NhÁn chuột ph¿i vào thanh này ể chọn Sorting and Groupi Cột mới hiển thị giá trị lOMoARcPSD| 37922327
Bước 5: NhÁn chuột vào thanh ơn ặt hàng_ Mã Đ Đ Hg Header. NhÁn phím bên ph¿i ể
hiện cửa sổ Menu các lệnh, chọn Sorting and Grouping (sắp xếp và phân nhóm). Cửa sổ tiếp theo hiện ra.:
Muốn thay ổi cách sắp xếp hoặc
thứ tự phân nhóm các b¿n ghi, ta chỉ ra tên trưßng trong cột Biểu tượng này chỉ ra rằng các
Thay ổi thứ tự sắp xếp của b¿n ghi á trên trưßng. Ascending: tăng, báo biểu ang Descending: gi¿m ược phân nhóm và sắp xếp theo giá trị của trưßng.
Để ược phân nhóm, 1 trưßng ph¿i
có Group Header (tiêu ề trên
nhóm) hoặc Group footer (tiêu ề dưới)
Trong cửa sổ Sorting and Grouping, chọn dòng
ơn ặt hàng_Mã Đ Đ Hg, thiết lập thuộc tính Group
Footer (tiêu ề dưới) thành Yes.
Việc này ể nhằm tạo ra một kho¿ng trống
phía dưới cứ mỗi khi kết thúc một ơn ặt hàng. Cửa sổ kho¿ng trống như sau: Đến ây ta ã sử dụng qua tÁt c¿ các chức năng c¿n thiết khi xây dựng một báo biểu lOMoARcPSD| 37922327 Kho¿ng trống kết thúc sau mỗi ơn ặt hàng. Trong dòng trống này, ta
thêm một iều khiển dạng
Text box, ặt tên là Giá trị
hợp ồng, nhập vào trong mục C thức: = [Phí Vận chuyển]+[Tổng con]. Chuyển sang chế ộ View (
), kết qu¿ báo biểu ơn ặt hàng hiển thị ra ã có ô chứa
tổng giá trị ơn hàng á cuối.
Phụ lục: Làm việc với dữ liệu.
1.Sử dụng bộ xây dựng biểu thức – Expression Builder
Khi xây dựng một query hay một form, một report, ta thưßng xuyên ph¿i sử dụng ến bộ
xây dựng công thức Expression builder. Sử dụng công cụ này, chúng ta có thể nhanh chóng
xây dựng ược một công thức tham chiếu ến các ối tượng trong một c sá dữ liệu một cách
chuÁn xác mà chỉ c¿n sử dụng con chuột.
Bộ xây dựng biểu thức có ba khu vực:
ü Ô công thức: Khu vực phía trên của giao diện là một ô nơi ta xây dựng các biểu thức.
Ta có thể trực tiếp nhập vào từ bàn phím biểu thức; hoặc sử dụng danh sách trong các ô phía
dưới – bằng cách nhÁn úp chuột vào tên các ối tượng, toán tử – ể dán chúng vào ô biểu thức
từ ó tạo nên biểu thức.
ý Nút Toán tā: Tại khu vực giữa của giao diện là các nút nhÁn cho các toán thử thưßng
ược sử dụng nhÁt. NhÁn chuột vào nút nào thì Expression Builder sẽ chèn toán tử ó vào
trong ô công thức. Muốn có danh sách ¿y ủ các toán tử, nhÁn chuột vào Operators á ô phía
dưới bên trái và nhóm các toán tử thích hợp. Ô bên phaỉ sẽ hiển thị tÁt c¿ các toán tử của
nhóm ược chọn. þ Các ph¿n tā: có ba ô á nāa d¤ái của giao dißn:
• Ô phía trái là thư mục các b¿ng, query, form, và report, các hàm tính(functions), các
hằng số – constants), các tóan tử – operators.
• Ô á giữa liệt kê các ối tượng cụ thể hoặc nhóm các ối tượng thành ph¿n của mục ã ược
chọn tại ô bên trái. Ví dụ, nếu nhÁn chuột vào Built-In Functions trong ô bên trái, các loại
hàm của Microsoft Access sẽ ược liệt kê.
• Ô bên ph¿i liệt kê các giá trị, nếu có, của các ph¿n tử ã ược chọn á hai ô ¿u. lOMoARcPSD| 37922327
2.Tìm kiếm và thay thế dữ liệu
Có nhiều cách ể tìm kiếm hoặc thay thế các dữ liệu mà ta muốn, dù dữ liệu ó là một giá
trị nhÁt ịnh, một b¿n ghi hay một nhóm các b¿n ghi
• Tìm b¿n ghi bằng cách dùng thanh cuộn á trên lưới dữ liệu Datasheet hoặc trên biểu
mẫu Form, hoặc ánh số thứ tự của b¿n ghi vào ô Record number trên thanh di chuyển.
• Sử dụng hộp thoại Tìm kiếm – Find, ể ịnh vị các b¿n ghi hoặc tìm kiếm các giá trị nhÁt
ịnh của các trưßng dữ liệu. Nếu muốn thay thế các giá trị nào ó bằng một giá trị khác, sử
dụng hộp thoại Thay thế – Replace.
• Sử dụng một bộ lọc – Filter, ta có thể tạm thßi cô lập và hiển thị một tập hợp các b¿n
ghi cụ thể ể xử lý trên một Form hoặc một lưới dữ liệu – Datasheet.
• Sử dụng truy vÁn query, ta có thể làm việc với một tập hợp cụ thể các b¿n ghi trích ra
từ một hoặc nhiều b¿ng khác nhau, thỏa mãn các tiêu chuÁn ã chỉ ra ban ¿u.
3.Sử dụng ký tự ại diện ể tìm kiếm giá trị
Khi c¿n tìm tập hợp các giá trị mà ta chỉ biết một ph¿n của giá trị ó (ví dụ tìm ngưßi có
tên bắt ¿u bằng chữ H và kết thúc bằng chữ ng), ta sử dụng ký tự ại diện ể thay vào vị trí các
ký tự chưa biết. Ký tự ại diện có thể sử dụng trong hộp thoại Tìm kiếm – Find, hộp thoại
Thay thế – Replace, trong truy vÁn – query, trong các biểu thức – expression.
Trong ACCESS, ta có thể sử dụng ký tự ại diện trong hộp thoại Tìm kiếm, Thay thế, trong
truy vÁn query, trong biểu thức ể tìm các giá trị, các b¿n ghi, hoặc các tệp. Ký tự Sā dāng Ví dā *
Tương ương với một nhóm các chữ cái. Nó có thể wh* sẽ tìm what, white,
ược sử dụng á ¿u hoặc á cuối chuỗi tìm kiếm. và why. ?
Tương ương bÁt cứ một chữ cái nào.
B?ll sẽ tìm ball, bell, và bill [ ]
Tương ương với một trong các chữ cái á trong ngoặc B[ae]ll sẽ tìm ball hoặc vuông.
bell chứ không tìm bill !
Loại trừ những chữ cái trong ngoặc vuông.
b[!ae]ll chỉ tìm bill chứ
không tìm bell,ball -
Tìm các chữ cái trong kho¿ng hai chữ cái cho
b[a-c]d sẽ tìm bad,
trước (theo thứ tự tăng d¿n: A ến Z, chứ không ược bbd, và bcd từ Z ến A). # Tương ương một số.
1#3 sẽ tìm 103, 113, 123,… Lưu ý:
 Ký tự ại diện ược sử dụng cho dữ liệu kiểu chữ, tuy nhiên ôi khi cũng có thể sử dụng
thành công với các kiểu dữ liệu khác, như kiểu ngày tháng. lOMoARcPSD| 37922327
 Khi sử dụng các ký tự ại diện ể tìm kiếm một dÁu hoa thị (*), dÁu hỏi (?), ký hiệu số
(#), dÁu ngoặc vuông má ([), dÁu nối (–), ta ph¿i cho dÁu ó vào trong ngoặc vuông. Ví dụ
ể tìm một dÁu hỏi, ta phi nhập vào [?] trong hộp thoại Tìm kiếm – Find. Nếu tìm kiếm dÁu
c¿m thán (!), dÁu ngoặc vuông óng (]) thì không c¿n phi cho vào trong ngoặc.
 Muốn tìm kiếm cùng lúc cặp ngoặc vuông thì ta phi nhập vào <[[ ]] < trong hộp tìm kiếm – Find.
4.Tìm kiếm giá trị cụ thể trong một trường - field 1.
Trên Biểu mẫu – Form hoặc lưới dữ liệu – Datasheet, chọn cột của trưßng – field
mà ta muốn tìm kiếm (nếu muốn tìm kiếm dữ liệu á tÁt c¿ các trưßng thì không c¿n ph¿i chọn). 2. NhÁn nút lệnh Find trên thanh công cụ. 3.
Trên dòng Find What (tìm gì), ánh vào giḠtrị muốn tìm. 4.
Lựa chọn các tuỳ chọn (options) tìm kiếm. 5. NhÁn Find Next.
5.Thay thế giá trị trong một trường field
1. Trên Biểu mẫu – Form hoặc lưới dữ liệu – Datasheet, chọn cột của trưßng – field mà ta
muốn tìm kiếm (nếu muốn tìm kiếm dữ liệu á tÁt c¿ các trưßng thì không c¿n ph¿i chọn). 1.
Chọn Replace trên menu Edit. 2.
Đánh vào giá trị c¿n tìm trên dòng Find What, ánh vào giá trị mới sẽ thay thế
giá trị cũ vào dòng Replace With. 3.
Thiết lập các tuỳ chọn c¿n thiết. 4.
Để thay thế tÁt các các giá trị cũ bằng giá trị mới, chọn Replace All. 5.
Để thay thế chỉ một số các giá trị cũ bằng giá trị mới, chọn Find next, sau ó nhÁn
Replace. Để bỏ qua không thay thế mà chuyển tiếp ến l¿n xuÁt hiện tiếp theo của giá trị ó, nhÁn Find Next.
6. Xắp sếp dữ liệu 1.
Trong khung nhìn Form View hoặc Datasheet View, nhÁn chuột chọn trưßng c¿n
xắp sếp. Muốn xắp sếp các b¿n ghi á SubDatasheet, nhÁn chuột vào dÁu + ể má rộng
khung nhìn, sau ó chọn trưßng. 2. Làm thao tác sau: •
Để xắp sếp tăng d¿n, chọn Sort Ascending . •
Để xắp sếp tăng d¿n, chọn Sort Descending .
Nếu ta chọn nhiều cột (trưßng) cùng một lúc ể xắp sếp thì ACCESS sẽ xắp sếp l¿n lượt
các cột từ trái qua ph¿i
TÓM TÂT CH£¡NG 5
1. Tßng quan vÁ hß quÁn trá CSDL lOMoARcPSD| 37922327
Hệ qu¿n trị CSDL là hệ thống ph¿n mềm iều khiển toàn bộ các chiến lược truy nhập CSDL
Các chức năng cơ b¿n của hệ qu¿n trị CSDL bao gồm
· Tạo ra và duy trì cÁu trúc dữ liệu · Cập nhật dữ liệu · Lưu trữ dữ liệu
· Tìm kiếm và xử lý các dữ liệu lưu trữ
· Cho phép nhiều ngưßi dùng truy xuÁt ồng thßi
· Hỗ trợ tính b¿o mật và riêng tư
· Cung cÁp một cơ chế chỉ mục (index) hiệu qu¿ ể lÁy nhanh các dữ liệu lựa chọn.
· B¿o vệ dữ liệu khỏi mÁt mát bằng các quá trình sao lưu (backup) và phục hồi (recovery).
Hiện nay có một số hệ qu¿n trị CSDL quan hệ ược sử dụng rộng rãi trên thị trưßng như
Oracle, Informix, Sybase, Foxpro, Access,…..
2. Hß quÁn trá CSDL Access
Access là hệ qu¿n trị CSDL,vì vậy bạn có thể dùng M.ACCES ể qu¿n lý các thông tin
trong CSDL . Trong một file Access, các dữ liệu ược chia vào các b¿ng riêng biệt, gọi là
b¿ng; Việc xem, thêm hay cập nhật dữ liệu thực hiện bằng các cửa sổ nhập liệu, gọi là biểu
mẫu - form; Việc tìm kiếm và xử lý các thông tin có chọn lọc thực hiện bằng các truy vÁn -
query; Việc phân tích và in dữ liệu theo một khuôn mẫu thiết kế trước sử dụng ến các báo
biểu – report; ể cho phép ngưßi dùng xem, sửa, phân tích các thông tin của c sá dữ liệu từ
Internet hoặc Intranet bằng các trang truy cập dữ liệu, data access pages.
3. Quy trình thi¿t k¿ mßt CSDL
Trước khi bắt tay vào xây dựng các b¿ng, biểu mẫu, các báo biểu và các thành ph¿n khác
của một CSDL, ta c¿n ph¿i bỏ thßi gian thiết kế chi tiết.
Các b¤ác c¢ bÁn ể thi¿t k¿ mßt CSDL là: 1.
Xác ịnh mục ích của CSDL: CSDL dùng ể lưu trữ thông tin gì, c¿n rút ra những thông tin gì từ CSDL. 2.
Xác ịnh các b¿ng dữ liệu – b¿ng - c¿n có trong CSDL: một B¿ng không ược chứa
dữ liệu trùng lặp, và thông tin cũng không nên ể bị trùng lặp giữa các b¿ng. Mỗi một b¿ng
chỉ nên chứa thông tin liên quan ến một chủ ề. 3.
Xác ịnh các trưßng dữ liệu – field - c¿n có trong mỗi b¿ng dữ liệu: Mỗi b¿ng
chứa thông tin về cùng một chủ thể, mỗi field của một b¿ng lại chứa các thông tin riêng biệt
về chủ thể ó. Ta chỉ nên ghi nhận các thông tin c¿n thiết từ thực tế, không nên có các trưßng
tính toán – calculated field. Lưu trữ thông tin dưới dạng chi tiết nhÁt có thể (ví dụ: Họ, Tên
chứ không nên Họ và Tên). 4.
Xác ịnh các trưßng chứa giá trị duy nhÁt á mỗi b¿n ghi: Để Access kết nối ược
các thông tin lưu trữ trong các b¿ng riêng biệt . ví dụ: kết nối các khách hàng với ơn ặt hàng
của ngưßi ó .Mỗi b¿ng c¿n phi có một trưßng hoặc một nhóm các trưßng chứa giá trị duy
nhÁt dùng ể phân biệt giữa các b¿n ghi trong một b¿ng. Một trưßng như vậy gọi là trưßng khoá - Primary key. lOMoARcPSD| 37922327 5.
Xác ịnh các mối quan hệ giữa các b¿ng: Ta chỉ ra cho Access cách ể tìm kiếm
và ưa các thông tin liên quan lại tập hợp với nhau. 6.
Tinh chỉnh thiết kế: Sau khi ã thiết kế, ta c¿n vận hành thử nghiệm CSDL ể ¿m
b¿o các chức năng c¿n có ều thực hiện suôn sẻ úng như mong ợi. Nếu phát hiện những thông
tin gì không c¿n thiết thì ta nên loại bỏ ể tránh sự cồng kềnh. 7.
Nhập dữ liệu và tạo các ối tượng CSDL: Khi ã hài lòng với cÁu trúc các b¿ng
biểu và các mối liên kết là lúc phi nhập liệu. Dựa trên dữ liệu ã nhập ta có thể dễ dàng xây
dựng các biểu mẫu, báo biểu, truy vÁn ể phục vụ công tác xử lý ¿u vào và ¿u ra thông tin. 8.
Sử dụng công cụ phân tích của Access: Access cung cÁp công cụ B¿ng Analyzer
Wizard giúp ngưßi dùng phân tích thiết kế ã có và chỉnh sửa chúng.
5.3 SĀ DĀNG NGÔN NGĂ VISUAL BASIC FOR APPLICATION
5.3.1 Giới thiệu chung
Ta có thể sử dụng ngôn ngữ Visual Basic for application ể viết các oạn chương trình trong
các ứng dụng của Access. Mặc d¿u Access ã ược trang bị rÁt nhiều chương trình có sẵn ược
gọi là Macro, nhưng d¿n d¿n ngưßi ta thÁy rằng còn có rÁt nhiều iều c¿n làm mà các Macro
chưa áp ứng ược. Việc sử dụng Macro nhiều khi cũng rÁt bÁt tiện, vì ta không biết cách
thức hoạt ộng bên trong các macro. Các chương trình trong Access thưßng gồm các ph¿n
khai báo chung và các hàm, thủ tục. Các ph¿n khai báo chung này và các thủ tục ược tập hợp
trong hai loại Module là module chuÁn (Standard Module) và Module lớp (Class Module).
• Bộ mã lệnh chuÁn: Bộ mã lệnh chuÁn chứa các oạn mã lệnh mà có thể chạy bÁt cứ âu
trong ứng dụng. Ta có thể tạo một bộ mã lệnh chuÁn mới bằng cách tương tự như khi
tạop các ối tượng khác. ta chọn ối tượng làm việc là Modules, sau ó nhÁn vào nút New,
hoặc chọn Insert từ thanh thực ơn ròi chọn Module.
• Bộ mã lệnh lớp: Chúng ta sử dụng bộ mã lệnh lớp ể có thể tạo các ối tượng mới của riêng
mình. Các thủ tục và hàm mà chúng ta ịnh nghĩa trong bộ mã lệnh sẽ trá thành các phương
thức của ối tượng. Các thuộc tính mà chúng ta ịnh nghĩa bằng các lệnh Property Get,
Property Let, Property Set sẽ trá thành các thuộc tính của ối tượng. Để tạo mới một bộ
mã lệnh lớp ta thực hiện chọn Insert, Class Module. Các oạn lệnh nằm trong một biểu
mẫu hoặc báo cáo cũng là các bộ mã lệnh lớp.
5.3.2 Các thành phần trong bộ mã lệnh
Trong bộ mã lệnh có thể chứa các thành ph¿n sau:
• Các khai báo (Declaration): Là các câu lệnh dùng ịnh nghĩa các biến, hằng, loại dữ liệu
do ngưßi dùng ịnh nghĩa.
• Thủ tục biến cố (Event Procedure): là các thủ tục ược gọi tới khi một biến cố nào ó của
biểu mẫu, báo cáo hoặc các iều khiển x¿y ra. Ví dụ thủ tục hay dùng nhÁt là tượng>_Click() là thủ tục biến cố ược thực hiện khi ngưßi sử dụng Click chuột trên ối tượng tương ứng.
• Thủ tục chung (General Procedure): là các thủ tục mà không trực tiếp liên quan ến một
ối tượng hoặc một biến cố nào c¿. Chúng ta có thể tạo các thủ tục chung này bên trong
một bộ mã lệnh chuÁn hoặc một bộ mã lệnh lớp. Các thủ tục chung có thể là thủ tục hoặc hàm. lOMoARcPSD| 37922327
5.3.3 Sử dụng ối tượng DoCmd (Do Command)
Trong khi sử dụng ngôn ngữ VB for Applications chúng ta có thể thực hiện các hành ộng
tương ứng trong công cụ tập lệnh bằng cách sử dụng các phương thức của ối tượng DoCmd. Cú pháp chung:
Docmd. [Các tham số]
Ví dụ. ể có thể óng biểm mẫu SINHVIEN chúng ta dùng phương thức Close của ối tượng Docmd
Docmd.Close acForm, "Sinhvien" trong ó acForm là hằng số chỉ ịnh loại ối tượng là biểu
mẫu muốn óng và chuỗi "Sinhvien" là tên của biểu mẫu SINHVIEN. Khi phương thức c¿n
nhiều tham số thì ta dùng dÁu phÁy ể ngăn cách các tham số.
Một số phương thức thưßng dùng của ối tượng docmd. Tên ph¤¢ng Ví dā thức Ý nghĩa FindNext FindRecord GoToControl GoToRecord OpenTable OpenQuery OpenForm DoCmd.OpenForm "Sinhvien" Má biểu mẫu Sinhvien OpenReport DoCmd.OpenReport
"Baocao1", Má báo cáo BAOCAO1 trên ể xem acViewPreview màn hình DoCmd.OpenReport
"Baocao1", In báo cáo BAOCAO1 acViewNormal OpenModule Quit DoCmd.Quit Thoát khỏi Access ReName RunCommand RunSQL Save
DoCmd.Close acForm, "sinhvien",
Đóng biểu mẫu SINHVIEN, trước khi acSaveYes
óng thì hỏi có Save không. SelectObject
5.3.4 Các cấu trúc iều khiển chương trình
Các cÁu trúc iều khiển là các câu lệnh cho phép ngưßi lập trình có thể iều khiển thứ tự vận
hành các câu lệnh bên trong chương trình khi chúng ược thực hiện. Nếu không có các câu
lệnh iều khiển thì chương trình sẽ ược thực hiện tu¿n tự từ trên xuống theo úng thứ tự các câu lệnh mà ta ã viết. lOMoARcPSD| 37922327
a/ Cấu trúc if ... then ...
if < iều kiện> then
if < iều kiện> then [các lệnh] endif
if < iều kiện> then [các lệnh 1] else [các lệnh 2] endif Ví dā. if mDatemDate
6.4.2. Cấu trúc Select Case... Select Case Case Case ... Case Case Else End Select Ví dā. Select Case performance Case 1 Bonus = salary * 0.1 Case 2, 3 Bonus = salary * 0.09 Case 4 To 6 Bonus = salary * 0.07 Case Is > 8 Bonus = 100 Case Else Bonus = 0 End Select
b/ Cấu trúc Do While...Loop
Do while < iều kiện> Loop • Do lOMoARcPSD| 37922327
Loop while < iều kiện>
Có thể thay while bằng Until • While < iều kiện> Wend
Chú ý. While và Until có tác dụng ngược nhau: While < iều kiện> sẽ dừng khi iều kiện
sai, còn Until < iều kiện> lại dừng khi iều kiện úng.
c/ Cấu trúc For... Next
For = To [bước nh¿y] [Exit for] Next [biến] • For Each In [Exit for] Next [ph¿n tử]
d/ Thoát khỏi thủ tục, vòng lặp
Exit Sub, Exit Function, Exit Do, Exit For
5.3.5 Mßt số ch¤¢ng trình m¿u
LÁp trình trong Access
Giống như ngôn ngữ C và một số ngôn ngữ cÁp cao khác, trong Access các công việc ược
thực hiện thông qua các hàm (Function) hoặc thủ tục (Procedure). Bên ngoài hàm chỉ có
lệnh khai báo, không có các lệnh loại khác như phép gán chẳng hạn.
a/ Khai báo các biến
Ví dụ về khai báo các biến: Dim ws As Workspace Dim db As Database Dim tbl As TableDef Dim tdf as QueryDef Dim rst as Recordset Dim fld As Field Dim tblname As String Dim mm as Single Dim n as integer Dim a as Double lOMoARcPSD| 37922327
b/ Thủ tục và hàm
Có hai loại thủ tục: Thủ tục sự kiện, là thủ tục gắn liền với một sự kiện nào ó,
Ví dụ. command1_click() là thủ tục ược thực hiện khi ta nhắp chuột vào nút lệnh có tên Command1.
Thủ tục cũng có thể có tên không gắn với sự kiện, thí dụ hàm msgbox chẳng hạn. Lúc này
muốn gọi hàm hoặc thủ tục thì ta ph¿i ghi rõ tên hàm cùng các tham số, ví dụ msgbox "Chao ban".
Các ví dụ khác về thủ tục và hàm không gắn với sự kiện:
Public Sub Databases() Dim ws As Workspace Dim db As Database Dim db1 As Database Dim db2 As Database Set ws = DBEngine(0) Set db1 = CurrentDb
Set db2 = ws.OpenDatabase("d:\hoc_acc\qlsv1.mdb") For Each db In ws.Databases MsgBox db.Name Next db End Sub
Public Sub Open_Report(strReportName As String)
DoCmd.OpenReport strReportName, acViewPreview End Sub
Public Sub Print_Report(strReportName As String) 'Print specified report.
DoCmd.OpenReport strReportName, acViewNormal End Sub
c/ Tạo các thủ tục sự kiện
Chúng ta sẽ làm việc chủ yếu với thủ tục sự kiện. Để có thể tạo thủ tục sự kiện cho một ối
tượng hay iều khiển nào ó, ví dụ tạo thủ tục tương ứng với một nút lệnh, ta làm như sau:
Trước hết ta chọn ối tượng, sau ó nhắp chuột vào " ũa th¿n". Nếu chương trình ã có sẵn thì
trên màn hình sẽ hiện ra cửa sổ soạn th¿o. Nếu chưa có chương trình thì ta thÁy hộp thoại sau:
Ta chọn Code Builder và thÁy xuÁt hiện cửa sổ soạn th¿o, ví dụ: lOMoARcPSD| 37922327
Hộp Combo bên trái chứa các ối tượng, còn hộp Combo bên ph¿i chứa các sự kiện. Ta có
thể chọn các ối tượng từ cửa sổ bên trái, sau ó nhắp vào hộp combo bên ph¿i ể chọn sự kiện:
Sau khi chọn xong thì tên thủ tục ược tự ộng tạo ra và ta chỉ việc gõ các dòng lệnh vào trong ó. Ví dā.
Ta có thể tạo một b¿ng chọn, sau ó tạo trên ó các nút lệnh má Form, óng form, má report,
óng report, thoát về Windows, thoát về Access như sau: Má Form. DoCmd.OpenForm Ví dụ. DoCmd.OpenForm "[Danh Sach]" Đóng Form. Ví dụ.
DoCmd.Close acForm, "NhanSu", acSaveYes Má Report Ví dụ. Má ể xem
DoCmd.OpenReport strReportName, acViewPreview In Report.
DoCmd.OpenReport strReportName, acViewNormal
d/ Các hàm trong Form "NhanSu" Option Compare Database Option Explicit
Private Sub MAH_GotFocus() lOMoARcPSD| 37922327
Dim db As Database, qdf As QueryDef Dim strSQL As String, strName As String strName =
"HUYENLookUp Query" strSQL = "SELECT MAH,TenHUYEN FROM HUYEN WHERE MAT= '" & Me.MAT & "'" Set db = CurrentDb db.QueryDefs.Refresh For Each
qdf In db.QueryDefs If qdf.Name = strName Then db.QueryDefs.Delete qdf.Name End If Next qdf
Set qdf = db.CreateQueryDef(strName, strSQL) 'qdf.Close 'Set db = Nothing Me.MAH.RowSource = strName End Sub
Private Sub Luong_AfterUpdate()
Me.ThuNhap = Val(Me.Luong) + Val(Me.PhuCap) End Sub
Private Sub PhuCap_AfterUpdate()
Me.ThuNhap = Val(Me.Luong) + Val(Me.PhuCap) End Sub
Private Sub cmdClose_Click()
DoCmd.Close acForm, "NhanSu", acSaveYes End Sub
====================================
Private Sub cmdMakeTblQuery_Click() Dim
strName As String, strSQL As String strName = "NhanSu vut"
strSQL = "SELECT NhanSu.Hoten, NhanSu.Dantoc, TINH.TenTinh " & _
"INTO [" & strName & "]" & _
"FROM TINH INNER JOIN NhanSu ON TINH.MAT = NhanSu.MAT " & _
"WHERE (((NhanSu.Luong)<100 Or (NhanSu.Luong)>400))"
Dim db As Database, tdf As TableDef Set db = CurrentDb
db.TableDefs.Refresh For Each tdf In
db.TableDefs If tdf.Name = strName Then db.TableDefs.Delete tdf.Name End If Next tdf CurrentDb.Execute strSQL
MsgBox "Query " & strName & " da duoc tao" End Sub lOMoARcPSD| 37922327
Private Sub cmdUpDateQuery_Click() Dim strSQL As String
strSQL = "UPDATE NhanSu SET NhanSu.Luong = 100 WHERE(([PhuCap]=10) and [DanToc]='Kinh')" CurrentDb.Execute strSQL
MsgBox "Table NhanSu da duoc cap nhat" End Sub
Private Sub cmdDeleteQuery_Click() Dim strSQL As String
strSQL = "DELETE * from NhanSu WHERE(([PhuCap]=10) and [DanToc]='Kinh')" CurrentDb.Execute strSQL
MsgBox "Mot so ban ghi da bi xoa tu Table NhanSu" End Sub
Private Sub cmdCrosstabQuery_Click()
Dim db As Database, qdf As QueryDef
Dim strSQL As String, strName As String strName = "Cross Query vut"
strSQL = "TRANSFORM Max(NhanSu.Luong) AS MaxOfLuong " & _
"SELECT NhanSu.Dantoc " & _ "FROM NhanSu " & _
"GROUP BY NhanSu.Dantoc " & _ "PIVOT NhanSu.MAT" Set db = CurrentDb db.QueryDefs.Refresh For Each
qdf In db.QueryDefs If qdf.Name = strName Then db.QueryDefs.Delete qdf.Name End If Next qdf
Set qdf = db.CreateQueryDef(strName, strSQL)
MsgBox "Query " & strName & " da duoc tao"
' Khong the su dung: CurrentDb.Execute strSQL End Sub
======================================
Private Sub Form_Load()
Me.OrderBy = "[MAKHOA],[HO],[TEN]" Me.OrderByOn = True End Sub lOMoARcPSD| 37922327
Private Sub gofirst_Click() Dim rst As Recordset Set rst = Me.RecordsetClone rst.MoveFirst Me.Bookmark = rst.Bookmark End Sub
Private Sub golast_Click() Me.RecordsetClone.MoveLast
Me.Bookmark = Me.RecordsetClone.Bookmark End Sub
Private Sub goprev_Click()
Me.RecordsetClone.MovePrevious
If Me.RecordsetClone.BOF Then Me.RecordsetClone.MoveFirst End If
Me.Bookmark = Me.RecordsetClone.Bookmark End Sub
Private Sub gonext_Click() Me.RecordsetClone.MoveNext
If Me.RecordsetClone.EOF Then Me.RecordsetClone.MoveLast End If
Me.Bookmark = Me.RecordsetClone.Bookmark End Sub
Private Sub mah_GotFocus()
Dim strSQL As String, strName As String strName = "HUYENLookUp Query" strSQL =
"SELECT MAH,TenHUYEN FROM HUYEN WHERE MAT= '" & Me.MAT & "'" NewQuery strName, strSQL Me.MAH.RowSource = strName End Sub
Private Sub Timkiem_Click()
Dim strMsg As String, strInput As String ' Prompt user for input.
strInput = InputBox("Hay nhap ma sinh vien can tim:")
If strInput = "" Then 'user chose "cancel" Exit Sub End If Dim rst As Recordset Set rst = Me.RecordsetClone
rst.FindFirst "MASV = '" & strInput & "'" If rst.NoMatch Then
MsgBox "khong tim thay ma sinh vien " & strInput, vbInformation lOMoARcPSD| 37922327 Else Me.Bookmark = rst.Bookmark End If End Sub
Private Sub Them_Click()
Dim strMsg As String, strInput As String
strInput = InputBox("Hay nhap ma sinh vien can them:")
If strInput = "" Then 'user chose "cancel" Exit Sub End If
Dim rst As Recordset Set rst =
Me.RecordsetClone rst.FindFirst "MASV
= '" & strInput & "'" If Not rst.NoMatch Then
MsgBox "Ma sinh vien " & strInput & " da co, khong them duoc!", vbExclamation Exit Sub End If With rst .AddNew ' Add new record. !MASV = strInput ' Add data. !DIEMVT = 22 .Update ' Save changes. End With rst.MoveLast Me.Bookmark = rst.Bookmark
'DoCmd.GoToRecord , , acNewRec End Sub Private Sub Dong_Click()
DoCmd.Close acForm, "sinhvien", acSaveYes End Sub
Private Sub viewdatasheet_Click()
DoCmd.OpenQuery "SINHVIEN Query", acViewNormal End Sub
Private Sub Xoa_Click()
Dim strMsg As String, strInput As String ' Prompt user for input.
strInput = InputBox("Hay nhap ma sinh vien can xoa:")
If strInput = "" Then 'user chose "cancel" Exit Sub End If Dim rst As Recordset Set rst = Me.RecordsetClone
rst.FindFirst "MASV = '" & strInput & "'" If rst.NoMatch Then
MsgBox "khong tim thay ma khoa " & strInput, vbInformation lOMoARcPSD| 37922327 Exit Sub Else
Me.Bookmark = rst.Bookmark End If
strMsg = "Ban xoa sinh vien co ma " & strInput & "?" If
MsgBox(strMsg, vbYesNo, "Chu y!") = vbNo Then Exit Sub Else rst.Delete If Not rst.BOF Then rst.MovePrevious End If
If Not Me.RecordsetClone.BOF Then Me.Bookmark = rst.Bookmark End If End If End Sub
Public Function ExitMicrosoftAccess() As Integer Dim strMsg As String
strMsg = "Thoat khoi Access va tro ve Windows?"
If MsgBox(strMsg, vbYesNo, "Chu y!") = vbNo Then Exit Function End If 'Exit Microsoft Access. DoCmd.Quit End Function
Public Function DisplayDatabaseWindow() As Integer
Dim strDocName As String strDocName = "Main
Switchboard" ' Close Main Switchboard form. DoCmd.Close
' Give focus to Database window; select "Main Switchboard" form
DoCmd.SelectObject acForm, strDocName, True End Function lOMoARcPSD| 37922327 lOMoARcPSD| 37922327
CÂU HàI VÀ BÀI TÀP CH£¡NG 5 Câu hái
1.Tệp CSDL của ACCESS có uôi (ph¿n má rộng ) là:  dbf  mdb  xls
2. Khi bắt ¿u vào làm việc với M.Acces, nếu muốn thiết lập một CSDL mới. Ta chọn:  Blank Database  Open an Existing Database
3. Khi bắt ¿u khái ộng.M.Access, nếu muốn má 1 tệp CSDL cũ ra ể xem, sửa…. Ta chọn:  Blank Wizard  Open an Existing Database
4. Đối tượng nào là ối tượng nằm trong tệp CSDL của Acces  Table, Query  Form, Macro  Report, Module  C¿ 3 nhóm trên
5. Cửa sổ Database bao gồm các nút nào: 
Các nút ối tượng: B¿ng, Query, Form, Report, Macro. Moduls… 
Các nút hành ộng (Open, Design, New)  C¿ hai nhóm nút trên
6. Trong cửa sổ Database nút hành ộng Open dùng ể:  Má 1 ối tượng  Đóng 1 ối tượng  Tạo 1 ối tượng mới
7. Trong cửa sổ Database nút hành ộng New dùng ể: Má 1 ối tượng    327
Downloaded by Rot Ca (rotca780@gmail.com) lOMoARcPSD| 37922327 Đóng 1 ối tượng Tạo 1 ối tượng mới
8. Trong cửa sổ Database nút hành ộng Design dùng ể: 
Chỉnh sửa thiết kế 1 ối tượng  Đóng 1 ối tượng  Tạo 1 ối tượng mới
9. Khi ang làm việc với M.Access muốn tạo ra một tệp CSDL mới khác ta
chọn File trên thanh menu sau ó chọn:  New  Open  Close
10. Khi ang làm việc với M.Access muốn má 1 tệp CSDL khác( ã có) ta chọn
File trên thanh menu sau ó chọn:  New  Open  Save as
11. Khi ang làm việc với M.Access muốn óng tệp CSDL ang ược má ta chọn
File trên thanh menu sau ó chọn:  Save  Open  Close
12. Khi ang làm việc với M.Access muốn thoát ra khỏi M.Acces ể trá về hệ iều
hành Windows ta chọn File trên thanh menu sau ó chọn:  Close  Open  Exit
13. Một tệp CSDL của M.Access gồm có:  1 b¿ng  Nhiều b¿ng    328
Downloaded by Rot Ca (rotca780@gmail.com) lOMoARcPSD| 37922327  2 b¿ng
14. Một tệp CSDL của M.Access gồm có: 1 Query 2 Query Nhiều Query
15.Trong cửa sổ database muốn tạo b¿ng mới ta chọn Table(B¿ng) sau ó chọn:  New  Design  Open  Creat
16. Trong cửa sổ database muốn má 1 b¿ng á chế ộ nhập liệu ta chọn Table(B¿ng) sau ó
chọn tên b¿ng c¿n má rồi chọn tiếp:  New  Design  Open  Use
17. Trong cửa sổ database muốn chỉnh sửa lại cÁu trúc của b¿ng (ví dụ thêm 1 trưßng mới
vào b¿ng) ta chọn Table(B¿ng) sau ó chọn tên b¿ng c¿n chỉnh rồi chọn tiếp:  New  Design  Open  print
18. Khi tạo b¿ng, muốn nhập tên trưßng ta chọn cột:  Field name  Data type  Properties  Edit
19.Khi tạo b¿ng, muốn chỉ ịnh kiểu dữ liệu cho trưßng thì trên hàng của trưßng ó ta chọn cột:    329
Downloaded by Rot Ca (rotca780@gmail.com) lOMoARcPSD| 37922327  Field name  Data type  Insert
20.Khi tạo khoá chính cho trưßng thì trước hết ta chọn trưßng ó, sau ó chọn insert trên thanh
menu rồi tiếp tục chọn: select all primary key copy    330
Downloaded by Rot Ca (rotca780@gmail.com) lOMoARcPSD| 37922327  cut 21.
Khi tạo b¿ng dữ liệu, ta muốn khai báo một trưßng có kiểu số thì trên cột Data Type
tại dòng tương ứng của trưßng ta chọn:  Number  Text  Date/time  Yes/no 22.
Khi tạo b¿ng dữ liệu, ta muốn khai báo một trưßng có kiểu ối t¤ÿng hình Ánh thì
trên cột Data Type tại dòng tương ứng của trưßng ta chọn:  OLE Object  Text  Hyperlink  Currency 23.
Muốn xây dựng liên kết giữa các b¿ng có liên quan thì ta ph¿i: thêm các b¿ng có liên quan vào cửa sổ?  Relationships window  Database  file  open
24.Trong cửa sổ Database muốn tạo 1 query mới ta chọn Query sau ó chọn:  New  Design  Open  file
25. Trong cửa sổ Database muốn chỉnh sửa 1 query ta chọn Query sau ó chọn tên query
c¿n sửa rồi chọn tiếp:  save  New  Design  Open lOMoARcPSD| 37922327
26. Trong cửa sổ Database muốn thực hiện 1 query ta chọn Query sau ó chọn tên query
thực hiện rồi chọn tiếp:  save as  New  Design  Open
27. Truy vÁn nào trong các truy vÁn sau là truy vÁn xóa:  Delete query  Open query  Append query  Make-table query
28.Truy vÁn nào trong các truy vÁn sau là truy vÁn bổ sung  Insert query  Update query  Append query  Make-table query
29.Truy vÁn nào trong các truy vÁn sau là truy vÁn tạo B¿ng:  New query  B¿ng query  Append query  Make-table query
30. Muốn tạo mới form bằng wizard trước hết trong cửa sổ Database, chọn Forms, nhÁn
New.Trong hộp thoại New Form chọn:  Form wizard  Design view  Datasheet  B¿ng
31. Muốn thiết kế form theo nhu c¿u trước hết trong cửa sổ Database, chọn Forms, chọn
New.Trong hộp thoại New Form sau ó ta tiếp tục chọn:  Form wizard  Design view  Datasheet lOMoARcPSD| 37922327  B¿ng
32. Muốn tạo mới một báo biểu trước hết tại cửa sổ Database ta chọn:  B¿ng  Form  Report  Module
33. Sau khi ã thưc hiện xong câu 32 muốn tạo Report á chế ộ Wizard ta chọn:  Design View  Report Wizard 
AutoReport: tabular Bài tÁp thực hành
Xây dựng chương trình qu¿n lý sinh viên Yêu c¿u về giao diện:
Sau khi thực hiện xong bài tập này bạn sẽ có một chương trình qu¿n lý tuy rÁt nhỏ, gọn
nhưng có ¿y ủ các chức năng: Nhập, xem dữ liệu, thực hiện các chức năng tìm kiếm, xóa
b¿n ghi, in các báo cáo. Khi chạy chương trình ta sẽ thÁy màn hình như sau:
- Các nút lệnh trên b¿ng chọn có các chức năng như sau:
- Khi nhÁn vào nút "Thoát khỏi Access" thì sẽ thoát khỏi Access và trá về Windows
- Khi nhÁn vào nút "Về cửa sổ Database" thì thoát khỏi b¿ng chọn, trá về cửa sổ
Database của Access. Từ cửa sổ này ta có thể tạo mới, sửa ổi các ối tượng.
- Khi nhÁn vào nút "Nhập danh sách khoa" ta thÁy cửa sổ sau xuÁt hiện: lOMoARcPSD| 37922327
- Trên cửa sổ này ta có thể nhập số liệu cho danh sách khoa: thêm mới, xóa, tìm kiếm...
- Khi nhÁn vào nút "Nhập danh sách sinh viên" ta thÁy xuÁt hiện cửa sổ:
- Khi nhÁn vào nút "Danh sách khoa" trong ph¿n "Xem và in báo cáo", ta thÁy xuÁt
hiện danh sách khoa trên màn hình và có thể in danh sách này khi nhÁn vào biểu tượng máy in.
- NhÁn vào nút "Danh sách sinh viên" trong ph¿n báo cáo ta thÁy xuÁt hiện b¿ng
danh sách sinh viên và có thể in tương tự như trên. lOMoARcPSD| 37922327
TÀI LIÞU THAM KHÀO [1]
Phạm Văn Àt, Hướng dẫn sử dụng Microsoft Access- Nhà xuÁt b¿n khoa học và kỹ thuật, 1997. [2]
Nguyễn Thiện Tâm, Giáo trình Microsoft Access 2000 - Nhà xuÁt b¿n Đại Học Quốc Gia TP.HCM, 2003. [3]
Phạm Thế Quế, Giáo trình Cơ sá dữ liệu- Nhà xuÁt b¿n Bưu Điện, 2004. [4]
Microsoft Access 2000: Buiding Application with Form and Report