Tải bản đầy đủ (.pdf) (130 trang)

GIÁO TRÌNH QUẢN TRỊ CƠ SỞ DỮ LIỆU ACCESS

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.21 MB, 130 trang )

TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Đôi lời về Access!
Microsoft Access: Access 2003, AccessXP, v.v.. là công c ụ quản trị cơ sở dữ liệu
(CSDL) quan hệ mạnh, được đánh giá rất cao hiện nay v ì: thứ nhất là dễ học, thứ 2 là
rất phổ dụng (trên 90% người làm Tin biết sử dụng nó - điều tra năm2006) và thứ 3 là
có nhiều cấp độ phù hợp với nhiều bậc khai thác khác nhau, v.v..
Tin học ứng dụng bao gồm 4 vấn đề được phân chia thành 4 học phần:
Học phần 1: Những khái niệm cơ bản, hệ điều hành Windows và Internet
Học phần 2: Hệ soạn thảo Word và trình diễn PowerPoint
Học phần 3: Bảng tính điện tử Excel
Học phần 4: Quản trị CSDL Access

Học 3 học phần đầu là để: Biết cách sử dụng được máy vi tính thông qua hệ điều h ành
Windows; Biết cách soạn thảo các văn bản có chất l ượng thông qua Word; Biết cách
thiết kế các trang trình diễn kết hợp với máy chiếu để tr ình bày trước đám đông thông
qua PowerPoint; Biết cách tổ chức dữ liệu v à xử lý các công việc tính toán thông qua
Excel. Vậy còn Access dùng để làm gì? Xin tạm thời nói vắn tắt ngay (bạn sẽ h ình
dung ra nó sau khi học ít bài đầu): Là để tạo ra một hệ thống thông tin (th ường là các
tệp) có mối quan hệ với nhau, c ùng mô tả một công việc, đồng thời xử lý chúng theo
những yêu cầu đặt ra trên nên của Quản trị CSDL Access có lập tr ình hoặc không.
Đã có rất nhiều sách viết về Access với nhiều cấp độ khác nhau mang mầu sắc bi ên
dịch, tây, ta đủ thứ, bạn đọc tha hồ tham khảo theo ý thích của m ình. Nhưng nếu bạn
chưa biết gì về quản trị cơ sở dữ liệu Access thì nên tham khảo giáo trình này bởi vì
mục đích của cuốn sách này là:

1. Tạo cho người học biết cách thiết kế một c ơ sở dữ liệu trong công việc của m ình.
2. Biết sử dụng những tính năng c ơ bản của Access để xử lý hệ thống CSDL đó.
3. Biết xử lý tự động thông qua lập tr ình trong Access.
Thường thì khi gặp một vấn đề mới người học hay hỏi:
1. Nội dung mới này là gì? (đối tượng được nghiên cứu)


2. Dùng nó để làm gì? (ứng dụng của đối tượng đó)
3. Hiểu và ứng dụng nó như thế nào? (chế ngự đối tượng đó)

Giáo trình này sẽ trả lời thoả đáng các câu h ỏi đó.
Ngoài ra giáo trình cũng đề cập đến một vấn đề có tính s ư phạm trong việc viết
các giáo trình Tin học ứng dụng. GS. H. Peter đ ã từng nói: “Đi từ quả táo rơi dẫn đến
định luật hấp dẫn nhẹ nh àng và dễ hiểu hơn là đi ngược lại”. Theo tinh thần đó, các
khái niệm trong giáo trình như: Quan hệ, Phụ thuộc hàm, Truy vấn, Form, Report,
Module, v.v... đều được mô tả bằng các ví dụ cụ thể, để các bạn có thể tự học tr ên máy
tính ngay cả khi không có giảng viên hướng dẫn.
Nội dung trong giáo trình này chạy được trên mọi phiên bản của Access đã có, đặc
biệt là Access 2003, Access XP, v.v..
Vì Access chứa đượng rất nhiều tính năng, nhất l à về lập trình, do vậy việc chọn lọc
nội dung trong quyển sách n ày không thể tránh khỏi thiếu sót về trật tự, liều l ượng và
cung cách thể hiện nội dung, mong các bạn góp ý v à lưỡng thứ, để quyển sau cập nhật
được tốt hơn.
Chúc các bạn thành đạt!
Hà nội ngày 28/12/2007
ELEC

Trang 1


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Chương 1: Làm quen với Access
1.1 Thế nào là một CSDL
Một CSDL là một tập các tệp được tổ chức cho một mục đích cụ thể n ào đó, một bộ phận lớn
và rất quan trọng trong tập các tệp n ày là tệp bảng. Tệp bảng là tệp có cấu trúc hai chiều: dòng
và cột. Người ta còn gọi dòng là bản ghi (Record), cột còn gọi là trường (Field). Ví dụ: để làm

công việc tuyển sinh Khối A, ta tổ chức 3 tệp bảng d ùng cho công tác tuyển sinh như sau:
Tệp thứ nhất có tên KhoiA(Khối AK) có dạng sau:

STT

SBD

Họ tên

Ngày sinh

1
2
3

A0001
Hoàng Xuân Nam
11/04/1986
A0002
Hồ Duy Anh
22/04/1988
A0003
Lê Văn Thảo
18/03/1989




...




4389 A4389
Hoàng Nam Thắng 14/12/1989
Tệp thứ 2 có tên DoiTuong (đối tượng) có dạng:

SBD

Khu vực

Địa chỉ
12 Hai Bà Trưng Hà Nội
20 Tràng Thi Hà Nội
Yên thành, Nghệ an


Tỉnh gia, Thanh hoá

Ưu tiên

A0001
1
2
A0002
2
1
A0003
2
9







A4389
3
3
Tệp thứ 3 có tên DiemThi (điểm thi) có dạng sau:

SBD

Điểm toán

Điểm lý

Điểm hoá

Tổng điểm

A0001
6.50
3.40
7.50
A0002
7.20
5.10
6.12
A0003
2.00

4.30
8.00
……



……



A4389
9.00
8.50
6.40
Một hệ thống gồm 3 tệp trên dùng để giải quyết vấn đề tuyển sinh M (tất nhiên là chưa đủ)
được gọi là một CSDL, tất nhiên còn những tệp khác nữa, ta sẽ nói sau.

1.2 Thế nào là một CSDL quan hệ?
Hãy quan sát 3 tệp trên, tuy về hình thức là 3 tệp riêng lẻ, nhưng giữa chúng có mối quan hệ
chặt chẽ. Giả sử một thí sinh đ ưa cho chúng ta một số báo danh (SBD) và yêu cầu chúng ta in
ra giúp họ thông tin về: Họ tên, Khu vực, Ưu tiên, Điểm toán, Điểm lý và Điểm hoá, thì
chúng ta phải làm như thế nào?
Rõ ràng chúng ta phải bám vào số báo danh (SBD) của tệp KhoiA (giả sử A0003) để lấy ra:
Lê Văn Thảo và tiếp tục xem số báo danh đó trong tệp DoiTuong để lấy ra Khu vực là 2 và
uu Tien là 9, cuối cùng lại tiếp tục căn cứa vào số báo danh đó trong tệp DiemThi để lấy ra
điểm toán là: 2.00, Điểm lý là: 4.30 và Điểm hoá là: 8.00. Như vậy nhờ có mối quan hệ giữa
các tệp thông qua SBD mà ta giải quyết được vấn đề trên. Ta nói rằng 3 tệp trên (hay nói tổng
quát là CSDL trên) là một CSDL quan hệ (hiện thời ta tạm hiểu “quan hệ” đ ơn giản như thế
ELEC


Trang 2


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

đã). Cơ sở dữ liệu quan hệ có thuật ngữ tiếng Anh l à Relational Database. Phần mềm nhờ nó
mà ta khai thác, xử lý, tổ chức các CSDL quan hệ, đ ược gọi là Quản trị CSDL (Relational
Database Management=RDM), và vì tính phong phú c ủa nó nên nhiều khi người ta cũng gọi là
hệ quản trị CSDL (RDMS). Access l à một hệ quản trị CSDL quan hệ rất mạnh.

1.3 Các đối tượng trong Access
Trong Access bao gồm một số đối tượng cơ bản như sau:

1.3.1 Bảng (Table)
Là đối tượng dùng để lưu dữ liệu. Một bảng bao gồm cột (hay c òn gọi là trường = Fields) và
hàng (hay còn gọi là bản ghi=Record). Hãy quan sát bảng sau:
STT Họ tên
Ngày sinh
Con Lương
Giới tính
Tiểu sử
?nh

1
2
3

Lê Văn Lan
Hồ Thị Hoa
Lê Anh Thu


11/10/76
12/04/70
01/02/79

2
1
0

$1400
$1640
$1300

Nam
Nữ
Nam





….
….
….

Bảng trên có 8 trường bao gồm: STT, Họ tên v.v.. (là tên trường), sau đây là một số quy định:
1. Tên trường
Để có thể lưu tệp vào đĩa, tên tệp cũng như tên trường phải được tạo ra theo quy tắc sau:
 Tên có thể chứa các ký tự chữ cái, chữ số, dấu cách v à các ký tự đặc biệt. Trừ ký tự dấu
chấm ( . ), dấu than (!), mở móc ([ ) v à đóng ( ])

 Tên không được bắt đầu bằng dấu cách.
Ta có thể viết lại cho đúng tên Trường của bảng trên như sau:
STT HoTen
NgaySinh
Con Luong
GioiTinh
TieuSu
Anh

1
2
3

Lê Văn Lan
Hồ Thị Hoa
Lê Anh Thu

11/10/76
12/04/70
01/02/79

2
1
0

$1400
$1640
$1300

Nam

Nữ
Nam





….
….
….

2. Kiểu trường
ở trên ta thấy:
 Trường STT có kiểu là số thứ tự nguyên dương (AutoNumber): 1, 2, 3..
 Trường HoTen có kiểu là văn bản (Text): Lê Văn Tài, Hồ Thị Lan v.v..
 Trường NgaySinh có kiểu là ngày /giờ (Date/Time): 19/03/77 v.v..
 Trường Con có kiểu số (Number): 2, 1, 0, v.v..
 Trường Luong có kiểu số, đặc trưng cho tiền tệ (Currency): $1400, $1640, $1300, v.v..
 Trường GioiTinh có kiểu Logic (Yes/No-đúng/sai): Khi nhập vào sẽ có một dấu kiểm
 ứng với đúng và không kiểm  ứng với sai (bạn cũng có thể khai bao kiểu Text, ví
dụ:Nam/ nu).
 Trường TieuSu có kiểu Memo (ghi nhớ tiểu sử của đ ương sự, có thể rất dài, thực chất là
văn bản).
 Trường Anh có kiểu là hình ảnh, đồ thị, bảng tính hoặc đối t ượng khác trong môi trường
Windows có hỗ trợ OLE (nhúng và nối kết đối tượng).
3. Thuộc tính trường
Trường còn có những thuộc tính sau:
a. Field Size: Độ dài của trường; dùng để xác định độ dài (số ký tự) tối đa của trường Text
và Number
b. Format: Định dạng; dùng để xác định cung cách hiển thị dạn g số tiền tệ về việc sử dụng

dấu phẩy, dấu chấm, dấu %, dạng dấu phẩy động hay ký tự tiền tệ nh ư thế nào, ví dụ:
$123, 345.56, 123.56%, 123.56E+02 v.v ..
ELEC

Trang 3


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

c. Decimal Places: xác định số chữ số thập phân, có thể chọn tự động hay 0,1,2,3,4, 5.. chữ
số sau dấu phẩy thập thân.
d. Input Mask: khuôn nạ nhập liệu. Ví dụ như dùng khuôn nạ … /…/… để nhập ngày
tháng năm, v.v...
e. Caption: Tiêu đề, có thể nhập vào một tên trường đầy đủ để về sau gắn v ào nhãn trên
biểu mẫu và các tiêu đề đầu của báo cáo.
f. Default Value: Giá trị mặc định. Dùng để quy định một giá trị mặc định cho các loại dữ
liệu trừ loại Counter, Memo v à OLE Object. Nếu không quy định lại th ì giá trị mặc định
của số là 0; của Memo và text là Null.
g. Validation Rule: Quy tắc hợp lệ. Dùng để kiểm tra dữ liệu nhập v ào. Ví dụ ta đặt biểu
thức: <500 có nghĩa khi nhập liệu các số chỉ đ ược phép nhỏ hơn 500; hay đặt “Hà nội”
OR “Đà nẵng" OR “Huế” để kiểm tra dữ liệu nhập v ào có phải là một trong 3 thành
phố đó hay không.
h. Validation Text: Hãy gõ vào đây một thông báo, để khi nhập dữ liệu, nếu không thoả
mãn điều kiện của Validation Rule thì sẽ hiển thị thông báo đó.
i. Required: Nếu thiết lập thuộc tính n ày là Yes thì trường này không được phép có giá trị
Null.
j. Allow Zero Length: Đối với trường Text hoặc Memo, thuộc tính n ày cho phép có thể
đặt giá trị của trường bằng một xâu ký tự có độ d ài bằng Zero hay bằng không (“ “). Xâu
có độ dài Zero và giá trị Null không giống nhau.
k. Indexd: Nếu đặt giá trị là Yes thì trường đó được tạo chỉ mục để tìm kiếm nhanh hơn.

Muốn gỡ bỏ hãy đặt lại No.

1.3.2 Truy vấn (Query)
Là đối tượng trích rút từ bảng theo những điều kiện nhất định, Query cũng l à tệp có dạng
bảng.

1.3.3 Biểu mẫu (Form)
Là đối tượng được thiết kế để nhập hoặc hiển thị dữ liệu

1.3.4 Báo cáo (Report)
Là đối tượng được thiết kế để định quy cách, tính toán, in v à tổng hợp dữ liệu được chọn.

1.3.5 Macro
Là đối tượng định nghĩa một hoặc nhiều h ành động (thao tác) mà Access sẽ thực hiện một lần
khi chạy.

1.3.6 Module
Là đối tượng chứa các thủ tục được lập trình bằng Access Basic để xử lý tự động.
Chú ý: Bạn sẽ làm quen với Table, Query, Form, Report, Macro v à Module ở những phần sau.

1.4 Khởi động Access
Cung cách khởi động Access cũng giống nh ư khởi động Word, nếu sử dụng nút Start thì:
 Khởi động Windows
 Kích vào nút Start
 Di chuyển trỏ chuột đến Program, một Menu con xuất hiện
 Nếu thấy Microsoft Access, hãy kích vào nó, nếu không hãy di chuyển trỏ chuột đến
Microsoft Office, một Menu con nữa xuất hiện và kích vào Microsoft Access.

1.5 Thoát khỏi Access.
1. Từ thanh MENU chọn File/Exit hoặc

2. kích nút Close: trên thanh tiêu đề hoặc
3. Gõ Alt + F4
ELEC

Trang 4


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Chương 2: Thiết kế và cài đặt một CSDL
2.1 Thiết kế các bảng và xác định mối quan hệ
Bảng là đối tượng đầu tiên cần phải tạo trước khi tạo ra những đối t ượng khác, do vậy việc
thiết kế các bảng trong một CSDL phải bảo đảm một số quy tắc nhất định để CSDL có tính
hợp lý trong lưu trữ và xữ lý về sau. Ta hãy tuần tự xét một số yếu tố sau.

2.1.1 Đặt vấn đề
Trong một xí nghiệp, hàng ngày người ta xuất vật tư theo phiếu xuất kho sau:
Phiếu xuất kho
Phiếu xuất
P1
P2
P3
P4

Ngày xuất
02/03/07
12/03/07
15/03/07
22/03/07


Người nhận hàng
Lê Thị Nhung
Lê Thị Nhung
Lê Anh Quân
Lê Thị Nhung

Địa chỉ
35 Tràng Thi
35 Tràng Thi
13 Hàng bài
35 Tràng Thi

Mã vật tư 1
M1
M1
M1

Mã vật tư 2
M2
M2
M2

Ta thấy cấu trúc bảng trên có những điều không hợp lý nh ư sau:
 Cùng một người nhận vật tư, nhưng ở phiếu khác thì ta phải ghi lặp lại tên và địa chỉ của
họ.
 Nếu có thêm vật tư M3, M4, v.v.. thì cấu trúc trên bị thiếu cột, nghĩa là cấu trúc trên
không phù hợp nữa, mặt khác rất lãng phí để ghi tên trường mã vật tư.
Cho nên vấn đề đặt ra là phải thiết kế lại bảng đó sao cho hợp lý h ơn. Thật ra để thiết kế các
bảng có liên quan với nhau một cách tốt nhất trong một CSDL l à kiến thức sâu sắc của lý
thuyết về CSDL (đại số quan hệ) , nhưng ở đây ta chỉ dùng trực giác để xây dựng một cách

tương đối, đáp ứng nhu cầu ứng dụng ngay của Access m à thôi.

2.1.2 Một số quy tắc về xây dựng CSDL
Quy tắc 1: Mỗi trường trong bảng phải mô tả một loại thông tin duy nhất.
Ta thấy ba trường (mã vật tư 1, mã vật tư 2) của bảng trên, cùng mô tả một loại thông tin là
mã vật tư. Do đó ta nên tổ chức một cột Mã Vật Tư chứa đựng cho mọi loại vật t ư, cụ thể ta
sửa lại bảng trên thành bảng sau:
Phiếu xuất kho
Số phiếu
Ngày xuất
Người nhận
Địa chỉ người nhận
Mã vật tư
P1
02/03/07
Lê Thị Nhung
35 Tràng thi
M1
P1
02/03/07
Lê Thị Nhung
35 Tràng thi
M2
P2
12/03/07
Lê Thị Nhung
35 Tràng thi
M2
P3
15/03/07

Lê Anh Quân
13 Hàng bài
M1
P3
15/03/07
Lê Anh Quân
13 Hàng bài
M2
P4
22/03/07
Lê Thị Nhung
35 Tràng thi
M1
Đến đây ta thấy “được cái nọ” (giảm số trường) thì lại “mất cái kia” (thêm bản ghi), quá trình
nào mà chẳng như vậy! Nhưng ở đây rồi ta sẽ thấy “được” nhiều hơn, hiện tại “được” là giảm
số trường còn nhiều bản ghi thì ta sẽ cải tiến sau.
Quy tắc 2: Mỗi bản ghi có một số trường tối thiểu, nhờ nó mà không có các bản ghi trùng
nhau. (số trường tối thiểu đó gọi là khoá cơ bản)
Ví dụ một bảng bao gồm: Họ tên, Ngày sinh, khối thi. Với bảng này tất sẽ có thí sinh trùng
tên, trùng ngày sinh và cả trùng khối thi, do đó không hợp với quy tắc 2. Nhưng nếu thêm
trường STT hoặc trường Mã thí sinh là có thể phù hợp với Quy tắc 2.

ELEC

Trang 5


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Mã thí sinh

Họ tên
Ngày sinh
Thi khối
00001
Lê Thị Dung
12/03/1976
A
00002
Hoàng Lan Phương
11/11/1978
B
00003
Lê Thị Dung
12/03/1976
A
Nhờ trường (Mã thí sinh) mà bản ghi 1 và 3 là khác nhau. Ta gọi trường Mã thí sinh là trường
khoá. Bảng phiếu xuất kho ở trên khoá cơ bản là gì? Rõ ràng là trường Số phiếu và Mã vật tư.
Quy tắc 3: (Các trường trong bảng phải đầy đủ v à liên quan đến khoá cơ bản hay còn
gọi là liên quan đến chủ thể của bảng (điều này được gọi là phụ thuộc hàm)

Theo quy tắc trên có nghĩa là phải đạt 2 yêu cầu:


Yêu cầu thứ nhất là phải đầy đủ các trường, ví dụ bảng phiếu xuất kho có khoá c ơ bản là
(Số phiếu và Mã vật tư) phải là của ai? (Họ tên), ngày nào xuất (Ngày xuất) v.v.. nếu thiếu
một trong những trường đó thì chủ thể (xuất kho) không có ý nghĩa.
 Yêu cầu thứ hai là các trường đó phải liên quan đến khoá cơ bản, ví dụ ta không nên thêm
trường (bậc lương người nhận) vì điều đó không liên quan đến chủ thể xuất kho (ta gọi là
không phụ thuộc hàm), vì vậy mà bảng trên nên tách thành 2 bảng sau:
Phiếu kho

Số phiếu
Ngày xuất
Người nhận
Địa chỉ
P1
02/03/07
Lê Thị Nhung
35 Tràng thi
P2
12/03/07
Lê Thị Nhung
35 Tràng thi
P3
15/03/07
Lê Anh Quân
13 Hàng bà
P4
22/03/07
Lê Thị Nhung
35 Tràng thi
Vật tư

Số phiếu

Mã vật tư

P1
M1
P1
M2

P2
M2
P3
M1
P3
M2
P4
M1
Quy tắc 4: Có thể thay đổi được một trường bất kỳ (trừ các khoá c ơ bản) mà không ảnh
hưởng đến mọi trường khác.
Ở bảng Phiếu kho, nếu ở dòng 1 ta “vô tình” gõ tên ng ười nhận là Lê Anh Quân (đáng lý là
Lê Thị Nhung) thì sẽ dẫn đến thêm một sai lầm nữa ở trường Địa chỉ vì Lê Anh Quân không ở
35 Tràng Thi. Thực ra Địa chỉ là phụ thuộc hàm vào Người nhận. Do đó nên tách bảng Phiếu
kho thành 2 bảng: Phiếu và Địa chỉ như sau:
Phiếu

Số phiếu
P1
P2
P3
P4

Ngày xuấtN

02/03/07
12/03/07
15/03/07
22/03/07
Người nhận


Người nhận
Lê Thị Nhung
Lê Thị Nhung
Lê Anh Quân
Lê Thị Nhung

Người nhận

Địa chỉ

Lê Thị Hoa
Lê Anh Quân

35 Tràng thi
13 Hàng bài

ELEC

Trang 6


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Ta kiện toàn bảng Người nhận thật chính xác, sau đó nếu có nhỡ v ào “Lê Anh Quân” thay vị
trí “Lê Thị Nhung“ ở bảng Phiếu thì địa chỉ Lê Anh Quân vẫn không thay đổi.

2.1.3 Các bảng được xây dựng (trong một chủ thể) phải có mối quan hệ
Nếu ta thiết kế tốt thì các bảng đó sẽ có mối quan hệ, nhờ mối quan hệ đó m à ta lần ra kết quả
khi có yêu cầu. Ví dụ ở bảng Phiếu, Vật tư và Địa chỉ, nếu có yêu cầu là hãy xem số phiếu
P3 xuất vào ngày nào, ai nhận, họ ở đâu và có những mặt hàng nào?

 Bước 1: Tìm P3 ở bảng Phiếu biết được ngày xuất là: 15/03/99 và người nhận là: Lê Anh
Quân
 Bước 2: Tìm Lê Anh Quân ở bảng Người nhận để biết địa chỉ là: 13 Hàng bài
 Bước 3: Tìm P3 ở bảng Vật tư để biết mặt hàng là: M, M2
Như vậy bảng kết quả (truy vấn hay vấn tin) sau:
Vấn tin

Số phiếu
P3
P3

Ngày xuất
15/03/07
15/03/07

Người nhận
Lê Anh Quân
Lê Anh Quân

Địa chỉ
13 Hàng bài
13 Hàng bài

Mã vật tư
M1
M2

Nhờ các trường: Số phiếu, Người nhận mà ta tìm ra kết quả bảng Vấn tin trên, ta nói rằng hai
trường đó là khoá liên kết ngoài (Foreign key)


2.1.3.1 Quan hệ 1:n

Quan hệ 1: n là quan hệ mà mỗi bản ghi bất kỳ trong bảng thứ nhất có quan hệ với nhiều bản
ghi trong bảng thứ hai. Ví dụ bảng Phiếu và bảng Vật tư là quan hệ 1: n, nghĩa là một phiếu
xuất kho có thể có nhiều vật t ư; hay bảng Người nhận và bảng Phiếu là quan hệ 1: n bởi vì
một người nhận hàng có thể xuất hiệu trong nhiều phiếu.

2.1.3.2 Quan hệ 1:1

Quan hệ 1: 1 là quan hệ mỗi bản ghi bất kỳ trong bảng thứ nhất có quan hệ với 1 bản ghi trong
bảng thứ 2. Ví dụ ta không muốn bảng Người nhận xuất hiện trường Đạo đức của họ, nên ta
tổ chức các bảng Người nhận là Người nhận 1 và Đạo đức như sau: (Bảng Đạo đức giữ “bí
mật” chẳng hạn)
Người nhận 1

Mã người nhận
00001
00002

Người nhận
Lê Thị Nhung
Lê Anh Quân

Địa chỉ
35 Tràng thi
13 Hàng bài

Đạo đức
Mã người nhận
Đạo đức

00001
Tốt
00002
Có tiền án
Hai bảng trên có quan hệ 1:1

2.2 Cài đặt một bảng lên đĩa thông qua Access
Giả sử có một cưả hàng một ngày (ngày 14/12/07 chẳng hạn) có bản thống kê bán hàng trong
ngày đó như sau:
Ngày
Mã mặt Tên hàng Đơn giá
Số lượng
Tổng tiền
Đã thanh
hàng
(đồng)
trong ngày
toán
14/04/07 M1
Radio
1000000
2
15000000
10000000
M2
Tủ lạnh
4000000
1
M3
Ti vi

3000000
3
Ta xây dựng một bảng cho 3 ngày bán hàng như sau:
ELEC

Trang 7


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Bán hàng
STT
1
2
3
4
5
6
7

Ngày
tháng
14/12/07
14/12/07
14/12/07
15/12/07
15/12/07
16/12/07
16/12/07


Mã Mặt
hàng
M1
M2
M3
M1
M2
M2
M3

Tên hàng
Radio
Tủ lạnh
Ti vi
Radio
Tủ lạnh
Tủ lạnh
Ti vi

Đơn giá
1000000
4000000
3000000
1000000
4000000
4000000
3000000

Số
lượng

2
1
3
1
1
2
3

Tổng tiền
trong ngày
15000000
15000000
15000000
6000000
6000000
17000000
17000000

Đã thanh
toán
10000000
10000000
10000000
4000000
4000000
7000000
7000000

Ta thấy khoá cơ bản là STT. Như đã phân tích ở trên, ta không lưu bảng này mà tách thành 4
bảng sau:

Bảng thứ nhất có tên là Số lượngB: Tên tệp là SoLuong
Số lượng
STT
1
2
3
4
5
6
7

Ngày tháng
14/12/07
14/12/07
14/12/07
15/12/07
15/12/07
16/12/07
16/12/07

Mã mặt hàng
M1
M2
M3
M1
M2
M2
M3

Số lượng (Cái)

2
1
3
1
1
2
3

Khoá cơ bản là Số thứ tự (STT)
Bảng thứ 2 có tên là Doanh sốB: Tên tệp là DoanhSo
Doanh số
Ngày tháng
Tổng tiền trong ngày
Đã thanh toán
14/12/07
15000000
10000000
15/12/07
6000000
4000000
16/12/07
17000000
7000000
Khoá cơ bản là Ngày tháng
Bảng thứ 3 có tên Loại hàng tên tệp là: LoaiHang
Loại hàng
Mã mặt hàng
Tên hàng
M1
Radio

M2
Tủ lạnh
M3
Ti vi
Khoá cơ bản là Mã mặt hàng
Bảng thứ 4 có tên DơnGia
Đơn giá
Tên hàng
Đơn giá
Radio
1000000
Tủ lạnh
4000000
Ti vi
3000000
Khoá cơ bản là: Tên hàng
Sau khi thiết kế các bảng có mối quan hệ trong một CSDL nh ư trên, việc tiếp theo là cài chúng
lên đĩa thông qua Access như thế nào? sau đây là trình tự các bước:
Bước 1: Khởi động Access, giao diện sau xuất hiện:
ELEC

Trang 8


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Chọn Create a new file, ta có hộp thoại:

Bước 2: Chọn Bank Database
Gõ tên CSDL ở File Name là BanHang và chọn Create sau đó hộp thoại có dạng:


Hãy chọn tables và New, sau đó hộp thoại sau xuất hiện:

ELEC

Trang 9


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Ta thấy trên hộp thoại xuất hiện các th ành phần:
 Datasheet View : Trưng diện bảng dữ liệu
 Design View
: Tạo cấu trúc bảng
 Table Wizard : Tạo từ tệp có sẵn
 Inport Table
: Tạo từ việc Import
 Link Table
: Tạo từ liên kết
Nhiệm vụ của chúng ta là tạo cấu trúc bốn bảng: SoLuong, DoanhSo, LoaiHang v à DonGia.
Do đó hãy chọn Design View ta có:

Ở dòng 1 ứng với cột Field Name gõ vào: Stt và gõ Enter hoặc gõ mũi tên phải, sau đó ở cột
Data Type hãy kích vào mũi tên xuống để chọn kiểu dữ liệu, ở đây ta chọn Autonumber (vì
dữ liệu là 1, 2, 3.v.v..), như hình sau:

ELEC

Trang 10



TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Tiếp tục ở dòng 2 ứng với cột Field Name gõ vào tên trường: Ngay_Thang và gõ mũi tên
phải, sau đó kích vào mũi tên xuống để chọn kiểu dữ liệu, ở đây ta chọn Date/Time. Tiếp đến
chọn Format và chọn Short Date (kiểu ngày / tháng / năm), không ch ọn Input Mask (vì dữ
liệu Date /Time đã được chuẩn hoá không cần khuôn nhập liệu), không chọn các mục sau đó.
Ở dòng 3 ứng với cột Field Name gõ vào tên trường: Ma_Mat_Hang và gõ Enter hoặc mũi
tên phải, sau đó kích vào mũi tên xuống để chọn kiểu dữ liệu, ở đây ta chọn Text, tiếp đến
chọn Field Size để gõ vào độ dài (ở đây ta chọn Interger).
Ở dòng 4 ứng với mũi tên phải gõ vào tên trường: So_Luong và gõ Enter hoặc mũi tên phải,
sau đó kích vào mũi tên xuống để chọn kiểu dữ liệu, ở đây ta chọn Number, tiếp đến chọn
Field Size để gõ vào độ dài (ở đây ta chọn Interger). Sau khi đưa xong các chọn File /Close và
Access hỏi:

Hãy chọn Yes và gõ tên tệp: SoLuong vào Table Name như hình sau:

Hãy chọn OK để kết thúc. Như vậy ta đã tạo xong cấu trúc cho bảng SoLuong. Hãy chọn
File/Close để tạo cấu trúc cho bảng DoanhSo, sau đó lại tiếp tục cho bảng LoaiHang và
Dongia. Sau khi gõ xong cấu trúc 4 tệp trên ta có hình sau:

Việc tiếp theo là nạp dữ liệu vào cấu trúc các bảng trên, giả sử ta nạp dữ liệu cho bảng
Soluong:
Chọn bảng Coluong và chọn Open, ta có:

ELEC

Trang 11



TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Gõ ngày tháng vào trường Ngay_Thang, gõ M1 vào trường Ma_Mat_Hang và gõ mũi tên
phải, con trỏ chuyển sang tr ường So_Luong, gõ vào 2 và Enter, lại tiếp tục như vậy cho đến
hết. Gõ xong ta có:

Để kết thúc hãy chọn § ile/Close, sau đó mở bảng khác để vào dữ liệu như trên.

2.3 Thiết lập mối quan hệ
Bốn bảng trên (DoanhSo, Soluong, Loaihang và DonGia) có các trư ờng:
 Ngay_Thang (của DoanhSo) quan hệ với Ngay _Thang (của SoLuong)
 Ma_Mat_Hang (của SoLuong) quan hệ với Ma_Mat_Hang (của LoaiLang)
 Ten_Hang (của LoaiHang) quan hệ với Ten _Hang (của DonGia)
 Ta thiết lập các mối quan hệ đó để về sau d ùng đến như sau:
Kích vào nút
(nút Relationships) trên thanh công c ụ sau đó ta có hộp thoại:

Sau đó thao tác:
 Chọn tệp DoanhSo và kích Add
 Chọn tệp SoLuong và kích Add
 Chọn tệp LoaiHang và kích Add
 Chọn tệp DonGia và kích Add
 Cuối cùng kích vào Close và ta có hộp thoại:

ELEC

Trang 12


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI


Hãy thiết kế mối quan hệ bằng cách:
 Kích vào trường Ngay_Thang (của DoanhSo) kéo vào trường Ngay_Thang (của SoLuong)
sau đó hộp thoại sau hiện ra:





Hãy chọn Create.
Kích vào trường Ma_Mat_Hang (của SoLuong) kéo v ào trường của Ma_Mat_Hang (của
LoaiHang) và chọn Create
Kích vào trường Ten _Hang (của LoaiHang) kéo vào trường Ten _Hang (của DonGia) v à
chọn Create, cuối cùng ta có hình ảnh:

Muốn xoá mối quan hệ, hãy kích vào đường quan hệ và gõ phím Delete.

2.4 In một bảng
Để in một bảng ta thao tác sau:
 Chọn bảng (giả sử ta chọn bảng SoLuong) và chọn Open, ta có hộp thoại:

ELEC

Trang 13


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI





Chọn File/Page Setup, chọn Margins để cài đặt lề (trên, dưới, traí, phải) chọn Page để
chọn hướng in và kích cỡ giấy.
Chọn File/Print ta có hộp thoại in như sau:

Hãy chọn những thông số in thích hợp (All hoặc từ trang nào đến trang nào v.v..) cuối cùng
chọn OK để in.
Câu hỏi và bài tập (chương 1,2)
1. CSDL là gì?
2. Khoá cơ bản là gì?
3. Nêu những nguyên tắc thiết kế CSDL?
4. Access có những đối tượng nào?
5. Một bảng bao gồm những yếu tố nào?
6. Trường có những thuộc tính n ào, cho biết một số thuộc tính?
7. Hãy khởi động Access?
8. Hãy tự thiết kế 2 bảng sau:
Bảng 1B: có tên Lop bao gồm:
Mã sinh viên, Họ đệm, Tên, Ngày sinh
Bảng 2B: có tên Diem bao gồm:
Mã sinh viên, Điểm toán, Điểm lý, Điểm hoá
Hãy tạo cấu trúc bảng và nạp dữ liệu cho bảng
9. Thiết kế mối quan hệ 2 bảng ở bài 8
10. Hãy bỏ mối quan hệ ở bài 9
11. Với câu 8 hãy thêm một bảng Đạo đức gồm: M ã sinh viên, Hạnh kiểm. Hãy thiết lập
mối quan hệ giữa 3 bảng đó.

ELEC

Trang 14



TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Chương 3: Sửa cấu trúc và sửa dữ liệu bảng
Một bảng dù thiết kế cẩn thận đến đâu, sau một thời gian ta vẫn thấy cần có sự thay đổi về
cấu trúc cũng như dữ liệu của bảng, ví dụ như:
 Đổi tên trường
 Thêm, bớt một số trường
 Thay đổi kiểu trường
 Thay đổi độ dài trường
 Thay đổi vị trí các trường
 Chèn thêm bản ghi
 Xoá bớt bản ghi
 Cập nhật dữ liệu mới
 v.v...
Sau đây chúng ta nói về cung cách sửa cấu trúc v à sửa dữ liệu của tệp bảng đó.

3.1 Sửa cấu trúc bảng
Hãy mở bảng (giả sử bảng SoLuong) ở dạng Design, sau đó ta có hình ảnh sau:

3.1.1 Thay đổi tên trường



Kích vào tên trường cần sửa, để đưa trỏ text đến đó
Sau đó gõ tên trường mới vào

3.1.2 Chèn thêm trường





Kích vào tên trường cần sửa, để đưa trỏ text đến đó
Chọn Insert/Rows, sau đó dòng đó trống
Gõ tên trường cần chèn vào, đồng thời xác định kiểu v à độ dài trường luôn.

3.1.3 Xoá tên trường



Chọn trường bằng cách kích chuột vào đầu dòng đó (khi trỏ chuột biến thành mũi tên
phải), hoặc đưa trỏ text về trường đó
Chọn Edit/Delete Rows, sau đó hộp thoại hiện ra:

ELEC

Trang 15


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI



Nếu định xoá thật hãy kích vào Yes, nếu không kích vào No

3.1.4 Thay đổi kiểu dữ liệu trường
Khi dữ liệu từ một kiểu này được thay đổi thành kiểu dữ liệu khác, Access sẽ xử lý theo các
nguyên tắc sau:
1. Chuyển từ text sang các kiểu sau :
 Memo: Access sẽ xoá các chỉ mục của trường text

 Number: văn bản phải chỉ chứa các ký số, dấu thập phân và dấu phân cách hợp lệ
 Date/Time: Văn bản có dạng ngày mà máy có thể nhận dạng được, ví dụ 12-Dec97 7:23PM v.v..
 Currency: Văn bản chỉ chứa các số và dấu phân cách hợp lệ.
 Counter: Không thể được nếu trường đã có dữ liệu
 Yes/No: Văn bản phải là một trong các giá trị sau: Yes, No, True, False, On, Off
2. Chuyển từ Memo sang kiểu sau:
 Text: Access sẽ cắt bỏ phần văn bản dài quá 255 ký tự
 Number: Văn bản Memo phải chỉ chứa cá c số và dấu phân cách hợp lệ
 Date/Time: Văn bản Memo phải chứa các giá trị có thể nhận dạng đ ược, ví dụ: 9Nov-96 11:23PM
 Currency: Văn bản Memo chỉ chứa các số v à dấu phân cách hợp lệ, ví dụ $
1,234,340.50
 Counter: Không đổi được nếu trường đã có dữ liệu
 Yes/No: Văn bản phải là một trong các giá trị sau: Yes, No, True, False, On, Off
3. Chuyển từ Number sang các kiểu sau :
 Text: Không hạn chế
 Memo: Không hạn chế
 Date/Time: Số phải nằm trong vùng hợp lệ
 Currency: Không hạn chế
 Counter: Không được nếu trường đang chứa dữ liệu
 Yes/No: Giá trị Null hoặc Zero chuyển th ành No, còn giá trị khác thành yes.
4. Chuyển từ Date/Time sang các kiểu sau:
 Text: Không hạn chế
 Memo: Không hạn chế
 Number: Không hạn chế
 Currency: Không hạn chế
 Counter: Không được nếu trường đang chứa dữ liệu
 Yes/No: 12 : 00 : 00 AM hoặc Null đổi thành No, các giá trị khác thành Yes
5. Chuyển từ Currency sang các kiểu sau:
 Text: Không hạn chế
 Memo: Không hạn chế

 Number: Được nhưng phải phù hợp với độ lớn
 Date/Time: Phải phù hợp với độ lớn
 Counter: Không được, nếu trường đang chứa dữ liệu
 Yes/No: Zero và null sẽ bằng No, còn lại bằng Yes
6. Chuyển từ Counter sang các kiểu sau:
 Text: Không hạn chế
 Memo: Không hạn chế
 Number: Không hạn chế
ELEC

Trang 16


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

 Date/Time: Giá trị phải trong khoảng phù hợp
 Counter: Không hạn chế
 Yes/No: Tất cả để bằng Yes
7. Chuyển từ Yes /No sang các kiểu sau:
 Text: chuyển thành chữ “Yes” hoặc “No”
 Memo: chuyển thành chữ “Yes” hoặc “No”
 Number: No=0; Yes=1
 Date/Time: No=12:00 00AM; Yes=12/29/1899
 Currency: No=0; Yes=$1
 Counter: Không chuyển được
8. Thay đổi độ dài dữ liệu
Trường văn bản có độ dài cực đại là 255, nhưng cũng có thể ngắn 1 ký tự. Nếu độ d ài của
trường văn bản không được quy định thì Access sẽ gán độ dài mặc định là 50, khi đã quy định
độ dài cho trường thì không được phép nhập vào độ dài lớn hơn. Độ dài của trường số thì theo
kiểu số nào: Byte, Integer v.v..

9. Lỗi chuyển đổi
Khi lưu cất một bảng đã sữa đổi, Access có thể thông báo lỗi n ếu quá trình chuyển đổi có gây
lỗi, ví dụ chuyển từ Integer sang Byte, nếu số nguy ên >255 thì sẽ gây lỗi, tuỳ ý định cuả ta m à
kích vào Yes hay Cancel của hộp thoại thông báo lỗi.

3.1.5 Tách một bảng
Sau khi làm việc một thời gian ta nhận thấy có một số tr ường thực ra không dùng đến hoặc ít
dùng đến, nếu ta tách thành một bảng mới không có các tr ường đó thì có khi xử lý bảng nhanh
hơn, việc làm đó có thể thực hiện đơn giản bằng cách:
 Sao thêm một bảng mới từ bảng cần tách
 Mở bảng mới ở chế độ Design và xoá đi những trường không cần đến
 Thiết lập lại các quan hệ nếu cần

3.2 Thao tác và sữa dữ liệu trong bảng
Để làm việc với bảng trước hết ta hãy mở bảng đó bằng cách:
 Mở CSDL
 Kích đúp vào bảng cần làm việc, sau đó bảng xuất hiện ở dạng Datasheet:

3.2.1 Một số thao tác
1. Di chuyển trong bảng
ởëgóc dưới bên trái cửa sổ Datasheet là hộp số hiệu bản ghi. Hãy kích chuột vào đó và gõ vào
một số hiệu bản ghi (ở trên ta đã gõ số 6) để đưa con trỏ bản ghi về bản ghi đó, phía bên phải
hộp số hiệu bản ghi là tổng số bản ghi (ở trên là số 7-bảy bản ghi):
ELEC

Trang 17


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI


Một số phím gõ tắt hay dùng như sau:
PgUp
: Lên một trang
PgDn
: Xuống một trang
Ctrl + PgUp : Sang trái một trang
Crtl + PgDn : Sang phải một trang
Tab
: Trường tiếp theo
Shift + Tab : Trường đứng trước
Home
: Trường đầu tiên của bản ghi hiện thời
End
: Trường cuối cùng của bản ghi hiện thời

: lên một bản ghi

: Xuống một bản ghi
Ctrl +  : Về bản ghi đầu tiên
Crtl +  : Về bản ghi cuối cùng
Crtl + Home : Về đầu giá trị của trường
Crtl + End : Về cuối giá trị cảu trường
2. Thay đổi chiều cao hàng
 Chọn hàng cần thay đổi
 Chọn Format/Row Height sau đó ta có hộp thoại:

 Gõ số đó vào Row Height và chọn OK
3. Thay đổi độ rộng cột
 Chọn cột cần thay đổi
 Chọn Format/Column Width:




Gõ số đo vào Column Width và chọn OK
4. Giấu và hiện các cột
 Chọn cột cần giấu
 Chọn Format/Hide Columns
ELEC

Trang 18


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

 Muốn hiện lại hãy chọn Format/Unhide Columns sau đó:

 Đặt dấu kiểm vào tên trường cần hiện lại (Mat_Vat_Tu) v à chọn Close
5. Cố định các cột trên màn hình
Một bảng có thể có rất nhiều cột, nhiều khi ta muốn cố định một số cột trên màn hình để quan
sát trong khi vẫn cứ dịch trái, phải mà các cột đó vẫn còn. Ta thao tác như sau:
 Chọn các cột đó
 Chọn Format/Freeze Columns
 Muốn không cố định nữa hãy chọn Format/Unfreeze All Columns
6. Chọn phông chữ
 Chọn chữ cần đặt lại phông
 Chọn Format/Font
 Chọn Font, Font Style, Size v à OK

3.2.2 Sửa đổi dữ liệu trong bảng
1. Thêm một bản ghi

 Chọn Insert/New Record sau đó con trỏ bản ghi trở về cuối bảng
 Gõ bản ghi mới vào
2. Xoá bản ghi
 Chọn bản ghi cần xoá
 Chọn Edit/Delete Record sau đó hộp thoại hiện ra và xác nhận Yes nếu định xoá, hoặc
No nếu không xoá
3. Sửa dữ liệu
Dịch trỏ Text đến dữ liệu cần sửa v à sửa lại
4. Thay thế dữ liệu
Khi sữa giống nhau trong nhiều bản ghi ta n ên chọn chế độ thay thế dữ liệu.
 Chọn ô đầu tiên của trường cần sữa và chọn tiếp Edit /Replace sau đó ta có hộp thoại:

 Gõ nội dung cần tìm vào Find What: (giả sử M3g)
 Gõ nội dung cần thay thế vào Replace With: (giả sử M7)
 Chọn Replace All (nếu muốn thay thế tất cả) v à chọn Close

3.2.3 Sắp xếp dữ liệu
1. Sắp xếp đơn giản một trường ta làm như sau:
ELEC

Trang 19


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Chọn trường cần sắp xếp
Kích vào nút

trên thanh công cụ nếu muốn sắp xếp tăng dần


Kích vào nút
trên thanh công cụ nếu muốn sắp xếp giảm dần
2. Sắp xếp theo nhiều trường
 Chọn Records/Filter/Advanced Filter/Sort như hình sau:






Đặt chế độ sắp xếp ở dòng Sort



Chọn Filter/Apply Filter/Sort như hình sau

Sau đó ta có hộp thoại:

Mở danh sách trường ở dòng Field

:

3.2.4 Tìm kiếm và lọc dữ liệu
1. Tìm kiếm
Để tiến hành tìm kiếm đơn giản trên một trường cụ thể ta thao tác nh ư sau:
 Chọn trường đó
 Chọn Edit/Find sau đó ta có hộp thoại:

ELEC


Trang 20


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI



Gõ dữ liệu cần tìm vào Find What, giả sử gõ vào M2 có thể dùng ký tự * thay cho
một nhóm ký tự hoặc? thay cho một ký tự bất kỳ
 Chọn All vào Search nếu định tìm tất cả
 Chọn Whole Field vào Match nếu nội dung trọn một trường
 Chọn Find First để tìm dữ liệu từ đầu bảng v.v.. cuối cùng chọn Close
2. Lọc dữ liệu
Gả sử ta có bảng sau:

Ta lọc ra những thành phần (và có thể sắp xếp luôn) có Ma_Mat_Hang bằng M2. ta thao tác
như sau:
 Chọn Records/Filter/ Advanced Filter/Sort sau đó ta có hộp thoại sau:





ELEC

Đặt tên trường Ma _Mat_Hang vào dòng Field
Đặt Ascending hoặc Descending vào dòng Sort
Đặt =”M2”: vào cột Ma_Mat_Hang ứng với dòng Criteria như hình sau:

Trang 21



TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI



Chọn Filter/Apply Filter/Sort, sau đó ta có:

Câu hỏi và bài tập chương 3
1. Sửa những gì thì được gọi là sửa cấu trúc bảng, cho ví dụ
2. Hãy tạo bảng có tên khối A với các trường sau:
Hodem (Text, 25)
Ten (Text, 7)
NgaySinh (Date/Time)
GioiTinh (Yes/No)
Toan (Number)
Ly (Number)
Hoa (Number)
 Hãy tạo cấu trúc và nạp 10 bản ghi
 Hãy đổi tên trường Hodem thành Holot
 Hãy thêm trường Tong (Number)
 Hãy chuyển kiểu của NgaySinh (Date/Time) th ành kiểu Number
 Hãy tạo một bảng khác chỉ chứa Toan, Ly, Hoa, Tong
 Cũng với bảng của câu hỏi 2:
 Hãy xếp giảm dần theo điểm toán
 Hãy xếp tăng dần theo điểm lý
 Hãy lọc ra những thí sinh có điểm Toán <=3
 Hãy lọc ra những thí sinh có điểm Lý <=4
 Hãy tìm những thí sinh có điểm Toán l à 7
3. Cũng với bảng của câu hỏi 2:

 Hãy thực hiện các thao tác: chèn thêm bản ghi, xoá bản ghi, thay thế dữ liệu v à đặt lại
Font cho dữ liệu
ELEC

Trang 22


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI

Chương 4: Trích rút dữ liệu bằng các truy vấn
4.1 Đặt vấn đề
Để đơn giản ta vẫn dùng 4 bảng đã nói ở phần trước như sau:
Số Lượng

STT
1
2
3
4
5
6
7

Ngày tháng
14/12/07
14/12/07
14/12/07
15/12/07
15/12/07
16/12/07

16/12/07

Mã mặt hàng
M1
M2
M3
M1
M2
M2
M3

Số lưọng
2
1
3
1
1
2
3

Doanh Số

Ngày tháng
14/12/07
15/12/07
16/12/07

Tổng tiền trong ngày
15000000
6000000

17000000

Đã thanh toán
10000000
4000000
7000000

Loại Hàng

Mã mặt hàng
M1
M2
M3

Tên hàng
Radio
Tủ lạnh
Ti vi

Đơn giá

Tên hàng
Radio
Tủ lạnh
Ti vi

Đơn giá
1000000
4000000
3000000


Mặc dù đã làm một số việc với bảng như: Hiện bảng, sửa bảng, xếp bản g, lọc ra những bản
ghi theo một chuẩn nào đó v.v.. Nhưng còn nhiều vấn đề nữa thực sự cần thiết ví dụ nh ư:
 Hiện (và tạo thành bảng mới) những bản ghi (của bảng SoLuong) có m ã mặt hàng là M2?
 Hiện những bản ghi (DoanhSo) có tổng tiền tro ng ngày từ 15 triệụ trở lên?
 Lấy những thông tin liên quan đến 4 bảng trên ứng với ngày 14/12/07?
 Những người nào có mua mặt hàng Radio?
 Và còn nhiều yêu sách nữa v.v..
Những việc làm trên được gọi là truy vấn (Query). Trong Access cho phép ta tạo ra các truy
vấn một cách nhanh chóng v à đa dạng.

4.2 Truy vấn trong một bảng



Mở CSDL BanHang.mdb (ta vẫn trung thành với CSDL này mặc dù nó đơn giản, chính
nhờ đơn giản mà dễ truyền tải nội dung)
Chọn Queries và chọn New sau đó hộp thoại hiện ra:

ELEC

Trang 23


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI



Bước đầu hãy chọn Design View và chọn OK, một hộp thoại khác xuất hiện, h ãy chọn
bảng SoLuong rồi kích vào Add và chọn Close, hộp thoại Query1 ra đời như sau:


Đến đây bạn cần làm tiếp những việc:
 Ở dòng Field: hãy đưa các tên trường cần hiển thị (kích và chọn)
 Ở dòng Table: sẽ cho biết tên bảng
 Ở dòng Sort: Nếu định sắp xếp hãy đưa Ascending hoặc Descending vào
 Ở dòng Show: Nếu định hiện trường đó hãy xác định dấu kiểm
 Ở dòng Criteria: Đưa vào tiêu chuẩn tìm kiếm
 Ở dòng Or: Đưa vào tiêu chuẩn tìm kiếm ứng với phép toán Logic OR
Ví dụ: Để hiển thị những bản ghi có Ma_Mat_Hang=”M2” hoặc Ma_Mat_Hang=”M3”, h ình
sau:

ELEC

Trang 24


TRUNG TÂM ĐÀO TẠO TRỰC TUYẾN - ĐẠI HỌC KINH DOANH & CÔNG NGHỆ H À NỘI



Hãy chọn Query/Run và ta có kết quả:



Hãy kích vào nút Close trên thanh tiêu đề Query1 và đưa tên Query vào (giả sử ta gõ tên
Query là: QuerySoLuong) hộp thoại quay về:

Như vậy ta đã tạo được một Query có tên QuerySoLuong (thực chất cũng là một bảng).

ELEC


Trang 25


×