Bai giang thnc phan acccess

27
Đại học Tài chính - Marketing Khoa Công nghệ thông tin ThS. Nguyễn Thanh Trường 1 1 TRƯỜNG ĐẠI HỌC TÀI CHÍNH TRƯỜNG ĐẠI HỌC TÀI CHÍNH - MARKETING MARKETING KHOA CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ THÔNG TIN BÀI GIẢNG TIN HỌC NÂNG BÀI GIẢNG TIN HỌC NÂNG CAO CAO Số tín chỉ Số tín chỉ : 3 : 3 Lý thuyết : 30 tiết Lý thuyết : 30 tiết Thực hành Thực hành : 30 tiết : 30 tiết Tự học Tự học : 75 tiết : 75 tiết ThS. Nguyễn Thanh Trường ThS. Nguyễn Thanh Trường [email protected] [email protected] 2 Tài liệu tham khảo 1. Giáo trình Microsoft Access 2000 – Nguyễn Sơn Hải – Trung tâm Tin học – Bộ giáo dục và đào tạo 2. Cơ sở dữ liệu Northwind 2007.accdb (microsoft) 3. Programming Microsoft Access 2000, Microsoft press - Rick Dobson 1999 4. Microsoft Office Accesss Help 5. Microsoft Office Online 6. Trang web Microsoft Access Tutorial: http://www.softlookup.com/tutorial/access/index.asp

Transcript of Bai giang thnc phan acccess

Page 1: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 1

11

TRƯỜNG ĐẠI HỌC TÀI CHÍNHTRƯỜNG ĐẠI HỌC TÀI CHÍNH -- MARKETINGMARKETINGKHOA CÔNG NGHỆ THÔNG TINKHOA CÔNG NGHỆ THÔNG TIN

BÀI GIẢNG TIN HỌC NÂNGBÀI GIẢNG TIN HỌC NÂNGCAOCAO

Số tín chỉSố tín chỉ : 3: 3Lý thuyết : 30 tiếtLý thuyết : 30 tiếtThực hànhThực hành : 30 tiết: 30 tiếtTự họcTự học : 75 tiết: 75 tiết

ThS. Nguyễn Thanh TrườngThS. Nguyễn Thanh Trườ[email protected]@gmail.com

2

Tài liệu tham khảo

1. Giáo trình Microsoft Access 2000 – Nguyễn Sơn Hải– Trung tâm Tin học – Bộ giáo dục và đào tạo

2. Cơ sở dữ liệu Northwind 2007.accdb (microsoft)3. Programming Microsoft Access 2000, Microsoft

press - Rick Dobson 19994. Microsoft Office Accesss Help5. Microsoft Office Online6. Trang web Microsoft Access Tutorial:http://www.softlookup.com/tutorial/access/index.asp

Page 2: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 2

3

Chương trình

1. CÁC KHÁI NIỆM CƠ BẢN2. THIẾT KẾ BẢNG3. QUERY

4

Mục tiêuGiúp cho sinh viên có các khái niệm về một cơ sở dữ liệu, hệ quản trịcơ sở dữ liệu Access,các bước thiết kế một cơ sở dữ liệu trên Access

Khái niệm về Cơ sở dữ liệu quan hệNguồn gốc của mô hình Cơ Sở Dữ Liệu Quan Hệ là do tiến sĩ E.F.Coldthiết kế và được công bố vào những năm 1970.Cơ sở dữ liệu là một tập hợp có cấu trúc của dữ liệu được lưu trữtrên các thiết bị, nó có thể đáp ứng nhu cầu cho nhiều người vớinhiều mục đích khác nhau.Hệ quản trị CSDL quan hệ(RDBMS: Relational DatabaseManagement System) Là phần mềm phức tạp thực hiện các chứcnăng: Tạo và lưu trữ CSDL, thực hiện các truy vấn thông tin trênCSDL, Vào ra thông tin theo yêu cầu thực tế, ngôn ngữ hỏi SQL, tạocác ứng dụng (VBA),…Các RDBMS: Access, Foxpro, SQL server, …

CHƯƠNG 1 CÁC KHÁI NIỆM CƠ BẢN

Page 3: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 3

5

Những giai đoạn khi thiết kế CSDL Access

Xác định mục đích của CSDL: dùng để làm gì, mục đích gì -> từ đó mới xác định được những bảng dữ liệu cần thiết vàdữ kiện cần lưu trữ trong mỗi Table này.Tạo lập các Table: xác định vùng dữ liệu (Field) của mỗiTable. Không ghi những dữ kiện phải tính toán vào Table.Thiết lập mối quan hệ giữa các TableThiết lập các công cụ khai thác dữ liệu: thiết kế các mànhình nhập, xuất dữ liệu, hiển thị thông tin và kết xuất ramáy in.Ấn định các thao tác xử lý cho người sử dụng.

6

MÔ HÌNH QUAN HỆ - CÁC BƯỚC XÂY DỰNG CƠ SỞ DỮLIỆUMục tiêu

Giới thiệu sơ lược các mô hình dữ liệuBiểu diễn lược đồ Quan hệ

1. Các dạng mô hình dữ liệu:Mô hình dữ liệu là tập hợp các ý niệm, một qui ước về sự biểu diễncho phép mô tả dữ liệu mà con người muốn quản lý.Trong thực tiễn sẽ có 3 hiện tượng cần phải mô hình hoá:Nhiều nhóm dữ liệu gắn chung 1 khái niệm ( các nhóm này được gọilà đối tượng, thực thể và cá thể tuỳ theo qui ước được sử dụng)Các mối kết hợp giữa các đối tượngCác ràng buộc toàn vẹn hoặc các tập hợp luật (qui tắc) liên quanđến các đối tượng, các mối kết hợp nhằm bảo đảm tính chân thựccủa thế giới được mô tả.

Page 4: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 4

7

Các dạng lược đồ mô tả công việc quản lý trên:

Mô hình phân cấp

Mô hình mạng

NCC

DDHMH

DDH HDON

PS

NCC

DDHMH

DDH HDON

PS

8

Mô hình quan hệ

T ro n g đ ó :S T T -N C C : S ố th ứ tự N h à C u n g C ấ pM S -M H : M ã số M ặ t H àn gS T T -D D H : S ố th ứ tự Ð ơ n Ð ặ t H à n gS T T -H D O N : S ố th ứ tự h o á d o nN G A Y -P S : N g à y th án g n ăm p h á t s in h

N C C S T T - N C C … … M H M S - M H … …

D D H S T T - D D H … S T T - N C C

D D H S T T - D D H M S - D D H … …

H D S T T - D D H … S T T - H D O N

P S S T T - D D H M S - M H N G A Y - P S

Page 5: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 5

9

Mô hình thực thể kết hợp:

Trong đó :BAN : bánT-GIAN : Thời gianT-TOAN : Thanh toán

: Mối kết hợp: Thực thể

NCC

HDON

DDHMH

BAN T-HIEN

DDH

T-GIAN

PS T-TOAN

(0,N) (0,N)

(1,N) (1,1)

(0,N) (1,N)

(0,N) (0,N) (0,N)

(1,N) (1,1)

10

Trong chương trình học này, chúng ta sẽ tập trung cho loại mô hìnhQuan hệ mà Access cung cấp, các mô hình khác chỉ có tính chấttham khảo.Mô hình Quan hệ:Ðược phổ biến nhất hiện nay do tính chất đơn giản, dễ sử dụng.Các lợi ích của loại mô hình này:Tính đơn giản, dễ sử dụng do Dữ liệu được biểu diễn dạng Table rấttự nhiên.Tính chặt chẽ của các khái niệm công cụ toán học và giải thuật.Tính phù hợp của mô hình ở mức ý niệm. ( Không yêu cầu các kháiniệm Tin Học như các loại mô hình khác yêu cầu )Tuy nhiên loại mô hình này có nhược điểm gây khó khăn trong việcchuẩn hoá.

Page 6: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 6

11

Lược đồ Quan hệ thường được biêủ diễn như sau:TÊN-LƯỢC-ÐỒ(THUỘC-TÍNH-KHOÁ,THUỘC-TÍNH1,THUỘC-

TÍNH2,…)Trong đó thuộc tính gạch chân là thuộc tính khoáMỗi lược đồ trên được biểu diễn bởi một Table trong Access.

Biểu diễn lược đồ Quan hệ:

12

CHƯƠNG 2 Thiết kế bảng

Tạo CSDL mới•Khởi động Access•Tạo mới CSDLOffice Button\New chọn Blank Database hoặcTemplate (Thông thường chọnBlank Database) đặt tên, chỉđường dẫn lưu trữ CSDL Create

Mục tiêu• Các thành phần cơ bản của CSDL• Tạo bảng, thiết kế bảng bằng Design View• Các thuộc tính của Field (Field Properties)• Tạo LOOKUP từ bảng• Tạo khoá• Thiết lập quan hệ giữa các bảng

Page 7: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 7

13

Các thành phần cơ bản của CSDL :- Tables (Bảng): Lưu trữ dữ liệu- Queries (Truy vấn): Thực hiện cácthao tác trên dữ liệu của Table.- Forms (Biểu mẫu): Thiết kế màn hìnhnhập liệu (cập nhật, xem dữ liệu trongTable)- Reports (Báo biểu): Tạo ra kết xuấttừ các dữ liệu đã lưu trong bảng.- Macros (Tập lệnh): Tập hợp các lệnhnhằm tự động hóa những thao tácthường nhật thay vì phải lặp đi lặp lạinhiều lần. Có thể xem Macro là công cụlập trình đơn giản của Access.

14

Tạo bảngTừ cửa sổ CSDL chọnCreate\Tables- Table: Tạo Table theo chế độnhập liệu trực tiếp vào bảngsau đó ta phải điều chỉnh lạicấu trúc- Design View: Tạo Table theochế độ thiết kế. (Thiết kế tay)- Table Template: Tạo Tabletheo hướng dẫn bởi Access.Từ cửa sổ CSDL chọnExternal Data: Nhập tablehoặc các đối tượng (query,form,…) vào CSDL hiện hành từcác đối tượng khác.

Page 8: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 8

15

Thiết kế bảng bằng Design ViewField name: Nhập tên FieldData Type: Chọn kiểu dữ liệu cho bảng trong danh sáchField Properties: Quy định các thuộc tính của Field

16

Kiểu dữ liệu Ý nghĩa lưu trữText K iểu chuỗi, bao gồm ký tự chữ cái, số, khoảng

trắng và các ký tự khác. Dài tố i đa 255 ký tự(1 ký tự chiếm 1 byte).

Mem o Kiểu ký ức, chứa văn bản như kiểu text nhưngcó chiều dài tố i đa 65,535 ký tự.

Num ber Kiểu số. Chứa ký tự số từ 0-> 9, dấu thậpphân, dấu âm (-).

Date/T ime Kiểu ngày, giờ . Chứa trị thờ i gian.Currency Kiểu số có định dạng theo tiền tệ.AutoNumber Kiểu số nhưng tự động tăng do Access cung

cấp và quản lý, người sử dụng không thể cậpnhật. Trị đếm này cứ tiếp tục tăng và không bịtrùng ngay với cả các Record đã bị xóa.

Yes/No Kiểu Logic, có trị là Yes hoặc No.OLE Objiect Kiểu đối tượng nhúng: W ord, Excel, … Kiểu

này dùng để lưu hình ảnh, âm thanh, bảngtính hay văn bản.

Hyperlink Chứa các siêu liên kết.Lookup W izard Dùng để thiết kế m ột danh sách chọn cho

Field chỉ định theo hướng dẫn của W izard.

Page 9: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 9

17

Sau đây là bảng miền giá trị của kiểu dữ liệu Number

Field Size Ý nghĩa Miền giá trị Số byteByte Số nguyên 0-> 255 1Boolean Logic 1: True, 0: False 2Integer Số nguyên - 32.768-> 32.767 2Long Số nguyên -2.147.483.648-> 2.147.483.647 4Currency Số thực -922.337.203.685.774.5808->

922.337.203.685.774.58078

Single Số thực -3.402823E38-> 1.40198E-45 (âm)1.40198E-45 -> 3.402823E38(dương)

4

Double Số thực -1.79769313486232E308->-4.94065645841247E-324 (Aâm)4.94065645841247E-324->1.79769313486232E308 (Dương)

8

18

Các thuộc tính của Field (Field Properties)

Page 10: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 10

19

Tạo khoá: Chọn (quét khối) Field cần tạo khoá -> Click vàobiểu tượng Primary Key

20

Sau khi thiết kế bảng xong, xác nhận lưu và lưu tên bảng

Page 11: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 11

21

Tạo LOOKUP Từ BảngGiả sử ta có 2 bảng Sanpham và LoaiSP,

22

Page 12: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 12

23

24

Page 13: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 13

25

26

Page 14: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 14

27

28

Thiết lập quan hệ giữa các bảngCác loại quan hệ:- Quan hệ 1 – 1- Quan hệ 1 – nhiều- Quan hệ nhiều – nhiềuTừ cửa sổ CSDL chọn Database Tools\RelationShips

Page 15: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 15

29

Từ cửa sổ Show Table, chọn các bảng cần thiết lập quan hệ -> AddClick vào biểu tượng để hiện cửa sổ

30

Drag and Drop Field của bảng có quan hệ1 sang field bảng nhiều

Page 16: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 16

31

Chọn các ràng buộc -> Create

32

Đã thiết lập quan hệ

Page 17: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 17

33

CHƯƠNG 3 QUERYMục tiêu

Giới thiệu các loại Query, cách thiết kế các loại query khác nhau như Select,Parameter, Crosstab, Action và SubQuery (SQL)

SƠ LƯỢC VỀ CÁC LOẠI QUERYKhái niệm- Query là công cụ của Access dùng để khai thác dữ liệu trong một hoặc

nhiều Table bằng cách thực hiện các yêu cầu truy vấn của người sử dụng.- Query cũng được dùng như một nguồn dữ liệu khác cho Form, Report hay

Query khác.- Khi có hiệu chỉnh dữ liệu trên Query thì số liệu trên Table cũng được thay

đổi theo.Các trường hợp sử dụng Query: thường được sử dụng trong các trườnghợp sau

- Chỉ lựa chọn các Field cần thiết trong Table- Lựa chọn các Record theo một tiêu chuẩn nào đó, xếp thứ tự các Record- Tham khảo dữ liệu của nhiều Table khác nhau- Thực hiện các phép tính- Tạo CSDL cho Form, Report hay các Query khác- Thực hiện những thay đổi trong Table.

34

Các loại Query• Select Query (Truy vấn chọn) :• Parameter Query (tham số)•Total Query (Query tính tổng số)• CrossTab Query (tham khảo chéo)• Action Query (hành động) Bao gồm:- Make - Table Query:- Delete Query:- Update Query:- Append Query:• SQL Specific query (truy vấn chuyên biệt về SQL)• Subquery ( truy vấn con ): gồm có 1 phát biểu SQL select ở trong 1select query hay action query khác.Các loại Query khác• Find Duplicate Query: Tìm trong Table các Record trùng lặp trên giátrị của một hay nhiều Field• Find UnMatched Query: Vấn tin tìm các Record trong một bảng dữliệu không có quan hệ với một Record trong Table quan hệ.

Page 18: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 18

35

Cách tạo QueryXác định yêu cầu tạo Query: Cần hiển thị các Field nào, các Field này thuộc nhữngbảng nàoThực hiện Queries\New\Design View\OKChọn các bảng chứa các Field đã xác định -> AddField: các Field sẽ hiển thị, tại đây ta có thể gõ biểu thức, hàm, đặt tên Field mớiTable: Table chứa FieldTotal: Các hàm thống kê trên các FieldShow: Hiển thị Field hay khôngCriteria: Biểu thức tiêu chuẩn vấn tin dùng để đặt điều kiện cho Query

36

Select QueryChọn các Field(tạo thêm)cần hiển thị từ các bảng, đặt điều kiện tạiCriteria. Ví dụ tạo Query hiển thị các nhân viên nam. Gồm các Field:MaNV, Ho và Ten, Phái. Ta có thể chọn Build để xây dựng Field mới từcác Table/Query đã có

Page 19: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 19

37

Từ cửa sổ này ta có thể chọn chính xác các Field trong trường hợpcác bảng khác nhau có trùng tên Field

38

Cách thiết lập Biểu thức tiêu chuẩn vấn tin(các toán tử và biểu thức)1.Toán tử số họcGồm + - * / \(chia lấy phần nguyên), ^ (Lũy thừa)mod (chia lấy phầndư)2. Toán tử so sánhGồm = > >= < <= <>(khác) Like, Not Like, Null, Not Null3. Toán tử chuỗi:+:ghép chuỗi&: ghép chuỗi nhưng giá trị sẽ được đổi sang chuỗi trước khi ghépLike: So sánh chuỗi với mẫu dữ liệu sau Like gồm các tý tự: ? * #4. Toán tử LogicGồm And,Eqv (tương đương, XOR), Not, Or5. Toán tử khác: Gồm

Page 20: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 20

39

5. Toán tử khác

! (dấu chấmthan)

Toán tử danh hiệu. Theo sau là tên đối tượng do ngườisử dung định nghĩa (như Form, Report, Field …)Ví dụ: Forms![InBc]![Thang]

. (dấu chấm) Toán tử danh hiệu. Thường theo sau là tên thuộc tínhVí dụ: Forms![HoaDon].Record Source = NXVT

[ ] Bao tên các đề mụcBetween …And …

Cú pháp: Between < Giá trị 1> And < Giá trị 2>Xác định giá trị biểu thức có nằm trong vùng giá trị chỉđịnh khôngVí dụ: xác định NgCt từ ngày 01/01/2001 đến ngày01/05/2001

Between #01/01/2001# And #01/05/2001#In Cú pháp: IN (<giá trị 1>, <giá trị 2>, … <giá trị n>)

Xác định giá trị biểu thức có bằng với 1 trong nhiều trịchỉ định khôngVí dụ: In(“COSIS”,”PETRO”)

Is Dùng với từ khóa Null để xác định 1 biểu thức có trị Nullkhông

*, ? Các ký tự đại diện

40

MỘT SỐ HÀM ÐƠN GIẢN

Hàm IIFCú pháp: IIF(BtLogic, <giá trị đúng>, <giá trị sai>)Hàm IIF cho kết quả là <giá trị đúng> nếu BtLogic đúng,ngược lại cho <giá trị sai>

Ví dụ: Field GioiTinh như sau : nếu Phai là Yes thì GioiTinh làNữ, ngược lại là NamGioiTinh : IIF(Phai = Yes, “Nữ”, “Nam”)

Hàm IIF lồng nhau: Thay <giá trị đúng>hoặc <giá trị sai>bởi 1 hàm iif ta có hàm iif lồng nhau

Ví dụ:IIF(BtLogic1, <giá trị đúng1>,IIF(BtLogic2, <giá trịđúng2>, <giá trị sai>))

VD: IIF([Diem]>=9, “Xuất sắc”,IIF([Diem]>=8,“Giỏi”,IIF([Diem]>=7, “Khá”,IIF([Diem]>=5, “Trungbình”,”Yếu”))))

Page 21: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 21

41

Các hàm xử lý chuỗiLcase(String) : đổi các ký tự của chuỗi String ra dạng chữ thườngUcase(String): đổi các ký tự của chuỗi String ra dạng chữ hoaLeft(String,n): Trả về n ký tự bên trái của StringRight(String,n): Trả về n ký tự bên phải của StringMid(String,Start,[n]): Trả về n ký tự của String bắt đầu từ vị trí StartCác hàm xử lý ngàyDate(): Trả về ngày hiện tại của hệ thốngDay(bt Date): Trả về giá trị ngày của bt DateMonth(bt Date):Trả về giá trị tháng của bt Date.Year(bt Date): Trả về giá trị năm của bt DateDatePart (Part, Date): để trích một phần dữ liệu kiểu ngày.Trong đó Part là ký hiệu tắt chỉ thành phần thuộc ngày (“d” -> ngày,

“m” -> tháng, “yyyy” -> năm, “q “> quý, “ww” -> tuần)Format (Giá trị, “chuỗi định dạng”): để định dạng phần dữ liệu.Ví dụ: “m” -> tháng 1 số, “mm” -> tháng 2 số, “yyyy” -> năm 4 số,

“#,###.00 “-> số có 2 số lẻ

42

BIỂU THỨC- Là thành phần cơ bản của nhiều phép toán của Access, dùng

định tiêu chuẩn cho vấn tin, lọc và các macros.- Thành phần của biểu thức là tổ hợp các toán tử, danh hiệu,

các hàm, các hằng ,…- Sử dụng biểu thức để định nghĩa một điều khiển, quy tắc nhập

dữ liệu, trị mặc nhiên cho Field, tạo biểu thức tiêu chuẩn, …Ví dụ: dùng biểu thức để tạo một Field tính toán: ThanhTien:

[SoLuong]* [DonGia]

Các hàm thống kêAvg(bthuc): trả về giá trị trung bình của biểu thứctrong những Record thuộc một tập hợp trong Query,Form, ReportCount(bthuc), Max(bthuc), Min(bthuc), Sum(bthuc)

Page 22: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 22

43

Query Total

1. Kết nhóm dữ liệuCó thể hiển thị các Record trong Query theo nhóm -> gọi là kết nhóm dữ liệuThao tác:- Thực hiện tương tự Select Query- Sắp xếp các Field cần nhóm theo thứ tự từ trái sang phải. Field kết nhóm cao

nhất được đặt ở ngoài cùng bên trái lưới QBE- Ðưa dòng Totals vào lưới QBE: trên menu View -> Total hay click biểu tượng

Total trên thanh công cụ- Chọn mục GROUP BY trên dòng Totals của Field cần kết nhóm

2. Tính tổng- Có thể thực hiện tính tổng trên một nhóm dữ liệu nào đó bằng cách sử dụngbảng Query tổng cộng (Totals Query). Trong Query này, khai báo hiển thị nhữngtrị tổng cộng và bảng này được gọi là Aggregate Query (Query tính gộp)- Các hàm có thể sử dụng trong Query tổng cộng

Tên hàm Ý nghĩaSUM Tính tổng của Field sốAVG Tính trung bình của Field sốMIN/MAX Tính trị lớn nhất / nhỏ nhất của Field sốCOUNT Ðếm số Record có dữ liệu trong FieldFIRST/LAST Trị của Field thuộc Record đầu tiên/ cuối cùng của Table hay

Query

44

Parameter Query

- Là Query được nhận thông số nhập từ bàn phím để định tiêu chuẩn lọc các Recordcho mỗi lần chạy.- Trong hộp thoại Enter Parameter Value, chỉ có thể nhập một tiêu chuẩn và khôngphải là một biểu thức.Cách tạo Parameter Query- Tạo như 1 Select Query, đặt điều kiện nếu có- Tại dòng Criteria của Field muốn dùng làm tham số, nhập chuỗi ký tự thông báotrong dấu ngoặc vuông (được hiển thị trong hộp thoại Enter Parameter Value khi chạyQuery). Chuỗi ký tự này không được trùng với tên Field, tên Table.Khai báo kiểu dữ liệu của thông sốChọn lệnh Query -> Parameter, hộp thoại Query Parameter được hiển thịTại cột Parameter gõ chính xác tên tham số trong Query, cột Data Type: chọn kiểucho tham số

Page 23: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 23

45

Crosstab Query (Tham khảo chéo)- Tạo Query bằng Design View- Bật Table Name và Total: chọn menu View -> Tables Names để hiểnthị dòng Table trong QBE . Chọn View -> Totals để hiển thị dòng Total(Access tự gán Group By)- Xác định loại Query: vào menu Design -> Crosstab- Khai báo tiêu đề dòng, cột và tổng hợp trên dòng CrossTab (Đây là 3thành phần bắt buộc phải có của Crosstab Query)• Chọn ô CrossTab của Field làm tiêu đề dòng cho Query rồi chọn RowHeading trong danh sách thuộc tính này (dòng Total của Field này phảikhai báo là Group By)• Chọn ô CrossTab của Field làm tiêu đề cột của Query rồi chọnColumn Heading trong danh sách thuộc tính này (dòng Total củaField này khai báo là Group By)• Chọn ô CrossTab của Field muốn là tổng kết của Query rồi chọnValue Heading trong danh sách thuộc tính. Ô Total của Field này phảikhai báo phép tính tổng kết như SUM. Chỉ được chọn một Field códòng CrossTab là Value

46

Page 24: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 24

47

Action QueryDùng Action Query để tạo Table mới, cập nhật Record của table. Gồm Make TableQuery, Delete Query, AppendQuery và Update Query.

Make Table Query :- Dùng tạo Table mới từ dữ kiện của các Table khác. Cách này có lợi là tạo các Report

trình bày số liệu phát sinh trong 1 thời điểm nào đó, tạo bản lưu cho Table, …Cách thực hiện- Thiết kế Select Query- Design\Make Table, đặt tên cho Table mới trong khung Table Name của hộp

thoại Make Table- Lưu ý: Tên Table mới không được trùng với các Table đã có- Thực hiện Run (Là bắt buộc đối với tất cả các loại Query Action)- Khi chạy Make Table Query: Access sẽ thông báo để yêu cầu người sử dụng xác

nhận việc thực hiện- Sau khi thực hiện kiểm tra lại bảng đã có

48

Page 25: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 25

49

Teân Table nhaän döõ lieäu

Delete Query Xóa các Record thỏa điều kiện nào đó trong Table.Cách thực hiện :- Thiết kế Select Query- Vào menu Design -> Delete

- Chọn các Field đưa vào QBE: các Field được chọn để đưa vào QBE là tiêu chuẩnđể xóa Record của Table- Thực hiện Run

-Khi chạy Query Delete, Access sẽ thông báo cảnh cáo không thể phục hồi được. Append QueryDùng để nối vào một Table các Record lấy từ một hay nhiều Table cơ sở khácCách thực hiện-Chọn Create -> Query Design, chọn các Table, Field tương ứng vào khung thiết kế

(add vào Table cơ sở)- Vào menu Design -> Append, hộp thoại Append hiển thị. Khai báo tên Table vàokhung Table Name. Chọn OK để đóng hộp thoại- Thực hiện Run

50

Update QueryDùng để cập nhật các Recordtrong Table. Cách thực hiện-Thiết kế Select Query - Vàomenu Design -> Update. Lúcnày trong lưới QBE (Query ByExample) sẽ mất dòng Sort vàShow, thêm dòng Update To-Tại dòng Update To nhậpvào biểu thức cần cập nhật

Page 26: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 26

51

TRUY VẤN BẰNG NGÔN NGỮ SQLSQL (Structured Query Language) là loại ngôn ngữ có cấu trúc cho phép tathực hiện các việc như : Rút, trích, thêm, xoá, sửa, …

Select query ( Truy vấn chọn lựa )Cú pháp:SELECT [tính chất { * | table.* | [table].field1 [, table.]field2 [,… }]}[ As alias1 [,alias2 [,…]]] // thông thường ít dùngFROM table1 [, table2 [,…]] [ IN MDB khác]WHERE [ điều kiện]GROUP BY [ field ]HAVING [ điều kiện]ODER BY <field >[DESC]

Make - Table QueryCú pháp:Select field1 [,field2 [,… ]] INTO Table mới [ IN MDB khác ]FROM Table nguồn

Update Query ( Truy vấn cập nhật )Cú pháp:UPDATE TableSET field1=gt1, field2 = gt2,…WHERE điều kiện

52

Append Query ( Truy vấn thêm ):Cú pháp:Thêm vào một dòng:

INSERT INTO Table [(field1 [, field2 [,….]])]VALUES ( gt1 [, gt2 [,…])

Thêm vào nhiều dòng:INSERT INTO Table đích (field1 [, field2 [,…]) [IN MDB khác ]SELECT field1 [, field2 [,…]FROM Table nguồn.

Ví dụ: Thêm vào Table KHOA một khoa mới có nội dung như sau:Tenkhoa = Quản trị, makhoa = QT. Ta viết:

Insert into [KHOA] (makhoa,Tenkhoa)VALUES ( “QT”,”Quản trị kinh doanh”)

Delete Query ( Truy vấn Xoá ):Cú pháp:DELETE field1 [, field2 [,…]FROM TableWHERE điều kiện

Ví dụ: xoá tất cả các dòng trong Table KETQUATHI có điểm thi <0 ( âm )DELETE * FROM [KETQUATHI]WHERE Diem <0;

Page 27: Bai giang thnc phan acccess

Đại học Tài chính - MarketingKhoa Công nghệ thông tin

ThS. Nguyễn Thanh Trường 27

53

Sub QueryLà loại Query mà biểu thức tiêu chuẩn vấn tin là một Query dạng SQL.Thường trả lời các câu hỏi dạng (VD trong QLNX):- Có/không (danh sách) các DMVT không/có trong Nhapxuat- Có/không các Nhanvien không/có trong NhapxuatVD: Thực hiện như minh họa