Tài liệu Hệ quản trị cơ sở dữ liệu với MS Access: Bài 1: Tổng quan về MS Access
1. Khái niệm cơ sở dữ liệu (CSDL: DataBase)
CSDL là tập hợp những dữ liệu liên quan tới một chủ đề, một phạm vi quản lý. Nhằm thoả mãn nhu cầu khai thác thông tin nhanh chóng, chính xác, hiệu quả.
(CSDL là tập hợp dữ liệu mang tính hệ thống, chứ không phải là dữ liệu rời rạc)
CSDL quan hệ (Relational DataBase): là tập hợp các bảng liên quan tới nhau, tạo thành một hệ thống thông tin thống nhất, đảm bảo tính không được thiếu, không thừa của nguồn dữ liệu.
Hệ quản trị CSDL (HQT CSDL: DataBase Management System)
Là phần mềm cho phép tạo, lưu trữ, quản lý và tương tác với CSDL.
Các chức năng cơ bản của HQTCSDL
Một HQTCSDL phải có ngôn ngữ mô tả dữ liệu (Data Definition Language) cho phép ta định nghĩa cấu trúc (tạo, sửa, xoá) và mô tả các mối liên hệ của dữ liệu cũng như những quy tắc quản lý trên dữ liệu đó.
Một HQTCSDL phải có ngôn ngữ thao tác dữ liệu (Data Manipulation Language) cho phép người sử dụng có thể cập nhật dữ liệu (thêm, sửa, xoá)...
98 trang |
Chia sẻ: hunglv | Lượt xem: 2269 | Lượt tải: 1
Bạn đang xem trước 20 trang mẫu tài liệu Hệ quản trị cơ sở dữ liệu với MS Access, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Bài 1: Tổng quan về MS Access
1. Khái niệm cơ sở dữ liệu (CSDL: DataBase)
CSDL là tập hợp những dữ liệu liên quan tới một chủ đề, một phạm vi quản lý. Nhằm thoả mãn nhu cầu khai thác thông tin nhanh chóng, chính xác, hiệu quả.
(CSDL là tập hợp dữ liệu mang tính hệ thống, chứ không phải là dữ liệu rời rạc)
CSDL quan hệ (Relational DataBase): là tập hợp các bảng liên quan tới nhau, tạo thành một hệ thống thông tin thống nhất, đảm bảo tính không được thiếu, không thừa của nguồn dữ liệu.
Hệ quản trị CSDL (HQT CSDL: DataBase Management System)
Là phần mềm cho phép tạo, lưu trữ, quản lý và tương tác với CSDL.
Các chức năng cơ bản của HQTCSDL
Một HQTCSDL phải có ngôn ngữ mô tả dữ liệu (Data Definition Language) cho phép ta định nghĩa cấu trúc (tạo, sửa, xoá) và mô tả các mối liên hệ của dữ liệu cũng như những quy tắc quản lý trên dữ liệu đó.
Một HQTCSDL phải có ngôn ngữ thao tác dữ liệu (Data Manipulation Language) cho phép người sử dụng có thể cập nhật dữ liệu (thêm, sửa, xoá).
Một HQTCSDL phải có ngôn ngữ truy xuất dữ liệu (Data Receive Language) để khai thác, trích rút dữ liệu trong CSDL khi có nhu cầu.
Ngoài ra, một số HQTCSDL cung cấp cho người sử dụng những cơ chế bảo mật và phục hồi dữ liệu khi có sự cố xảy ra.
HQTCSDL quan hệ là hệ quản trị cơ sở dữ liệu theo mô hình quan hệ.
Hệ quản trị cơ sở dữ liệu MS Access là HQTCSDL quan hệ có khá đầy đủ các chức năng trên. Ngoài ra chương trình này còn có các chức năng khác như tạo Form, Report, Macro, Module,… cho phép xây dựng hoàn chỉnh một phần mềm quản lý CSDL.
2. Các thành phần trong cơ sở dữ liệu Access
(Nằm trên file có phần mở rộng *.mdb)
Trong cơ sở dữ liệu của Ms Access 2000 gồm có 7 thành phần, mỗi thành phần gồm nhiều đối tượng.
Ví dụ: Trong thành phần Tables có nhiều đối tượng Table, trong thành phần Queries có nhiều đối tượng Query,...
Từ các nguồn khác: có nghĩa là liên kết lấy dữ liệu từ các file dạng khác như *.xls (Excel), hoặc dữ liệu trong các hệ quản trị cơ sở dữ liệu khác,...
2.1. Table: là đối tượng lưu trữ dữ liệu.
Hình 1.1: Màn hình hiển thị dữ liệu bảng HoSo.
2.2. Query: tính toán, xử lý và khai thác dữ liệu trong Cơ sở dữ liệu.
Hình 1.2: Màn hình hiển thị dữ liệu truy vấn các thí sinh KV1.
2.3. Form: giao diện nhập và thể hiện dữ liệu, tạo hộp thoại giao tiếp giữa ứng dụng và người sử dụng.
Hình 1.3: Giao diện liệt kê các thí sinh theo từng khu vực.
2.4. Macro: tạo các hành động điều khiển và liên kết các đối tượng nằm trong các thành phần của Access.
Ví dụ: tạo hành động mở mẫu biểu có tên sbfTest và chỉ hiển thị những thí sinh thuộc KV3.
Hình 1.4: Màn hình hiển thị phần thiết kế Macro.
2.5. Report: tạo mẫu báo cáo thể hiện dữ liệu phong phú, đẹp mắt. Là khâu cuối cùng của quá trình xử lý dữ liệu, để rồi in ra giấy.
Hình 1.5: Báo cáo thống kê chi tiết các thí sinh theo từng khu vực.
2.6. Module: môi trường để soạn thảo các hàm (Function), thủ tục (Sub) viết bằng ngôn ngữ VBA (Visual Basic for Application) hay còn gọi là Access Basic. Nhằm xử lý và điều khiển các đối tượng phức tạp.
Ví dụ: tạo thủ tục SuaNoiSinh để sửa dữ liệu trong cột (trường) NoiSinh. Nếu là “hanoi” thì đổi thành “Ha Noi “.
Hình 1.6: Màn hình soạn thảo mã lệnh chương trình.
2.7. Page: cho phép thể hiện dữ liệu trên trang dạng Web (*.htm). Người sử dụng có thể truy cập vào CSDL thông qua trình duyệt Microsoft Internet Exploirer (IE).
Hình 1.7: Màn hình hiển thị danh sách khu vực từ cửa sổ IE.
Chương 2.1: Table - Bảng dữ liệu
1. Khái niệm
Table là thành phần quan trọng nhất trong CSDL, là nơi trực tiếp lưu trữ dữ liệu. Mỗi Table chứa thông tin về một thực thể xác định.
Ví dụ:
Bảng MonHoc lưu trữ thông tin về các môn học như: Mã môn học, Số tiết,..
Bảng NhanVien lưu trữ thông tin về cán bộ nhân viên như: Mã nhân viên, Họ tên, Ngày sinh, Quê quán, Lương,…
Mã NV
Họ tên
Ngày sinh
Quê quán
Lương
SR001
Nguyễn Phương Nam
14/12/1975
Hà Tây
650000
SR002
Trần Mạnh Hùng
03/09/1970
Thái Nguyên
800000
SR003
Vũ Phương Thảo
19/12/1978
Hải Phòng
720000
1.1. Cấu trúc của bảng: gồm các hàng và các cột giao nhau
Cột trong Table thì gọi Field (trường)
Mỗi Field ứng với một mục dữ liệu mà ta cần lưu trữ, và mỗi Field có một kiểu dữ liệu xác định.
Mã NV, Họ tên, Quê quán: kiểu kí tự
Ngày sinh: kiểu ngày tháng
Lương: kiểu số.
Hàng trong table thì gọi Record (bản ghi)
Là một thể hiện dữ liệu của các Field trong bảng.
1.2. Khoá chính (Primary Key)
Trong bảng thường có khoá chính gồm một hoặc nhiều trường đảm bảo 2 tính chất sau:
Dữ liệu trên đó là duy nhất, mục đích dùng để phân biệt bản ghi này với bản ghi kia
Không được phép rỗng dữ liệu (phải nhập dữ liệu). Vì khi biết được giá trị của trường khoá chính thì có thể suy ra giá trị của các trường khác.
1.3. Khoá ngoại (Foreign Key)
Để tạo quan hệ giữa các bảng người ta lấy khoá chính đưa sang bảng quan hệ làm khoá ngoại. Dữ liệu trong khoá ngoại phải được tham chiếu lấy từ khoá chính.
2. Các phương pháp tạo Table
2.1. Tạo Table bằng Table Wizard
Đây là phương pháp tạo bảng theo các bước hướng dẫn để xây dựng các Table từ trong CSDL mẫu của Access
Cách 1: trong cửa sổ Database chọn New/ Table Wizard
Cách 2: chọn Create table by using wizard.
Hình 2.1: Cửa sổ tạo mới Table bằng trợ giúp.
Sample Tables: chọn các Table mẫu
Sample Fields: chọn các Fields trong Table mẫu
Fields in my new table: các trường xuất hiện trong bảng khi nó được tạo ra
(ta có thể chọn nút lệnh Rename Field… để đổi tên trường)
Phương pháp này chỉ với mục đích tham khảo, vì các Table mẫu thường không thích hợp với cách quản lý của ta (thường phải thiết kế lại).
2.2. Tạo Table bằng Datasheet View
Cách 1: trong cửa sổ Database chọn New/ Datasheet View
Cách 2: chọn Create table by entering data
Người dùng chỉ cần gõ dữ liệu trực tiếp vào bảng có dạng giống Excel
Hình 2.2: Cửa sổ tạo mới Table bằng Datasheet View.
Access sẽ tự động xác định:
Kiểu dữ liệu của trường tuỳ theo dữ liệu nhập
Số trường sẽ thu lại theo số cột có dữ liệu
Số bản ghi sẽ thu lại theo số hàng có dữ liệu nhập.
2.3. Tạo Table bằng Design View
Đây là cách tạo bảng thường dùng nhất, với cách này ta trực tiếp tạo ra cấu trúc bảng theo mong muốn.
Cách 1: trong cửa sổ Database chọn New/ Design View
Cách 2: chọn Create table in Design View
Hình 2.3: Cửa sổ tạo mới Table.
Màn hình giao diện tạo bảng bằng Design View như sau:
Hình 2.4: Cửa sổ thiết kế Table.
Field Name: đặt tên trường.
Data Type: kiểu dữ liệu của trường.
Description: chú thích ý nghĩa của trường, nội dung sẽ hiện ở dòng trạng thái (Status Line) để hướng dẫn nhập liệu khi mở Table ở chế độ Datasheet.
Field Properties: các thuộc tính của trường.
Nếu tạo mới Table mà chưa tạo khoá chính thì khi thoát khỏi chế độ Design View Access bắt ta phải đặt tên cho Table, rồi sau đó sẽ hỏi ta có muốn tạo khoá chính không? Ta chọn No để không tạo khoá.
Hình 2.5: Hộp thoại hỏi khoá chính.
3.1. Tên trường (Field Name)
Các quy tắc đặt tên trường
Tên trường có thể chứa các kí tự chữ cái, chữ số, dấu cách, các kí tự đặc biệt (trừ các kí tự “.”, “!”, “[“, “]” )
Tên trường không được bắt đầu bằng dấu cách, không quá 64 kí tự. Trong một bảng không có tên trường trùng nhau.
3.2. Kiểu dữ liệu của trường (Data Type)
Trường
Giải thích
Text
(kiểu kí tự): tối đa 255 kí tự
Memo
(kiểu kí ức): tối đa 64000 kí tự, thường được dùng để lưu trữ những văn bản lớn chẳng hạn như chú thích, tiểu sử cá nhân...
Number
(kiểu số): gồm các kiểu có miền giá trị khác nhau khai báo trong Field size
Date/Time
(kiểu ngày tháng): tối đa 8 byte dùng lưu trữ dữ liệu dạng ngày tháng
Currency
(kiểu tiền tệ): tối đa 8 byte, đây cũng là một dạng kiểu Number nhưng có ký hiệu tiền tệ.
Yes/No
(kiểu Logic): lưu dữ liệu chỉ trong 2 trạng thái.
AutoNumber
(kiểu số tự động): dữ liệu trong trường có kiểu này sẽ được tự động thêm vào các giá trị tuần tự hay ngẫu nhiên mà không cần người sử dụng nhập vào.
OLE Object
(nhúng và liên kết đối tượng): lưu âm thanh, hình ảnh tối đa 1GB bộ nhớ.
Hyperlink
(kiểu siêu liên kết): lưu đường dẫn tới một máy khác trên mạng hay địa chỉ liên kết tới một trang Web, địa chỉ Email, tối đa 2048 kí tự.
Lookup wizard:
tham chiếu tới danh sách các giá trị của một trường nào đó ở bảng khác.
Bảng các kiểu dữ liệu của một trường có thể nhận
3.3. Các thuộc tính của trường (Field Properties)
Phần Genernal: các thuộc tính chung
Field size: quy định độ rộng của dữ liệu trong trường.
Ví dụ: Đối với kiểu Text ở thuộc tính này ta quy định là 10 thì chỉ được nhập 10 kí tự. Còn đối với kiểu Number ta chọn các kiểu với miền sau:
Giá trị
Miền giá trị
Số Byte
Integer
Số nguyên (-32768 ® 32767)
2
Long Integer
số nguyên
(-2147483648®2147483647)
4
Single
kiểu số thực(đơn)
(-3.4*1038 ® 3.4*1038)
4
Double
kiểu số thực(kép)
(-1.797*10308 ® 1.797*10308)
8
Format: định dạng các thể hiện của dữ liệu trong trường. Với từng kiểu dữ liệu (Data Type), ta có các kiểu định dạng khác nhau.
Đối với dạng Text
' < ': dữ liệu trong trường tự động chuyển thành chữ thường
' > ': dữ liệu trong trường tự động chuyển thành chữ hoa
@ [tên màu]: tự động định dạng màu chữ
Tên các màu: Black (đen), Blue (xanh lá cây), Green (xanh nước biển), Cyan (xanh nhạt), Red (đỏ), Magenta (tím cánh sen), Yellow (vàng), White (trắng),...
Đối với dạng Date/Time
Ta chọn các dạng có sẵn:
Hoặc ta dùng các kí tự d, m, y để thiết lập như sau:
dd/mm/yyyy: 19/12/2003 (với dd:day, mm: month, yyyy:year)
dd-mmm-yyyy: 19-Dec-2003
mm/dd/yy: 12/19/03
Đối với dạng số ta dùng các định dạng có sẵn
Giả sử ta có giá trị 3456.789
Đối với dạng dữ liệu Yes/No: có các dạng Yes/No, True/False, On/Off. Nếu không khai báo Format thì sẽ hiện các giá trị –1 (Yes), 0 (No).
Decimal Places: quy định số chữ số thập phân (chỉ có trong Number, Currency).
Input Mask (mặt nạ nhập liệu): Trong trường hợp dữ liệu có cùng dạng thức ta nên quy định mẫu nhập liệu, nhưng phải nhập đúng quy định đó.
Nhóm ký tự định nghĩa InputMask
Kí tự mặt nạ
Ý nghĩa
0
Vị trí dành cho một số 0® 9 (bắt buộc nhập)
9
Vị trí dành cho một số 0® 9 (không bắt nhập)
#
Vị trí dành cho một kí tự số 0® 9, dấu +, -, trống
L
Vị trí dành cho một kí tự A-Z (bắt buộc nhập)
?
Vị trí dành cho một kí tự A-Z (không bắt nhập)
A
Vị trí dành cho một ký tự chữ hoặc số (bắt buộc)
A
Vị trí dành cho một ký tự chữ hoặc số (không bắt buộc)
&
Vị trí dành cho một kí tự bất kì (bắt buộc)
C
Vị trí dành cho một kí tự bất kì (không bắt buộc)
. , : ; - /:
Ngăn cách giữa các phần
Password
Những kí tự đánh vào sẽ hiển thị dấu * (dạng mật khẩu)
Ví dụ: Giá trị trong trường ngày sinh có dạng 19/12/1978 ta thấy rằng khung mặt nạ nhập liệu là __ /__ /____
. Ta phải thiết lập như sau 00/00/0000
Caption: chuỗi tiêu đề cột khi bảng ở chế độ Datasheet (chế độ cập nhật dữ liệu), nếu bỏ qua thì Access lấy tên trường làm tiêu đề cột.
Default Value: xác định giá trị định trước (dùng trong trường hợp nhập dữ liệu đó là nhiều)
Validation Rule: xây dựng biểu thức kiểm tra dữ liệu (quy tắc hợp lệ)
Ví dụ: nếu > 0 thì dữ liệu nhập vào phải lớn hơn 0.
Validation Text: xâu kí tự hiện trong hộp thông báo lỗi nếu vi phạm điều kiện trong Validation Rule.
Required: có bắt buộc phải nhập dữ liệu không?
Yes: tương ứng với việc buộc nhập dữ liệu
No: không buộc nhập dữ liệu
tại trường đó.
Allow Zero Length: áp dụng cho Text, Memo, Hyperlink cho phép nhập hay không nhập dữ liệu là giá trị rỗng.
Indexed (chỉ số): Tạo chỉ số để sắp xếp và tăng tốc độ tìm kiếm dữ liệu
No: không tạo chỉ số
Yes (Duplicates Ok): tạo chỉ số được phép trùng
Yes (No Duplicates): tạo chỉ số không được phép trùng
Phần Lookup: các thuộc tính tham chiếu
Display Control: chọn cách hiển thị
Text Box: hộp văn bản
Combo Box: hộp liệt kê thả
List Box: hộp liệt kê danh sách
Check Box: hộp kiểm tra (áp dụng cho Yes/No)
Nếu Display Control đặt là Text thì sẽ không có các tuỳ chọn tiếp theo, nếu Display Control đặt là List Box sẽ có thêm các phần tuỳ chọn như sau:
Row Source Type: kiểu nguồn dữ liệu
Table/Query: lấy dữ liệu có sẵn trong Table hoặc Query.
Value List: tự đánh dữ liệu cho danh sách
Field List: danh sách là tên các field trong Table hoặc query
Row Source: nguồn giá trị trong danh sách (có thể chọn tên của Table/Query, hoặc tự liệt kê giá trị...)
Bound Column: cột được lấy làm giá trị của Field
Column Count: số cột hiển thị trong danh sách
Column Heads: bật tắt dòng tiêu đề
Column Widths: độ rộng của từng cột trong danh sách
Nếu Display Control đặt là Combo Box sẽ có thêm những phần sau:
List Row: số dòng hiển thị trong danh sách
List Width: độ rộng của danh sách (tổng độ rộng của các cột)
Limit to List: giới hạn trong danh sách
Yes: chỉ được nhập dữ liệu lấy trong danh sách cho Field
No: có thể nhập dữ liệu ngoài danh sách cho Field
Chương 2.2: Table - Bảng dữ liệu (phần 2 - tiếp)
4. Các hình thức tạo bảng khác
4.1. Import Table (nhập khẩu bảng)
Lấy bảng đã có sẵn từ CSDL khác về CSDL hiện thời. Bảng được tạo ra độc lập với bảng nguồn.
Cách 1: trong cửa sổ Database chọn New/ ImportTable
Cách 2: vào thực đơn File/Get External Data/Import...
Chỉ ra đường dẫn chọn file CSDL khác rồi chọn lệnh Import.
Hình 2.6: Cửa sổ Import Objects.
Chọn tên bảng cần Import rồi OK
Select All: chọn tất cả các bảng
Deselect All: huỷ chọn tất cả các bảng.
Chú ý: Ta có thể dùng phương pháp Export Table (xuất khẩu bảng) để đưa bảng từ CSDL hiện thời sang CSDL khác.
Cách 1: chọn bảng cần xuất khẩu rồi vào thực đơn File/Export...
Cách 2: nhấn phải chuột vào bảng cần xuất khẩu /Export...
4.2 Link Table (bảng liên kết)
Là cách tạo bảng bằng cách liên kết đến một bảng của CSDL khác. Cách tạo bảng này gần giống như cách tạo bảng bằng Import Table, chỉ khác là bảng không được lấy hẳn về như Import Table mà chỉ là liên kết tới bảng đó.
Cách 1: trong cửa sổ Database chọn New/ LinkTable
Cách 2: vào thực đơn File/Get External Data/ LinkTable
Chỉ ra đường dẫn CSDL chứa bảng cần liên kết đến rồi chọn lệnh Link
Lưu ý:
Biểu tượng của bảng liên kết có thêm hình mũi tên.
Bảng liên kết chỉ được cập nhật dữ liệu, không được phép sửa thiết kế.
5. Các chế độ của Table
Có hai chế độ mở bảng, mở bảng ở chế độ cập nhật dữ liệu (Datasheet View) và mở bảng ở chế độ thiết kế (Design View).
5.1. Mở bảng ở chế độ thiết kế (Design View)
Cho phép sửa đổi cấu trúc bảng. Tại đây, chúng ta có thể chèn thêm trường, xoá trường đi, thay đổi kiểu dữ liệu hay thuộc tính của trường,...
Cách thực hiện:
Bước 1: chọn Table
Bước 2: nhấn Design trên thanh công cụ của cửa sổ Database
Chèn thêm một trường vào trong Table
Cách 1: vào thực đơn Insert/Rows
Cách 2: phải chuột /Insert Rows
Xoá một hoặc nhiều trường trong Table
Bước a: chọn các trường muốn xoá
Bước b: vào thực đơn Edit/Delete Rows hoặc phải chuột/ Delete Rows
Tạo khoá chính (Primary Key)
Bước a: chọn một hoặc nhiều trường làm khoá chính
Bước b: thiết lập khoá chính
Cách 1: vào thực đơn Edit/Primary Key
Cách 2: nhấn vào biểu tượng Primary Key (chìa khoá) trên thanh công cụ
(Nếu muốn bỏ khoá chính ta thực hiện lại động tác trên).
5.2. Mở bảng ở chế độ cập nhật dữ liệu (Datasheet View)
Cho phép xem và thêm, xoá, sửa dữ liệu của bảng.
Cách thực hiện
Bước 1: chọn Table muốn mở
Bước 2: nhấn Open trên thanh công cụ của cửa sổ Database (hoặc Enter)
Các thao tác trên Record: thêm, sửa, xoá Record
(giống trong MS Excel)
a. Nhập, sửa dữ liệu OLE Object
Nhập hình ảnh
Cách 1: vào thực đơn Insert/Object.../chọn Object Type
Cách 2: phải chuột/ Insert Object.../ chọn Object Type
Hình 2.7: Màn hình cho phép chỉ định loại đối tượng OLE.
Create New: tạo file ảnh, văn bản, bảng tính,.. bằng các chương trình trong Object Type.
Hình 2.8: Chọn đường dẫn đến file cho đối tượng OLE.
Create from File: lấy file ảnh, văn bản, bảng tính,.. đã lưu trong máy
(Bấm nút Browse chọn đường dẫn tới file đó)
Link: chỉ liên kết tới file đó.
Sửa hình ảnh
Cách 1: vào thực đơn Edit/Bitmap Image Object.../ Edit
Cách 2: phải chuột/ Bitmap Image Object.../ Edit
Điều chỉnh độ rộng, thay đổi vị trí cột (tham khảo sách bài tập)
Đổi tên, ẩn, hiện cột (tham khảo sách bài tập).
b. Sắp xếp dữ liệu
Bước 1: Chọn cột cần sắp xếp
Bước 2: Chọn các cách
Cách 1: Record/Sort /{Ascending | Descending}
Cách 2: Nhấn biểu tượng trên thanh công cụ.
c. Lọc dữ liệu
Filter By Selection
Chức năng: Dùng để lọc các bản ghi thỏa mãn giá trị đã được chọn trong bảng dữ liệu.
Bước 1: chọn giá trị cần lọc của cột trên bảng dữ liệu
Bước 2: chọn các cách sau
Cách 1: vào thực đơn Records/ Filter/ Filter By Selection
Cách 2: kích phải chuột/ Filter By Selection.
Để lọc những giá trị khác (ngược lại) với giá trị được chọn ta chỉ cần chọn Filter Excluding Selection.
Để bỏ lọc ta chọn biểu tượng Remove Filter trên thanh công cụ (hoặc kích phải chuột / Remove Filter).
Sử dụng lọc Filter By Form
Chức năng: Lọc những bản ghi thỏa mãn nhiều giá trị mà ta lựa chọn trên nhiều cột (thỏa mãn nhiều điều kiện).
Bước 1: vào thực đơn Records/ Filter/ Filter By Form (hoặc chọn biểu tượng Filter By Form trên thanh công cụ)
Bước 2: chọn giá trị cần lọc trên từng cột của bảng/Apply Filter
Sử dụng lọc Advanced Filter/Sort
Cho phép ta lọc dữ liệu và sắp xếp bằng cách sử dụng các phép toán (toán tử)
Bước 1: Chọn Records/ Filter/ Advanced Filter Sort ... xuất hiện
Field: Chọn trường cần lọc hoặc sắp xếp.
Sort: Chọn kiểu sắp xếp.
Criteria: nhập điều kiện lọc.
Or: Nhập điều kiện lọc hoặc.
Bước 2: Chọn Filter/ Apply Filter /Sort hoặc chọn Apply Filter trên thanh công cụ
6. Sao chép, xóa, đổi tên Table trong CSDL
Phải đóng các Table cần thực hiện và trở về cửa sổ Database
6.1. Sao chép
Bước 1: chọn Table
Bước 2: vào thực đơn Edit/Copy
Bước 3: vào thực đơn Edit/Paste xuất hiện hộp thoại
Hình 2.9: Hộp thoại sao chép bảng.
Table Name: đặt tên Table mới (hoặc chọn bảng đích để nối dữ liệu)
Paste Option: chọn dạng sao chép
Structure Only: chỉ lấy cấu trúc Table
Structure and Data: lấy cấu trúc Table và cả dữ liệu
Append Data to Existing Table: thêm dữ liệu vào cuối Table đích.
6.2. Đổi tên
Bước 1: chọn Table
Bước 2: vào thực đơn Edit/Rename (hoặc phải chuột/Rename)
Bước 3: gõ tên mới/Enter.
6.3. Xoá Table
Bước 1: chọn Table
Bước 2: chọn các cách sau
Cách 1: phải chuột/ Delete
Cách 2: nhấn phím Delete trên bàn phím
Bước 3: xác nhận Yes để xoá.
Bài 2.3: Table - Bảng dữ liệu (phần 3 - tiếp)
7. Quan hệ giữa các bảng – Relationship
Với những cơ sở dữ liệu được tổ chức cẩn thận và bài bản, thường thì sau khi thiết kế xong cấu trúc cho các table, người ta quy định luôn mối quan hệ giữa các table này.
Khi tạo mối quan hệ thì tính nhất quán dữ liệu sẽ được đảm bảo và các bảng có thể bổ xung thông tin cho nhau. Để dễ hiểu ta xét quan hệ giữa hai Table
a. Mối quan hệ một – một
Table A có quan hệ một – một với Table B nếu một giá trị trên trường quan hệ của Table A chỉ xuất hiện một lần trên trường quan hệ của Table B và ngược lại.
b. Mối quan hệ một – nhiều
Table A có quan hệ một – nhiều với Table B nếu một giá trị trên trường quan hệ của Table A có thể xuất hiện nhiều lần trên trường quan hệ của Table B nhưng giá trị trên trường quan hệ của Table B chỉ xuất hiện một lần trên trường quan hệ của Table A.
c. Mối quan hệ nhiều – nhiều
Mối quan hệ này thể hiện rằng một giá trị trên trường quan hệ của Table A có thể xuất hiện nhiều lần trên trường quan hệ của Table B và ngược lại.
Nếu trong thực tế có mối quan hệ này khi triển khai mô hình CSDL quan hệ phải tách ra làm hai quan hệ một – nhiều bằng cách tạo ra Table thứ ba.
Ví dụ: ta có hai bảng gồm các trường sau:
SinhVien ( MaSV, TenSV, NgaySinh , QueQuan, Khoa )
MonHoc ( MaMH, TenMH, SoTiet )
Hai bảng này có quan hệ nhiều - nhiều vì “Một sinh viên phải thi nhiều môn học và một môn học có nhiều sinh viên đăng ký thi”
Ta tạo Table thứ ba để giải toả mối quan hệ nhiều - nhiều như sau:
KETQUATHI (MaSV, MaMH, Diem)
7.1. Tạo dây quan hệ
Bước 1: Hiện hộp thoại Relationships
Cách 1: Vào thực đơn Tools/Relationships
Cách 2: Chọn biểu tượng thanh công cụ
Bước 2: Hiện hộp thoại Show Table
Cách 1: Relationships/ Show Table...
Cách 2: Chọn biểu tượng trên thanh công cụ
Hình 2.10: Màn hình thêm các Table vào cửa sổ quan hệ.
Add: để bổ xung thêm Table vào quan hệ
Close: đóng cửa sổ Show Table.
Hình 2.11: Các bảng trong file CSDL TuyenSinh.mdb.
Bước 3: Đặt quan hệ giữa 2 bảng (dùng phương pháp kéo thả)
Xuất hiện hộp thoại Edit Relationships
Hình 2.12: Cửa sổ tạo các ràng buộc cho quan hệ
Enfore Referential Integrity
ép buộc tính toàn vẹn tham chiếu: đảm bảo sự đúng đắn của dữ liệu.
Cascade Update Related Fields: Cập nhật liên hoàn: khi ta thay đổi giá trị của khoá chính thì giá trị tương ứng trong tất cả các bảng liên hệ với nó cũng tự động thay đổi theo.
Cascade Delete Related Records: Xoá liên hoàn: bản ghi ở bảng chính bị xoá thì các bản ghi ở các bảng liên hệ cũng bị xoá theo.
Lưu ý: Các chức năng Cascade Update Related Fields, Delete Related Records chỉ có thể sử dụng được nếu ta chọn Enfore Referential Integrity.
Relationdhips Type: loại quan hệ
One to One: là quan hệ một – một
One to Many: là quan hệ một – nhiều
Chú ý: Nếu là quan hệ có ép buộc tính toàn vẹn tham chiếu thì dây quan hệ sẽ có biểu diễn loại quan hệ (có đầu mút), còn nếu không thì dây quan hệ sẽ là đường trơn không có biểu diễn loại quan hệ (không có đầu mút).
Bước 4: Chọn nút lệnh Create.
Hình 2.13: Các quan hệ trong file CSDL TuyenSinh.mdb.
7.2. Sửa dây quan hệ
Cách 1: Nhấn đúp chuột tại dây quan hệ
Cách 2: Nhấn phải chuột tại dây quan hệ / Edit Relationship...
7.3. Xoá dây quan hệ
Cách 1: Chọn dây quan hệ / nhấn phím Delete
Cách 2: Phải chuột dây quan hệ / Delete.
8. Các phép toán
8.1. Các phép toán số học
Chú ý: Thứ tự ưu tiên của các phép toán là lũy thừa, nhân, chia, chia lấy nguyên, cộng, trừ. Ngoài ra có thể sử dụng dấu ( ) để thay đổi thứ tự ưu tiên.
8.2. Các phép toán so sánh
Chú ý: Đối với giá trị kiểu Date/Time thì ngày sau lớn hơn ngày trước.
Các phép toán so sánh tạo nên biểu thức Logic cho kết quả True (-1) hoặc False (0)
8.3. Các phép toán Logic: AND, OR, NOT
X
Y
X AND Y
X OR Y
NOT (X)
-1
-1
-1
-1
0
-1
0
0
-1
0
0
-1
0
-1
-1
0
0
0
0
-1
Chú ý: Thứ tự ưu tiên của các phép toán Logic là NOT -> AND -> OR. Ngoài ra có thể sử dụng dấu ( ) để thay đổi thứ tự ưu tiên.
8.4. Phép toán ghép chuỗi
Cú pháp: &
Ví dụ: “Chao cac ban ” & ” hoc vien, sinh vien SaraCenter” trả về chuỗi
“Chao cac ban hoc vien, sinh vien SaraCenter”
Chú ý: Nếu thay phép toán & bằng phép toán + thì có thể cho kết quả sai trong một số trường hợp.
8.5. Phép lấy mẫu
Cú pháp: LIKE
So sánh chuỗi dữ liệu với mẫu dữ liệu được chỉ sau LIKE
Các kí tự đại diện sử dụng trong mẫu dữ liệu
*: đại diện cho nhiều kí tự
?: đại diện cho một kí tự
#: đại diện cho một chữ số (từ 0 đến 9)
Ví dụ: Tìm những thí sinh có tên bắt đầu bằng kí tự “H”
LIKE “H*” trả kết quả “Hữu”, “Hạnh”, “Hương”,...
Ví dụ: Tìm những thí sinh có tên không bắt đầu bằng kí tự “T”
NOT LIKE “T*”
8.6. Phép toán BETWEEN...AND...
Cú pháp: BETWEEN AND
Lấy giá trị trong đoạn từ giá trị 1 đến giá trị 2
Ví dụ: BETWEEN 1 AND 10 Û >=0 AND <=10
BETWEEN #01/01/1982# AND #30/12/1982#
Û >= #01/01/1982# AND <= #30/12/1982#
8.7. Phép toán IN
Cú pháp: IN (, ,..., )
Lấy giá trị rời rạc hoặc ,...,
Ví dụ:
IN(1,3,4,5) Û 1 OR 2 OR 4 OR 5
IN(“Hà Nội”, “Thái Bình”,”Hà Tây”) Û “Hà Nội” OR “Thái Bình” OR ”Hà Tây”
NOT IN (“Hà Nam”, “Hải Phòng”) Û “Hà Nam” AND “Hải Phòng”.
8.8. Phép toán IS NULL
Để lấy những giá trị rỗng (không có dữ liệu) Ví dụ: Chọn ra những thí sinh chưa có thông tin về khu vực
MaKV is null
Chú ý chung:
Giá trị của kiểu Text nằm trong dấu nháy kép “…”
Giá trị của kiểu Date/Time nằm trong dấu thăng #… #
Có thể kết hợp các toán tử Logic với các toán tử khác như:
Not Like, Not Between, Not In, Is Not Null,...
Chương 3: Query - Truy vấn
I. Khái niệm
Là công cụ khá đặc trưng của MS Access, đáp ứng các yêu cầu giúp cho người sử dụng tính toán xử lý và khai thác dữ liệu trên CSDL dưới nhiều hình thức.
Số liệu thì được lưu trữ trên Table, còn Query là công cụ để tìm và nhìn số liệu dưới nhiều góc độ khác nhau.
Query dùng để tạo ra nguồn số liệu cơ sở cho các thành phần khác như: Form, Report kể cả một Query khác, thậm chí tạo ra một Table.
Có 2 phương thức tạo Query
Thiết kế thông qua cửa sổ đồ hoạ QBE (Query By Example)
Hình 3.1: Truy vấn thông tin các thí sinh KV1.
Viết bằng lệnh SQL (Structured Query Language)
Hình 3.2: Truy vấn thông tin các thí sinh KV1.
Tuỳ theo kết quả cho ra bởi Query, người ta phân ra các loại sau:
1. Select Query: Dùng để chọn dữ liệu trên các bảng
Được sử dụng rất phổ biến, trong một chừng mực nào đó nó gần giống Filter nhưng tính năng cao hơn một mức. Vì nó có khả năng:
Vấn tin trên nhiều Table
Tạo thêm các trường tính toán
Tóm lược và kết nhóm số liệu (Total Query)
Chọn các trường cần hiện hoặc ẩn, trình bày số liệu theo một trật tự mới theo yêu cầu đặt ra
Tạo ra truy vấn hỏi đáp tại thời điểm chạy Query
Các bước tạo Query
Muốn tạo Select Query thì trong CSDL phải có Table chứa dữ liệu rồi.
Nếu truy vấn trên nhiều bảng thì phải thiết lập quan hệ giữa các bảng (RelationShips)
Ta có thể tạo Select Query bằng các cách
Simple Query Wizard: có trợ giúp.
Design View: tự thiết kế.
Chú ý:muốn tạo truy vấn ta phải vào Queries trên thanh Objects để tạo.
1.1. Simple Query Wizard
Ta chỉ cần chọn bảng chứa các trường tham gia truy vấn theo các bước mà Wizard hướng dẫn.
Cách 1: chọn Create query by using wizard trong cửa sổ Database
Cách 2: New/ Simple Query Wizard.
Hình 3.3: Cửa sổ tạo mới Query.
Bước 1: Xác định các trường tham gia vào truy vấn
Hình 3.4: Cửa sổ chọn các trường tham gia truy vấn.
Tables/Queries: chọn Table hoặc Query chứa trường cần lấy
Available Fields: liệt kê các trường có trong Table hoặc Query
Nhấn nút đưa một trường đã chọn
Nhấn nút đưa tất cả các trường
Nhấn nút bỏ một trường
Nhấn nút bỏ tất cả các trường
Selected Fields: liệt kê các trường tham gia truy vấn (hiển thị khi chạy truy vấn)
Nhấn nút lệnh Next để chuyển tới bước sau
Chương 3: Query - Truy vấn( phần 2 - tiếp )
Bước 2: Lựa chọn việc hiển thị
Hình 3.5: Cửa sổ chọn cách hiển thị dữ liệu.
Chọn Detail: nếu muốn hiển thị chi tiết toàn bộ giá trị các trường đã chọn
Chọn Sumary: nếu muốn thực hiện thống kê trên trường dữ liệu. Sau đó nhấn nút Summary Option... để chọn các chỉ tiêu thống kê
Sum: tính tổng giá trị của trường
Avg: tính giá trị trung bình của trường
Min: lấy giá trị nhỏ nhất của trường
Max: lấy giá trị lớn nhất của trường
Count: đếm số Record
Chú ý: chỉ xuất hiện nếu truy vấn trên trường có kiểu Number
Nhấn nút lệnh Next để chuyển tới bước sau
Hình 3.6: Các khoảng thời gian tổng kết.
Unique date/time: tổng kết (nhóm) theo ngày/giờ
Day: tổng kết theo ngày
Month: tổng kết theo tháng
Quater: tổng kết theo quý (3 tháng)
Year: tổng kết theo năm
Chú ý: chỉ xuất hiện nếu truy vấn trên trường có kiểu Date/Time
Bước 3: Đặt tên cho Query kết quả rồi nhấn chọn nút Finish.
Trong Access còn có các loại Query Wizard khác sau:
Find Duplicates Query Wizard
Chức năng: tìm các Record trùng lặp giá trị trên một số trường nào đó
Ví dụ: tìm những bộ điểm giống nhau.
Find Unmatched Query Wizard
Chức năng: tìm các Record trong một bảng không có trong bảng khác
Ví dụ: tìm những khu vực không có thí sinh dự thi.
1.2. Design View
Cho phép ta có thể tự tạo mới một Query bằng màn hình đồ họa (cửa sổ QBE)
Cách 1: chọn Create Query in Design View.
Cách 2: New/ Design View
Bổ xung thêm các bảng cần truy vấn từ hộp thoại Show Table
Hình 3.7: Cửa sổ đưa các Table chứa các trường tham gia truy vấn.
Hình 3.8: Cửa sổ thiết kế Query.
Field: chọn trường cần hiển thị.
Table: hiện bảng của trường được chọn.
Sort: sắp xếp các bản ghi.
Ascending: sắp xếp theo thứ tự tăng dần
Descending: sắp xếp theo thứ tự giảm dần
Not sorted: không sắp xếp
Show: ẩn hoặc hiện dữ liệu của trường trong bảng khi trạy truy vấn (nếu ẩn thì trường đó để xây dựng biểu thức điều kiện).
Criteria: dòng để thành lập biểu thức điều kiện.
Or: dòng để thành lập biểu thức điều kiện hoặc.
Chú ý: Trên cùng một dòng điều kiện là đồng thời (AND), khác dòng điều kiện là hoặc (OR).
Ta có thể chạy truy vấn bằng các cách sau:
Cách 1: chọn Query/Open.
Cách 2: chọn Query/ Enter
Cách 3: vào thực đơn View/ DataSheet View.
Chương 3: Query - Truy vấn( phần 3 - tiếp )
Đổi tên của tiêu đề cột
Cú pháp: Tên mới: Tên cũ
Ví dụ: DiemToan: [DToan]
Tạo các cột (trường) tính toán
Cú pháp Tên trường mới: Biểu thức
Ví dụ: Tien: [SoLuong]*[DonGia]
Ví dụ: HoTen: [HoDem]&” ”&[Ten]
Chú ý chung:
Tên trường trong Access phải được đặt trong dấu ngoặc vuông [ ]
Ví dụ: [Ho Ten]
Nếu tên trường xuất hiện trên nhiều bảng, khi sử dụng phải chỉ rõ nó nằm ở bảng nào theo cú pháp sau: [Tên bảng]![Tên trường]
Ví dụ: [HoSo]![SoBD], [DiemTS]![SoBD]
Khi phải xây dựng biểu thức phức tạp, ta nên sử dụng cửa sổ Expression Builder bằng các cách sau:
Cách 1: Kích phải chuột vào vùng cần xây dựng biểu thức/ Build...
Cách 2: Chọn biểu tượng trên thanh công cụ.
Hình 3.9: Cửa sổ xây dựng biểu thức.
a. Query có tham số
Khi ta muốn truy vấn với điều kiện động hơn (không cố định, tức là tại thời điểm chạy ta mới nhập giá trị cho nó). Để thực hiện điều đó ta thực hiện truy vấn hỏi đáp như sau:
Cú pháp: [Lời nhắc]
Hình 3.10: Xây dựng truy vấn hỏi đáp.
Xuất hiện hộp thoại hỏi đáp sau:
Ta nhập điều kiện khác nhau cho kết quả khác nhau.
Hình 3.11: Màn hình hiển thị kết quả truy vấn.
Chú ý:
Ta có thể truyền tham số lấy từ giá trị của đối tượng điều khiển trên Form như sau:
(tham chiếu tới điều khiển trên Form)
Forms![Tên Form]![Tên điều khiển]
b. Query thống kê (Total Query)
Nhiều khi ta cần thống kê trên các trường dữ liệu của bảng như:
Đếm xem mỗi khu vực có bao nhiêu thí sinh.
Đưa ra tổng điểm cao nhất của từng khu vực.
Thống kê theo khu vực
Để làm được việc đó ta phải sử dụng các lựa chọn trong chức năng Totals.
Sum: Tính tổng các giá trị trong trường.
Avg: Tính trung bình cộng các giá trị trong trường.
Max: Tìm giá trị lớn nhất.
Min: Tìm giá trị nhỏ nhất.
Count: Đếm các bản ghi của bảng trên trường dữ liệu.
Expression: Xây dựng biểu thức.
Group By: Kết nhóm giá trị giống nhau trong trường.
First: Lấy giá trị của bản ghi đầu trong bảng.
Last: Lấy giá trị của bản ghi cuối trong bảng.
StDev: Tìm độ lệnh chuẩn
Var: Tìm phương sai
Where: Điều kiện lọc trước khi nhóm dữ liệu
Hình 3.13: Màn hình thiết kế truy vấn thống kê theo khu vực.
Chú ý: truy vấn thống kê thường tạo ra trường mới
Chương 3: Query - Truy vấn( phần 4 - tiếp )
2. Crosstab Query
Chức năng: Dùng để thống kê dữ liệu ở dạng đường chéo (kết nhóm số liệu theo dạng hàng cột) của một bảng dữ liệu
Để truy vấn trên dữ liệu của nhiều Table thường phải tạo một Select Query làm cơ sở (truy vấn cấp 1).
Ví dụ: Thống kê số lượng thí sinh nam, nữ theo từng khu vực
Hình 3.14: Màn hình hiển thị kết quả truyvấn.
Để sử dụng được truy vấn Crosstab Query ta cần tối thiểu 3 trường thể hiện dữ liệu
Một trường dùng làm tiêu đề hàng (Row Heading)
Một trường dùng làm tiêu đề cột (Column Heading)
Một trường để thống kê giá trị (Value).
Có 2 cách tạo
Cách 1: CrossTab Query Wizard
Cách 2: Design View
Các bước tạo
Bước 1: New/ Design View/chọn Table/Query
Bước 2: Mở Query/ CrossTab Query (hoặc chọn biểu tượng Query Type trên thanh công cụ).
Tại Field: chọn 3 trường cần truy vấn.
Tại Total: đối với hai trường làm tiêu đề hàng và cột ta chọn Group by. Đối với trường cần thống kê dữ liệu ta chọn các hàm thống kê
Tại Crosstab: chọn một trường Row Heading, một trường Column Heading. Đối với cột cần thống kê dữ liệu chọn Value.
Hình 3.15: Màn hình thiết kế truy vấn thống kê nam, nữ theo khu vực.
Chú ý: Khi chạy các truy vấn Select Query, Crosstab Query thì chúng ta thấy kết quả trả lại là một bảng dữ liệu.
3. Action Query (truy vấn hành động)
Đây là loại truy vấn mà nó sẽ tạo ra sự thay đổi dữ liệu trong Table. Vì vậy muốn xem được kết quả của nó ta phải vào thành phần (ngăn) Tables.
Truy vấn hành động gồm các loại sau:
3.1. Make Table Query
Chức năng: Tạo ra một bảng dữ liệu mới, có tính dự phòng trích rút dữ liệu từ một hoặc nhiều bảng có quan hệ với nhau trong một CSDL, thoả mãn những điều kiện nào đó.
Bước 1: Dùng Select Query để tạo ra bảng dữ liệu thoả mãn điều kiện.
Bước 2: Vào Query/ Make-Table Query… (hoặc chọn biểu tượng trên thanh công cụ Query Type / Make-Table Query).
Hình 3.16: Hộp thoại tạo bảng mới.
Table Name: nhập tên bảng
Current Database: lưu trong CSDL hiện thời
Another Database: lưu sang CSDL khác (ở File Name gõ đường dẫn tới CSDL khác).
Ví dụ: dùng Make-Table Query tạo ra Table LuuDiem gồm các trường HoDem, Ten, NgaySinh, NoiSinh, MaKV, TongDiem.
3.2. Update Query
Chức năng: Dùng để sửa đổi hàng loạt dữ liệu trong các trường của Table theo điều kiện xác định.
Bước 1: Chọn bảng rồi chọn các trường cần sửa DL hoặc tham gia vào biểu thức điều kiện
Bước 2: Mở Query/ Update Query (hoặc chọn biểu tượng Query Type/ Update Query trên thanh công cụ).
Tại Field: chọn trường cần tính toán.
Tại Update to: nhập công thức cần cập nhật cho trường.
Tại Criteria: nhập điều kiện cần cập nhật..
Chú ý: Nếu không xác định điều kiện thì tất cả dữ liệu trong trường sẽ bị sửa.
Ví dụ: Cộng thêm 2.5 điểm vào cột TongDiem trong Table LuuDiem cho các thí sinh ở KV3.
3.3. Delete Query
Chức năng: Dùng để xoá các bản ghi trong bảng dữ liệu, thoả mãn các điều kiện đề ra.
Bước 1: Chọn bảng rồi chọn các trường tham gia vào biểu thức điều kiện
( thành lập biểu thức điều kiện để xoá các bản ghi)
Bước 2: Chọn Query/ Delete Query (hoặc chọn biểu tợng Query Type/ Delete Query ).
Chú ý: Nếu không xác định điều kiện thì tất cả dữ liệu trong bảng sẽ bị xóa.
Ví dụ: Xoá tất cả các thông tin của các thí sinh ở KV1 trong Table LuuDiem.
3.4. Append Query
Chức năng: Dùng để ghép nối các bản ghi của hai bảng dữ liệu có cùng cấu trúc, thoả mãn những điều kiện nào đó.
Bước 1: Tạo truy vấn chọn trên các bảng dữ liệu nguồn.
Bước 2: Chọn Query/ Append Query (hoặc chọn biểu tượng Query Type/ Append Query).
Bước 3: Chọn bảng dữ liệu đích tại hộp thoại Append.
Hình 1.5: Hộp thoại khai báo bảng đích.
Chương 3: Query - Truy vấn(phần cuối)
II. Một số hàm trong Access
1- Hàm xử lý dữ liệu Text
Lcase(Text): chuyển thành dạng chữ thường
Ví dụ: Lcase(“CHao cac Ban”) = “chao cac ban”.
Ucase(Text): chuyển thành dạng chữ hoa
Ví dụ: Ucase(“CHao cac Ban”) = “CHAO CAC BAN”.
Len(Text): trả về số kí tự có trong xâu
Ví dụ: Len(“Chao cac ban”) = 12
Left(Text, N): lấy N ký tự bên trái xâu
Ví dụ: Left(“Chao cac ban”,3) = “Cha”
Right(Text, N): lấy N ký tự bên phải xâu
Ví dụ: Right(“Chao cac ban”, 7) = “cac ban”
Mid(Text, I, N): Lấy N ký tự từ vị trí I của xâu.
Ví dụ: Mid(“Chao cac ban”, 4,9) = “o cac ban”
InStr(Text1, Text2): trả về vị trí xuất hiện của xâu Text2 trong xâu Text1
Ví dụ: InStr (“Khoa”, “ho”) = 2
InStr (“Khoa”, “o”) = 3
InStr (“Khoa”, “ha”) = 0 (không xuất hiện)
Space(N): tạo xâu chứa N dấu cách
Ltrim(Text): bỏ ký tự trống bên trái xâu
Ví dụ: Ltrim(“ Chao cac ban”) = “Chao cac ban”
Rtrim(Text): bỏ ký tự trống bên phải xâu
Ví dụ: Rtrim(“ Chao cac ban ”) = “ Chao cac ban”
Val(Text): đổi xâu dạng số về số.
Ví dụ: Val(“123”) =123
Chú ý: Đối số là dữ liệu xác định, hoặc tên trường, biểu thức có kiểu Text.
2- Hàm xử lý dữ liệu Number
Abs(Number): trị tuyệt đối
Ví dụ: Abs(-7) = 7
Fix(Number): trả về số nguyên
Ví dụ: Fix(6.78) = 6
Fix(-6.78) = -6
Int(Number): trả về số nguyên không vượt qua nó.
Ví dụ: Int(6.78) = 6
Int(-6.78) = -7
Sqr(Number): trả về căn bậc hai
Ví dụ: Sqr(4) = 2
Sgn(Number): kiểm tra dấu
Trả về giá trị = 1: là số dương
Trả về giá trị = 0: là số âm
Ví dụ: Sgn(-2) = 0
Sgn (8) = 1
Str(Number): chuyển số thành xâu
Ví dụ: Str(9.5) = “9.5”
Format(Number,”định dạng”): định dạng rồi trả về kiểu xâu
“0.00”: định dạng 2 chữ số thập phân
“0.000”: định dạng 3 chữ số thập phân
Ví dụ: Format(9.582, ”0.00”) = “9.58”.
Chú ý: Đối số là dữ liệu xác định, hoặc tên trường, biểu thức có kiểu Number.
3- Hàm xử lý dữ liệu Date/Time
Day(Date/Time): trả về ngày
Ví dụ: Day(#22/05/2004#) = 22
Month(Date/Time): trả về tháng
Ví dụ: Month(#22/05/2004#) = 5
Year(Date/Time): trả về năm
Ví dụ: Year(#22/05/2004#) = 2004
Weekday(Date/Time): trả về kết quả là một số từ 1 – 7 biểu thị ngày trong tuần
Format(Date/Time,'định dạng'): định dạng rồi trả về kiểu xâu
Ví dụ: Format(#22/05/2004#, ”mm – yyyy”) = “05 – 2004”
Chú ý: Đối số là dữ liệu xác định, hoặc tên trường có kiểu Date/Time
Date(): trả về ngày tháng năm hiện tại của hệ thống
Now(): trả về ngày tháng năm giờ hiện tại của hệ thống
Time(): trả về giờ hiện tại của hệ thống
Chú ý: Hàm Time(), Date(), Now() không có đối số
4- Các hàm thống kê
Ta kí hiệu Expr: biểu thức
Sum(Expr): Tính tổng các giá trị trong biểu thức.
Tính tổng số tiền
Ví dụ: Sum([SoLuong]*[DonGia]) hay Sum([ThanhTien])
Avg(Expr): Tính trung cộng các giá trị trong biểu thức.
Tính trung bình của tổng điểm
Ví dụ: Avg([TongDiem]) hay Avg([DToan] + [DLy] + [DHoa])
Max(Expr): lấy giá trị lớn nhất.
Lấy tổng điểm cao nhất
Ví dụ: Max([TongDiem])
Min(Expr): lấy giá trị nhỏ nhất.
Count(Expr): đếm các bản ghi của trường được chọn (không đếm bản ghi rỗng).
5- Hàm lựa chọn
IIF (Điều_kiện, Giá_trị_1, Giá_trị_2)
Trả về Giá_trị_1: nếu điều kiện đúng
Giá_trị_2: nếu điều kiện sai
Ví dụ: IIF (X mod 2 = 0, “Số chẵn”, “Số lẻ”)
IIF ([TongDiem] < 19, “Trượt”, “Đỗ”)
6- Hàm kiểm tra dạng dữ liệu
IsNull (X): kiểm tra X có rỗng không
True: rỗng
False: không rỗng
IsNumeric (X): kiểm tra X có phải dạng số không
True: là dạng số
False: không phải dạng số
Ví dụ: IsNumeric(10)= True
IsNumeric(“Hello”)= False
IsDate (X): kiểm tra X có phải dạng ngày tháng không
True: là dạng ngày tháng
False: không phải dạng ngày tháng.
Chương 4: form – mẫu biểu
Khái niệm
Được dùng vào mục đích thân thiện hoá thao tác nhập liệu, trên Form ta có thể sửa và xoá dữ liệu được lưu trữ trong các bảng.
(Form là một cửa sổ, cho phép ta thể hiện dữ liệu bằng các công cụ điều khiển đồ hoạ một cách trực quan).
Ngoài ra Form còn tổ chức giao diện của chương trình gồm thanh thực đơn, các nút lệnh điều khiển việc thực hiện ứng dụng.
Các dạng Form
Single Column: mẫu biểu dạng cột.
Hình 4.1: Mẫu biểu thể hiện dữ liệu Table KhuVuc.
Tabular: mẫu biểu dạng bảng.
Hình 4.2: Mẫu biểu thể hiện dữ liệu Table DiemTS.
Main/Subform: trong một Form có chứa một Form khác gọi là Subform cho phép cùng lúc hiển thị, cập nhật dữ liệu của nhiều bảng.
Hình 4.3: Mẫu biểu thể hiện dữ liệu của Table KhuVuc và Table DiemTS.
Trong MS Access
Design View: mẫu biểu trắng, tự ta phải thiết kế.
Form Wizard: Tạo các dạng mẫu biểu theo sự hướng dẫn của Access. Người dùng có thể quyết định một số đặc trưng của Form
Các trường thể hiện trên Form
Hình thức trình bày
Các hiển thị dữ liệu...
Auto Form: tạo mẫu biểu tự động
Ta chỉ cần chọn Table hoặc Query nguồn. Access sẽ tự động thực hiện mọi thao tác kế tiếp. Columnar: mẫu biểu dạng cột
Tabular: mẫu biểu dạng bảng
DataSheet: mẫu biểu dạng bảng đường lưới
Chart Wizard: tự động tạo biểu đồ thể hiện dữ liệu trong cơ sở dữ liệu. Quyết định một số tham số:
Thông tin trục tung, trục hoành
Hình thức của biểu đồ.
Pivot Table Wizard: cho phép đưa bảng tính Excel, có thể tính toán khi đang làm việc trên Form.
Các loại Form
Mẫu biểu dữ liệu: hiển thị dữ liệu trong Table hoặc Query.
Mẫu biểu hội thoại: hỏi đáp, tìm kiếm dữ liệu theo điều kiện.
Tạo Form Wizard
Cách 1: New/Form Wizard
Cách 2: Chọn Create form by using wizard.
Hình 4.4: Cửa sổ tạo mới Form.
Chương 4: form – mẫu biểu(phần 2 - tiếp)
Hình 4.6: Cửa sổ chọn các kiểu liên kết.
Form with subforms: tạo Form phụ nằm trong Form chính
Liked forms: tạo Form độc lập được liên kết qua nút lệnh.
Tạo Form Design View
1. Các thành phần của Form
Form Header: tiêu đề trên của Form.(Thường chứa các Label)
Detail: phần chính của Form. Đây là phần lặp lại với mỗi bản ghi
(Thường chứa các Label, Text Box)
Muốn dữ liệu thể hiện ở dạng cột ta dàn dọc các đối tượng điều khiển, còn muốn thể hiện ở dạng bảng ta dàn ngang các đối tượng điều khiển.
Form Footer: tiêu đề dưới của Form.
(Thường chứa các nút lệnh hay các ô dữ liệu tính toán thống kê )
Page Header: tiêu đề trên của trang khi in Form.
Page Footer: tiêu đề dưới của trang khi in Form.
Hình 4.7: Cửa sổ Form ở chế độ thiết kế (Design).
Chú ý:
Tiêu đề trang không xuất hiện khi chạy Form.
Để bật/ tắt các thành phần của Form ta vào Menu View:
Form Header/ Footer: bật/ tắt tiêu đề của Form.
Page Header/ Footer: bật/ tắt tiêu đề của trang khi in Form.
2. Một số thuộc tính của Form
Để thay đổi thuộc tính của Form ta thực hiện các cách sau:
Cách 1: kích phải chuột lên tiêu đề của Form/ Properties.
Cách 2: vào thực đơn View/ Properties.
a. Record Source
Dùng để chọn nguồn dữ liệu: có thể là Table hoặc Query chứa các trường cần hiển thị trên Form.
b. Thuộc tính Default View
Dùng thể hiện các dạng Form :
Single Form: hiện một bản ghi trên Form.
Continuous Form: hiện nhiều bản ghi trên Form.
Datasheet: hiện các bản ghi lên form như một bảng dữ liệu.
c. Các thuộc tính khác của Form
Auto Center: Form mở ra nằm ở vị trí giữa màn hình.
Auto Resize: Form mở ra luôn trở về kích thước thiết lập ban đầu.
Caption: đặt tiêu đề cho Form.
Scroll Bars: bật/ tắt thanh cuộn cho Form.
Record Selections: bật/ tắt công cụ để chọn các bản ghi (bên trái Form).
Navigation Buttons: bật/ tắt công cụ chứa các nút di chuyển và thêm các bản ghi.
Dividing Lines: bật/ tắt đường lới ngăn cách các thành phần của Form.
Control Box: bật/ tắt các nút điều khiển Form (thu nhỏ, phóng to, đóng,...)
Picture: ảnh nền của Form
Popup: Form được mở luôn nằm trên các Form khác
Modal: không thể kích hoạt bất cứ vị trí nào ngoài phạm vi Form
Menu bar: thực đơn ngang xuất hiện khi mở Form
Toolbar: thanh công cụ xuất hiện khi mở Form
Shortcut menu bar: thực đơn hiện khi nhấn chuột phải
3. Định dạng Font, Size, Color cho các đối tượng
Chọn đối tượng trên Form cần định dạng (đề phím Shift để chọn nhiều đối tượng cùng lúc).
Cách 1: vào Menu View để bật thanh Formatting (Form/ Report).
Cách 2: thay đổi trực tiếp thuộc tính định dạng trong cửa sổ Properties.
Ví dụ: một số thuộc tính trong thẻ Format
Back Color: mầu nền
Force Color: mầu chữ
Font Name: chọn font chữ
Font Size: chọn cỡ chữ.
4. Các đối tượng điều khiển trên Form
Hình 4.8: Các công cụ trên Toolbox.
Ý nghĩa của các công cụ
Select Objects: chọn đối tượng (đối tượng điều khiển)
Command Wizard: bật/tắt chức năng trợ giúp
Label: hộp nhãn (tiêu đề chú giải)
Text box: hộp dữ liệu (chứa dữ liệu của trường hay kết quả của một biểu thức tính toán)
Option Group: tạo một nhóm các giá trị để lựa chọn
Toggle Button: dạng nút bập bênh
Option Buton: nút chọn
Check Box: hộp kiểm
Combo Box: hộp dữ liệu (hộp liệt kê thả)
List Box: hộp danh sách (hộp liệt kê)
Command Buton: nút lệnh
Image: chèn hình ảnh
Unbound Object Frame: chèn đối tượng dạng OLE (không buộc dữ liệu)
Bound Object Frame: chèn đối tượng dạng OLE (có buộc dữ liệu)
SubForm/Subreport: chèn Form phụ
Page Break: dấu ngắt trang
Tab Control: tạo các trang (thẻ)
Line: vẽ đường thẳng
Rectangle: vẽ hình chữ nhật
More Controls: chèn đối tượng ActiveX.
Để đặt một đối tượng điều khiển lên Form ta phải bật hộp công cụ Tool Box:
Cách 1: vào thực đơn View/ Tool Box
Cách 2: chọn biểu tượng trên hộp công cụ
Chú ý Hộp công cụ chỉ xuất hiện ở chế độ Form Design
Muốn thể hiện dữ liệu bằng đối tượng điều khiển đồ hoạ nào đó, ta kéo đối tượng từ hộp Tool Box lên Form. Nếu không thấy đối tượng đó ta chọn biểu tượng .
Chương 4: form – mẫu biểu(phần 3 - tiếp)
4.1. Đối tượng Text Box
Đây là đối tượng điều khiển gồm cả 3 loại:
Unbound: không buộc (không có nguồn dữ liệu khai báo ở Control Source)
Bound: bị buộc (có nguồn dữ liệu khai báo ở Control Source)
Calculated Control: giá trị của nó được tính toán qua biểu thức.
Thiết lập Biểu thức theo cú pháp sau ở thuộc tính Control Source = Biểu thức
Ví dụ: giả sử ta có hai trường dữ liệu trong bảng đã được kéo vào Form là Đơn giá, Số lượng ứng với hai Text Box có tên TxtDonGia và TxtSoLuong. Để tính Thành tiền bằng một Text Box ta phải nhập công thức sau trong thuộc tính
Control Source = [TxtDonGia]*[TxtSoLuong]
Trong trường hợp muốn buộc dữ liệu vào trường của bảng hoặc truy vấn ta có các cách sau:
Cách 1: để đặt một trường vào đối tượng Text Box ta đưa tên trường vào thuộc tính Control Source trong bảng Properties.
Cách 2: lấy các trường nằm trong hộp Field List.
Để bật/ tắt hộp Field List ta vào View/ Field List (hoặc chọn biểu tượng trên thanh công cụ).
Hình 4.9: Gắn trường dữ liệu cho Text Box.
4.2. Đối tượng Command Button
Nút lệnh là một đối tượng điều khiển hữu dụng, bên trong nó có chứa các hành động. Ta chỉ quan tâm cách tạo Command Button bằng công cụ Control Wizard (có sẵn các hành động của nút lệnh).
Bước 1: Bật chức năng Control Wizard trên hộp công cụ Tool Box.
Bước 2: Đưa nút lệnh Command Button trong hộp Tool Box vào Form
Theo hướng dẫn của Wizard như sau:
Hình 4.10: Chọn các hành động của Command Button.
Categories: chọn các mục (chủng loại)
Actions: liệt kê các hành động trong từng mục cụ thể.
Giả sử ta chọn hành động Close Form trong Form Operation để đóng mẫu biểu hiện thời
Nhấn Next để sang bước tiếp theo
Hình 4.11: Chọn cách hiển thị trên nút lệnh.
Text: gõ kí tự hiển thị trên nút lệnh
Picture: chọn biểu tượng (hình ảnh) hiển thị trên nút lệnh
Chọn Show All Pictures liệt kê các biểu tượng có sẵn trong Access
Chọn nút Browse... để chọn các biểu tượng khác.
Nhấn Next để sang bước tiếp theo
Hình 4.12: Đặt tên cho nút lệnh.
Chọn nút lệnh Finish để kết thúc.
Các thuộc tính của nút lệnh
Name: tên của nút lệnh
Caption: tiêu đề cho nút bằng chữ.
Picture: đặt một ảnh nền cho nút.
Các thuộc tính sự kiện (Event) của nút lệnh
On Enter: sự kiện khi nhấn phím Enter.
On Click: sự kiện khi kích chuột.
On Dbl Click: sự kiện khi kích đúp chuột.
Các sự kiện trên có thể nhận các đối số
Event Procedure: chạy một thủ tục mã lệnh.
Macro: chạy một Macro.
= Hàm(danh sách đối số): chạy một hàm (Function).
Để kích hoạt nút lệnh bằng phím tắt Alt + ký tự bất kỳ, ta thêm vào trước ký tự đó dấu & trong thuộc tính Caption của nút.
Dưới đây là bảng liệt kê các hành động trong các mục khác:
Categories
Action
Record Navigation
(dùng để di chuyển con trỏ tới Record, tìm kiếm các Record)
Find Record: tìm kiếm các Record
Find Next: tìm tiếp
Go to First Record: nhảy tới Record đầu tiên.
Go to Last Record: nhảy tới Record cuối cùng.
Go to Next Record: nhảy tới Record kế tiếp.
Go to Previoust Record: nhảy tới Record trước đó.
Record Operations
(các hành động xử lý Record)
Add New Record: thêm Record mới
Delete Record: xoá Record hiện hành
Save Record: lưu Record hiện hành.
Form Operations
(các hành động xử lý Form)
Edit Form Filter: sửa chữa điều kiện lọc các Record hiển thị trong Form.
Apply Form Filter: thực hiện lọc các Record hiển thị trong Form.
Close Form: đóng Form hiện hành
Open Form: mở một Form khác.
Report Operations
(các hành động xử lý Report)
Preview Report: in báo cáo ra màn hình
Print Report: in báo cáo ra giấy qua máy in
Miscellaneous
(pha tạp)
Print Table: in dữ liệu trên Table
Run Macro: chạy Macro
Run Query: chạy Query
Chương 4: form – mẫu biểu(phần 4 - tiếp)
4.3. Đối tượng ComboBox
Là hộp danh sách trải xuống khi ta muốn chọn một trong nhiều giá trị nhập dữ liệu vào trường, hoặc thể hiện để tìm kiếm.
Các bước tạo Combo Box bằng Control Wizard
Bước 1: bật chế độ Control Wizard và kéo Combo Box từ hộp công cụ Toolbox.
Bước 2: chọn cách đặt giá trị lên Combo Box gồm một trong ba kiểu:
I want the Combo box to lookup the value in a table or query: lấy giá trị cho Combo Box từ các trường của bảng hoặc truy vấn bất kỳ.
I will type in the value that I want: tự nhập giá trị cho Combo Box.
Find a record on my form....: tìm các bản ghi trên Form trùng với giá trị chọn trong Combo Box.
Bước 3: chọn các trường cần lấy giá trị hoặc nhập giá trị cho Combo Box.
Khi sử dụng Combo Box ta thường thay đổi các thuộc tính sau:
Row Source Type: kiểu nguồn dữ liệu.
Table/ Query: thể hiện dữ liệu của các trường trong bảng hoặc truy vấn.
Value List: tự liệt kê danh sách các giá trị.
Field List: liệt kê tên các trường của bảng hoặc truy vấn.
Row Source: chọn bảng hoặc truy vấn chứa dữ liệu cần lấy. Trong trường hợp là Value List ta lịêt kê dữ liệu cách nhau bởi dấu ;
Column Count: chọn số cột của Combo Box.
Column Heads: ẩn/ hiện tiêu đề của các trường trong Combo Box.
4.4. Đối tượng Option Group
Là tập hợp nhiều đối tượng điều khiển thuộc trong các loại: Option Button, Check Box, Toggle Button
Nếu dùng Wizard, cần xác định các thông tin sau:
Bước 1: chọn các nhãn
Bước 2: gán giá trị tương ứng với từng mục chọn (ngầm định là 1, 2, 3,...)
Bước 3: chọn kiểu nút, kiểu khung
Bước 4: đặt tiêu đề của nhóm.
4.5. Đối tượng Subform/Subreport
Là một đối tượng cho phép ta có thể chèn một Form phụ lên một Form chính, nhằm thể hiện dữ liệu của hai bảng có quan hệ với nhau theo kiểu One to Many.
Các bước tạo Subform/ Subreport
Bước 1: tạo Form dạng Column cho bảng phía một.
Bước 2: tạo Form dạng Tabular cho bảng phía nhiều.
Bước 3: mở Form dạng Column ở chế độ Design rồi chọn biểu tượng
Subform/ Subreport từ hộp công cụ Toolbox đặt vào phần Detail.
Bước 4: chọn Form dạng Tabular làm ở bước 2.
Chương 5: Report – Báo biểu
I. Khái niệm
Dùng để in ấn thể hiện dữ liệu dưới nhiều hình thức phong phú. Nó có ưu thế hơn hẳn so với các phương pháp in dữ liệu khác
Có khả năng sắp xếp và phân nhóm dữ liệu (thống kê các nhóm dữ liệu)
Có thể nhúng hình ảnh, báo biểu con
Thực hiện phép toán phức tạp trong một nhóm cũng như nhiều nhóm
1. Các Report trong Access
Design View: Tự thiết kế
Report Wizard
Ta cần phải chọn các mục sau
Chọn nguồn dữ liệu (Table hoặc Query)
Chọn trường trong dữ liệu nguồn
Nếu muốn tạo báo cáo phân nhóm thì xây dựng trường cần phân nhóm
Sắp xếp thứ tự nếu cần
Dạng và kiểu trình bày của báo cáo.
Dùng trợ giúp (Wizard) có thể tạo báo cáo nhanh nhưng kích cỡ thường lớn, khuôn dạng và font chữ theo ngầm định của Access nên thường phải sửa thiết kế
Auto Report: Columnar (dạng cột), Tabular (dạng bảng)
Tự động đưa ra báo cáo khi đã chọn nguồn dữ liệu
Chart Wizard: dạng đồ thị
Ta cần phải chọn các mục sau:
Chọn các trường cần xuất hiện trong biểu đồ
Chọn dạng trình bày của biểu đồ
Sắp đặt thông tin trên các trục toạ độ
Đặt tiêu đề của biểu đồ
Label Wizard: cho phép chọn các trờng tên, địa chỉ,.. rồi định dạng chúng để in nhãn thư (Access cung cấp một số loại nhãn thư phổ biến)
Ta cần phải chọn các mục sau:
Xác định kích cỡ và cách bố trí các nhãn trên giấy
Chọn Font chữ
Các trường cần lấy thông tin
Trường cần sắp xếp.
2. Các thành phần của Report
Thành phần
ý nghĩa
Tiêu đề báo cáo
(Report Header)
Các điều khiển trong thành phần này sẽ xuất hiện ở trang đầu tiên (chỉ một lần) trong báo cáo.
Tiêu đề trang
(Page Header)
Các điều khiển trong thành phần này sẽ xuất hiện ở đầu mỗi trang báo cáo.
Chi tiết
(Detail)
Thể hiện các chi tiết dữ liệu của báo cáo.
Tiêu đề trang
(Page Footer)
Các điều khiển trong thành phần này sẽ xuất hiện ở cuối mỗi trang báo cáo.
Tiêu đề báo cáo
(Report Footer)
Các điều khiển trong thành phần này sẽ xuất hiện ở trang cuối cùng (chỉ một lần) trong báo cáo.
Ngoài các thành phần cơ bản trên trong báo cáo còn có thêm 2 thành phần nữa
(chỉ sử dụng khi báo cáo thống kê theo nhóm dữ liệu)
Thành phần
ý nghĩa
Đầu nhóm
(Group Header)
Các điều khiển nằm trong thành phần này sẽ xuất hiện ở đầu mỗi nhóm báo cáo
Cuối nhóm
(Group Footer)
Các điều khiển nằm trong thành phần này sẽ xuất hiện ở cuối mỗi nhóm báo cáo
3. Các thuộc tính của Report
Nói chung cũng giống như các thuộc tính của Form.
4. Các sự kiện của Report:
On Open: khi mở Report
On Close: khi đóng Report
On Active: khi cửa sổ chứa Report là cửa sổ hiện hành
On Deactive: khi cửa sổ chứa Report không còn là cửa sổ hiện hành
On No Data: nguồn dữ liệu không có bản ghi nào
Chương 5: Report – Báo biểu(bài 2- tiếp)
5. Trình bày báo cáo
Chèn ngày giờ
Chọn vị trí cần chèn, rồi vào thực đơn Insert/Date and Time... xuất hiện hộp thoại sau:
Include Date: chèn ngày
Include Date: chèn giờ
Hình 4.1: Hộp thoại chèn ngày giờ.
Chèn số trang trên Report
Vào thực đơn Insert/Page Numbers xuất hiện hộp thoại sau:
Hình 4.2: Hộp thoại chèn số trang.
Format: dạng hiển thị
Page N: chỉ hiển thị số trang
Page N of M: hiển thị số trang / tổng số trang
Position: vị trí hiện số trang
Top of Page [Header]: phía đầu trang
Bottom of Page [Footer]: phía cuối trang
Aligment: căn chỉnh
Left: hiển thị số trang ở lề trái mỗi trang
Center: hiển thị số trang ở giữa mỗi trang
Right: hiển thị số trang ở lề phải mỗi trang
Inside: hiển thị số trang ở lề trái trang lẻ, ở lề phải trang chẵn.
Outside: hiển thị số trang ở lề phải trang lẻ, ở lề trái trang chẵn.
Show Number on First Page: đánh số bắt đầu từ trang đầu tiên. Nếu không chọn
thì đánh số bắt đầu từ trang số 2 trở đi.
Sắp xếp và phân nhóm dữ liệu
Cho phép nhóm, tổng cộng dữ liệu theo từng loại khác nhau. Có thể phân nhóm theo nhiều trường.
Ví dụ: Nhóm theo khu vực, tỉnh/ thành, hoặc theo giới tính,…
Vào thực đơn View/Sorting and Grouping hoặc chọn biểu tượng trên thanh công cụ
Hình 4.3: Hộp thoại sắp xếp và phân nhóm.
Field/Expression: chọn Field / Biểu thức làm chỉ tiêu phân nhóm hay sắp xếp dữ liệu cho báo cáo.
Lưu ý: Nếu là biểu thức thì phải có dấu = ở đầu.
Short Order: chọn hình thức sắp xếp dữ liệu
Acending: sắp xếp dữ liệu theo thứ tự tăng dần.
Descending: sắp xếp dữ liệu theo thứ tự giảm dần.
Group Properties: quy định các thuộc tính của nhóm
Group Header: ẩn /hiện (Yes/No) tiêu đề đầu nhóm
Group Footer: ẩn /hiện (Yes/No) tiêu đề cuối nhóm.
Group On: quy định phương thức xử lý lập nhóm cho các Field/Expression làm chỉ tiêu phân nhóm
Each Value: lấy toàn bộ giá trị của Field/Expression làm chỉ tiêu phân nhóm
Group Interval: quy định khoảng giá trị có hiệu lực cho phương thức xử lý lập nhóm trên tại mục Group On
(Nếu tại Group On là Each Value thì tại mục Group Interval phải quy định là 1)
Keep Together: một số quy định trình bày khi in.
No: in theo chế độ mặc nhiên
Whole Group: ngắt trang khi hết nhóm
With First Detail: in tiêu đề của đầu nhóm và dòng chi tiết đầu tiên của nhóm trên cùng một trang.
Chương 5: Report – Báo biểu(tiếp)
Định dạng hiển thị dữ liệu theo điều kiện
Cho phép định dạng màu chữ, dáng chữ, màu nền. Tối đa được 3 điều kiện
Ví dụ: muốn định dạng dữ liệu của các đối tượng điều khiển theo điều kiện
Bước 1: chọn đối tượng
Bước 2: vào thực đơn Format/Conditional Formatting... Xuất hiện hình sau:
Hình 4.4: Hộp thoại định dạng dữ liệu theo điều kiện.
Add: thêm điều kiện
Delete: xoá điều kiện
Condition: điều kiện
Field Value Is: đặt điều kiện cho giá trị của trường
Expresstion Is: đặt điều kiện cho biểu thức
Betweent: nằm trong khoảng
Not betweent: nằm ngoài khoảng
Equal to: bằng
Not equal to: không bằng
Greater than: lớn hơn
Greater than or equal to: lớn hơn hoặc bằng
Less than: nhỏ hơn
Less than or equal to: nhỏ hơn hoặc bằng.
Bước 3: Nhấn OK để kết thúc.
Tự động đánh số thứ tự
Tạo hộp TextBox đặt tại phần Detail, rồi khai báo các thuộc tính như sau:
Hình 4.2: Cửa sổ Properties của Text Box.
Control Source: nguồn dữ liệu cho đối tượng, gõ vào = 1 (bắt đầu từ 1)
Running Sum: cách đánh thứ tự
No: số không tự động tăng (chỉ hiện số 1)
Over Group: đánh số thứ tự theo từng nhóm.
Over All: đánh số thứ tự cho tất cả các dòng dữ liệu trên báo biểu.
Một số hàm thường sử dụng trong thiết kế Report
[Page]: chèn số trang hiện thời của báo biểu
[Pages]: chèn tổng số trang của báo biểu
Date(): chèn ngày tháng năm hiện thời của hệ thống
Now(): chèn ngày tháng năm, giờ hiện thời của hệ thống
Các hàm thống kê, tổng cộng dữ liệu: Count, Sum, …
Chương 6: MaCro – Tập lệnh
I. Khái niệm
Tập lệnh là một công cụ mà Microsoft Access cung cấp cho người sử dụng để có thể tạo ra các hành động đơn giản trong lúc xây dựng ứng dụng mà không quan tâm đến ngôn ngữ lập trình VBA. Bên trong tập lệnh có chứa các hành động, thứ tự các hành động này thông thường được thực hiện tuần tự từ trên xuống dưới, tuy nhiên chúng ta cũng có thể kiểm tra một điều kiện nào đó phải đúng trước khi thực hiện các hành động này (nếu cần)
Macro là tập hợp các lệnh (hành động) đã được sắp xếp quy định sẵn, giúp ta có thể tự động hoá một quá trình xử lý nào đó.
Ví dụ:mở mẫu biểu, báo biểu được chỉ định trước…
Ngoài ra, sử dụng tập lệnh còn giúp ta xây dựng hệ thống thực đơn cho giao diện Form, liên kết các đối tượng trong CSDL lại với nhau tạo thành ứng dụng hoàn chỉnh.
Trong tập lệnh có chứa các thành phần sau:
Hình 5.1: Màn hình thiết kế tập lệnh
Action: cho phép chọn các hành động có trong tập lệnh
Comment: ghi chú cho các hành động. Thông thường chúng ta nên ghi rõ ràng cho các động để về sau khi quay lại sửa chúng ta dễ dàng hiểu ngay ý nghĩa của các hành động này.
Action Arguments: thể hiện danh sách các tham số tương ứng của hành động đã chọn trong cột Action ở phía trên. Trong danh sách các tham số có một số tham số có thể không cần khai báo hoặc để mặc định, nhưng ngược lại có một số tham số bắt buộc phải khai báo thì lệnh mới có thể thực hiện được.
Ví dụ:hành động OpenForm thì ở Form Name bắt buộc phải khai báo tên mẫu biểu cần mở.
Bảng tóm tắt các hành động theo từng công việc
Các hành động
Công việc
AddMenu, SetMenuItem
Tạo thực đơn cho ứng dụng, làm thay đổi trạng thái của một chức năng trong thực đơn.
RunCommand
Thực hiện một lệnh trong thực đơn hệ thống của MS Access.
OpenQuery, RunSQL, RunMacro, RunCode
Thực hiện một truy vấn, câu lệnh SQL, tập lệnh hoặc một hàm viết bằng ngôn ngữ VBA.
RunApp
Thi hành một ứng dụng khác đã cài trên máy.
CancelEvent, StopMacro, StopAllMacro, Quit
Huỷ một biến cố, ngừng tập lệnh, thoát khỏi MS Access.
OutputTo, SendObject
Gửi một đối tượng của MS Access ra ứng dụng khác.
TransferDatabase, TransferSpreadsheet, TransferText
Chuyển đổi dữ liệu qua lại giữa MS Access và các ứng dụng khác.
Echo, HourGlass, Msgbox, SetWarnings
Hiển thị các thông bảo trên màn hình.
SendKeys
Gửi các phím được nhấn vào ứng dụng.
ShowToolbar
Hiện hoặc ẩn các thanh công cụ.
Beep
Phát tiếng kêu bíp.
GoToRecord, FindRecord, FindNext
Di chuyển bản ghi, tìm kiếm dữ liệu
GoToPage, GoToControl
Di chuyển qua các trang, các điều khiển trên mẫu biểu.
Apply Filter
Lọc dữ liệu
SelectObject, CopyObject, DeleteObject, Rename, Save
Chọn đối tượng, sao chép, xoá, đổi tên, lưu đối tượng.
MoveSize, Maximize, Minimize, Restore
Di chuyển, thay đổi kích thước cửa sổ.
OpenTable, OpenQuery, OpenForm, OpenReport, OpenModule, Close
Mở và đóng các đối tượng trong MS Access.
SetValue
Gán giá trị cho một điều khiển hoặc thuộc tính của một điều khiển.
Requery, ShowAllRecord
Cập nhật lại dữ liệu các điều khiển, hiện lại các bản ghi đã lọc
OpenDiagram, OpenView, OpenStoreProcedure
Truy cập trực tiếp đến các đối tượng của SQL Server
Ví dụ: Tạo hành động hiển thị thông báo trên màn hình.
Hình 5.2: Màn hình thiết kế hành động MsgBox.
Message: nội dung thông báo
Beep: có phát tiếng “bíp” không
Type: biểu tượng trong hộp thông báo
Critical
Warning?
Warning!
Information
Title: tiêu đề thông báo (nếu bỏ trống sẽ hiện thị mặc định là Microsoft Access)
Hình 5.3: Màn hình kết quả khi thi hành Macro.
Chương 6: MaCro – Tập lệnh(tiếp)
1. Tạo mới và thi hành một Macro
a. Tạo mới Macro
Từ cửa sổ Database chọn thành phần Macros, rồi chọn New
b. Thi hành Macro
Từ cửa sổ Database chọn Macro cần thi hành rồi chọn Run hoặc chọn biểu tượng trên thanh công cụ
c. Sửa Macro
Từ cửa sổ Database chọn Macro cần sửa rồi chọn Design. Ta có thể thực hiện các thao tác sau:
Thêm hành động, chọn lệnh Insert Rows
Xoá hành động, chọn lệnh Delete Rows
Thay đổi các tham số trong hành động
2. Tập lệnh có điều kiện Condition Macro
Là Macro có chứa các điều kiện thi hành cho từng hành động
Đặt điều kiện thi hành cho từng hành động trong Macro tại cột Condition.
Chú ý: nếu điều kiện cho Action dưới giống điều kiện của Action ngay trên thì tại cột Condition có thể viết dấu ba chấm “...”
Cách xây dựng:
Cách 1: vào thực đơn View/Conditions.
Cách 2: nhấn biểu tượng trên thanh công cụ.
3. Nhóm tập lệnh Macro Group
Là Macro chứa nhiều Macro con được phân biệt nhau bởi tên Macro Name
Thay vì tạo ra từng tập lệnh rời rạc phải lưu với nhiều tên khác nhau không tập trung trong danh sách đối tượng tập lệnh, thì chúng ta có thể gom các tập lệnh đó lại chung với nhau và chỉ lưu với một tên nhằm giảm bớt đi số lượng các tập lệnh trong danh sách đối tượng tập lệnh.
Khi quyết định gom nhóm thì phải có cùng chung các tính chất sau:
Gồm các hành động trên cùng một mẫu biểu hoặc báo biểu
Theo chức năng của các hành động
Cách thực hiện:
Cách 1: vào thực đơn View/Macro Names.
Cách 2: nhấn biểu tượng trên thanh công cụ.
Ví dụ:: Tạo ra nhóm tập lệnh DiChuyen gồm các hành động sau:
Chuyền con trỏ về bản ghi đầu
Chuyền con trỏ về bản ghi trước đó
Chuyền con trỏ tới bản ghi kế tiếp
Chuyền con trỏ tới bản ghi cuối
(Ta thấy rằng nhóm tập lệnh này có cùng chức năng di chuyển con trỏ)
Hình 5.4: Màn hình thiết kế nhóm tập lệnh DiChuyen.
Quy tắc gọi thi hành một Macro con trong Macro Group
Tên Macro Group.Tên Macro cần gọi
4. Các Macro khác
Autoexec Macro: là Macro tự động thi hành ngay sau khi mở file CSDL
Autokeys Macro: là Macro chứa các tổ hợp phím nóng (phím tắt).
Ví dụ:: ở trong cột Macro Names ta xây dựng cú pháp như sau:
5. Gắn Macro vào sự kiện của nút lệnh
Bước 1: Mở Form ở chế độ Design View
Bước 2: Mở bảng thuộc tính của nút lệnh
Chọn Event/ Chọn sự kiện / chọn Macro muốn thực hiện.
Hình 5.5: Cửa sổ Properties nút lệnh.
Hệ QTCSDL Access.
Các file đính kèm theo tài liệu này:
- DataBase.doc