1. Trang chủ
  2. » Cao đẳng - Đại học

Bài giảng Hệ quản trị cơ sở dữ liệu MS ACCESS (Ngành Công nghệ thông tin)

182 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 182
Dung lượng 3,61 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • CHƯƠNG 1 (9)
    • 1.1. Gi ớ i thi ệ u v ề H ệ qu ả n tr ị CSDL Microsoft Access (9)
      • 1.1.1. Cơ Sở Dữ Liệu (9)
      • 1.1.2. Mô hình Cơ Sở Dữ Liệu quan hệ (9)
      • 1.1.3. H ệ Qu ả n Tr ị Cơ Sở D ữ Li ệ u quan h ệ (9)
      • 1.1.4. Đặc điể m c ủ a Microsoft Access (9)
      • 1.1.5. Kh ởi độ ng Microsoft Access (10)
      • 1.1.6. Các thành ph ầ n c ủ a Microsoft Access (10)
    • 1.2. Tạo tập tin cơ sở dữ liệu (11)
    • 1.3. Các thao tác trên t ập tin cơ sở d ữ li ệ u (12)
      • 1.3.1. M ở m ột cơ sở d ữ li ệ u (12)
      • 1.3.2. Thu g ọ n và ch ỉ nh s ửa cơ sở d ữ li ệ u (Compact & Repair Database) (12)
      • 1.3.3. Tạo password (13)
      • 1.3.4. G ở b ỏ password (13)
    • 1.4. Các đối tượng trong cơ sở d ữ li ệ u (14)
  • CHƯƠNG 2 (16)
    • 2.1. Khái niệm cơ sở dữ liệu (16)
    • 2.2. Đối tượ ng Table (16)
      • 2.2.1 C ấ u trúc c ủ a Table (18)
      • 1.2.2. M ộ t s ố thu ộ c tính c ủ a Field (c ộ t ho ặc trườ ng ) (20)
      • 1.2.3. Các thao tác trên Table (26)
    • 2.3. Thi ế t l ậ p m ố i quan h ệ gi ữ a các b ả ng (28)
      • 2.3.1. Các lo ạ i quan h ệ (28)
      • 2.3.2. Cách t ạ o quan h ệ (29)
    • 2.4. Các thao tác trên b ả ng d ữ li ệ u (34)
      • 2.4.1. Sao chép dữ liệu (34)
      • 2.4.2. S ắ p x ế p d ữ li ệ u (35)
      • 2.4.3. Tìm ki ế m và thay th ế (36)
      • 2.4.4. L ọ c d ữ li ệ u (37)
  • CHƯƠNG 3 (50)
  • TRUY V Ấ N D Ữ LI Ệ U (50)
    • 3.1. Khái ni ệ m truy v ấ n d ữ li ệ u (50)
    • 3.2. Các lo ạ i truy v ấ n d ữ li ệ u (50)
    • 3.3. T ạ o truy v ấ n Select Query b ằ ng ngôn ng ữ SQL (51)
      • 3.3.1. Các bướ c th ự c hi ệ n (51)
      • 3.3.2. Một số toán tử thường dùng trong truy vấn (51)
      • 3.3.3. Select query (51)
      • 3.3.4. S ử d ụ ng các phép toán và hàm trong m ệnh đề Select (58)
      • 3.3.5. Tính toán th ố ng kê trong Select Query (62)
    • 3.4. Tạo truy vấn bằng lưới QBE (66)
      • 3.4.1. Các thành phần trong màn hình lưới QBE (66)
      • 3.4.2. M ộ t s ố thao tác cơ bản để t ạ o truy v ấ n b ằ ng QBE (67)
      • 3.4.3. Select Query (68)
      • 3.4.4. Tính toán th ố ng kê (69)
      • 3.4.5. Truy v ấ n tham s ố (72)
      • 3.4.6. Crosstab Query (73)
      • 3.4.7. Make Table Query (75)
      • 3.4.8. Append Query (76)
      • 3.4.9. Delete Query (78)
      • 3.4.10. Update Query (79)
    • CHƯƠNG 4 (88)
      • 4.1. Gi ớ i thi ệu đối tượ ng Form (88)
        • 4.1.1. Cửa sổ thuộc tính (88)
        • 4.1.2. Thành phần của một thuộc tính (89)
      • 4.2. Các thu ộc tính cơ bả n trên form (89)
      • 4.3. Thi ế t k ế Form (90)
        • 4.3.1. Thi ế t k ế Form b ằ ng Wizard (90)
        • 4.3.2. Thiết kế Form bằng design view (93)
        • 4.3.3. Các d ạng Form thườ ng g ặ p (96)
      • 4.4. Các điề u khi ể n trên form (97)
        • 4.4.1. Label (97)
        • 4.4.2. Text Box (97)
        • 4.4.3. Command Button (98)
        • 4.4.4. Check Box (100)
        • 4.4.5. Option Button và Option Group (101)
        • 4.4.6. Combo Box (102)
        • 4.4.7. List Box (102)
        • 4.4.8. Tab Control (103)
        • 4.4.9. Subform (104)
    • CHƯƠNG 5 (114)
      • 5.1. Gi ớ i thi ệ u Report (114)
      • 5.2. Các dạng của Report (114)
      • 5.3. Tạo Report bằng công cụ Report Wizard (116)
      • 5.4. Ch ỉ nh s ử a Report b ằ ng Design View (120)
        • 5.4.1. Các thành ph ầ n c ủ a Report (120)
        • 5.4.2. Thiết kế Report bằng Design view (122)
        • 5.4.3. Các điều khiển thường dùng trên Report (123)
        • 5.4.4. Các thao tác chung trên điề u khi ể n (124)
      • 5.5. M ộ t s ố k ỹ thu ật thườ ng dùng trong thi ế t k ế (125)
        • 5.5.1. Ẩ n ho ặ c hi ệ n các thành ph ầ n c ủ a báo cáo (125)
        • 5.5.2. T ạ o s ố th ứ t ự cho báo cáo (126)
        • 5.5.3. Ẩn hoặc hiện field khi trùng lắp (127)
        • 5.5.4. Đánh số trang (127)
        • 5.5.5. Ng ắ t trang (128)
    • CHƯƠNG 6 (133)
      • 6.1. Gi ớ i thi ệ u Macro (133)
      • 6.2. Khái ni ệ m thu ộc tính, hành độ ng và s ự ki ệ n (133)
        • 6.2.1. Thu ộ c tính (133)
        • 6.2.2. Hành động (133)
        • 6.2.3. Sự kiện (133)
      • 6.3. Cách t ạ o Macro (134)
      • 6.4. Các t ậ p l ệnh thườ ng dùng (136)
      • 6.5. Macro có điề u ki ệ n (138)
    • CHƯƠNG 7 (142)
      • 7.1. Gi ớ i thi ệ u Module (142)
        • 7.1.1. Visual Basic là gì (142)
        • 7.1.2. Khi nào sử dụng tập lệnh Visual Basic (142)
      • 7.2. Cách t ạ o Module (143)
      • 7.3. Các ki ể u d ữ li ệ u (146)
        • 7.3.1. Các ki ể u d ữ li ệu cơ bả n (146)
        • 7.3.2. Khai báo biến (147)
        • 7.3.3. H ằ ng và cách s ử d ụ ng h ằ ng (148)
        • 7.3.4. Ph ạ m vi ho ạt độ ng (148)
      • 7.4. Các c ấ u trúc l ệ nh (149)
        • 7.4.1. C ấ u trúc IF ... END IF (149)
        • 7.4.2. C ấu trúc điề u ki ệ n SELECT CASE ... END SELECT (150)
        • 7.4.3. C ấu trúc FOR…NEXT (152)
        • 7.4.4. Cấu trúc WHILE…WEND (153)
        • 7.4.5. Cấu trúc DOWHILE…LOOP (153)
        • 7.4.6. C ấu trúc DO…LOOP WHILE (154)
      • 7.5. M ộ t s ố hàm thông d ụ ng (154)
      • 7.6. Đối tượng DoCmd (160)
        • 7.6.1. Thiết kế màn hình di chuyển dữ liệu (163)
        • 7.6.2. Thi ế t k ế màn hình tìm ki ế m d ữ li ệ u (164)
        • 7.6.3. Thi ế t k ế màn hình thao tác d ữ li ệ u (166)

Nội dung

Giới thiệu về Hệ quản trị CSDL Microsoft Access Microsoft Access là một hệ quản trị cơ sở dữ liệu quan hệ, nó trợ giúp cho người sử dụng lưu trữ thông tin dữ liệu bên ngoài vào máy tính

Gi ớ i thi ệ u v ề H ệ qu ả n tr ị CSDL Microsoft Access

Microsoft Access là một hệ quản trị cơ sở dữ liệu quan hệ, nó trợ giúp cho người sử dụng lưu trữ thông tin dữ liệu bên ngoài vào máy tính dưới dạng các bảng và có thể tính toán, xử lý trên dữ liệu trong các bảng đã lưu trữ

Là tập hợp dữ liệu được lưu trữ một cách có tổ chức nhằm giúp việc xem, tìm kiếm, lấy thông tin được nhanh chóng và chính xác

1.1.2 Mô hình Cơ Sở Dữ Liệu quan hệ:

Dữ liệu bên ngoài được đưa vào máy tính thể hiện trong các bảng Mỗi bảng gồm nhiều cột và nhiều dòng Mỗi cột có một tên duy nhất mô tả về một thuộc tính của thực thể mà ta đang quản lý gọi là trường hoặc vùng (field) Mỗi dòng mô tả thông tin chi tiết về các thuộc tính của một đối tượng cụ thể trong quản lý gọi là một bản ghi hay một bộ (Record)

1.1.3 Hệ Quản TrịCơ Sở Dữ Liệu quan hệ:

Là phần mềm dùng để tạo lập Cơ Sở Dữ Liệu theo mô hình Cơ Sở Dữ Liệu quan hệvà thao tác trên CSDL đó.

1.1.4 Đặc điểm của Microsoft Access

 Hỗ trợ cơ chế tự động kiểm tra khóa chính, miền giá trị của dữ liệu bên trong các bảng

 Với công cụtrình thông minh (wizard ) cho phép người dùng sử dụng có thể thiết kế các đối tượng trong Microsoft Access một cách nhanh chóng

 Công cụ QBE sẽ hỗ trợ cho người sử dụng có thể thực hiện các truy vấn mà không cần quan tâm đến cú pháp của các câu lệnh trong ngôn ngữ truy vấn SQL

 Đối tượng kết nhúng OLE cho phép người sử dụng có thể đưa vào bên trong tập tin cơ sở dữ liệu Access khác như Word, Excel, âm thanh, hình ảnh …

 Tất cả các đối tượng của ứng dụng được lưu trong tập tin cơ sở dữ liệu duy nhất và có phần mở rộng là mdb

Start \ Programs \ Microsoft Office \ Microsoft Access 2013 hay khởi động shortcut Microsoff Access 2013 từ Desktop

1.1.6 Các thành phần của Microsoft Access

Trong cửa sổ làm việc của Access gồm có những thành phần cơ bản của một ứng dụng trên Windows (hình 1.1)

Hình 1 1 Cửa sổ Navigation Pane

 Thanh Ribbon chứa các Tab lệnh : Home, Create, External Data, và Database Tools, mỗi Tab chứa các nhóm lệnh liên quan

 Tab Home chứa các chức năng sau :

 Sao chép và dán từ clipboard

 Thao tác trên các record

 Lọc sắp xếp dữ liệu trên record

 Tab Create chứa các chức năng sau :

 Tạo một Table mới sử dụng Template

 Tạo mới một Table trống ở chếđộ Design view

 Tạo mới một Form từ Table hoặc Query

 Tạo mới một Report từ Table hoặc Query

 Tạo mới một Macro hoặc Module

 Tab External Data chứa các chức năng sau :

 Import hoặc liên kết dữ liệu với bên ngoài

 Thu thập và cập nhật dữ liệu từ Email

 Làm việc với danh sách offline SharePoint

 Tab Database Tools chứa các chức năng sau :

 Chạy Visual Basic hay Macro

 Tạo và hiển thị mối liên kết giữa các bảng

 Ẩn hiển các đối tượng

 Di chuyển dữ liệu tới MS – SQL sever hoặc tới cơ sở dữ liệu khác

 Một thành phần đặc biệt quan trọng của Access đó là Navigation Pane, cửa sổ nằm trong vùng làm việc của Access gồm các đối tượng : Table, Query, Form, Report, Macro và Module

Tạo tập tin cơ sở dữ liệu

Tạo một cơ sở dữ liệu mới rỗng:

− Tại cửa sổ khởi động, click nút Blank Desktop Database

− File name: nhập tên tập tin cơ sở dữ liệu, trong Access 2013, tập tin cơ sở dữ liệu được lưu với tên có phần mở rộng là accdb

− Nếu không chỉđịnh đường dẫn thì mặc định tập tin mới tạo sẽ được lưu trong thư mục Document, ngược lại, click biểu tượng thư mục để chỉ định vị trí lưu tập tin Click nút Create để tạo tập tin cơ sở dữ liệu

Các thao tác trên t ập tin cơ sở d ữ li ệ u

1.3.1.Mở một cơ sở dữ liệu

Tại cửa sổ khởi động, trong tab File\ Open…

Chọn tập tin cơ sở dữ liệu cần mở\Open

1.3.2.Thu gọn và chỉnh sửa cơ sở dữ liệu (Compact & Repair Database)

Khi tạo thêm đối tượng trong cơ sở dữ liệu thì dung lượng của tập tin cơ sở dữ liệu sẽ tăng lên, khi xóa một đối tượng thì vùng nhớ của nó sẽ rỗng, nhưng không sử

Trang 9 dụng được Chức năng Compact & Repair Database giúp thu hồi lại phần bộ nhớ bị rỗng, làm cho tập tin cơ sở dữ liệu gọn lại

− Mởcơ sở dữ liệu cần thu gọn và chỉnh sửa

− File \Info Chọn nút Compact & Repair Database

Mởcơ sở dữ liệu ở chếđộ Exclusive bằng cách:

− Chọn tab File\ Chọn lệnh Info\ Click nút Encrypt with Password

− Mở cơ sở dữ liệu ở chế độ Exclusive: File\ Open\ Open Exclusive

− Trong tab File, chọn lệnh Info\ Click nút Decrypt Database

Các đối tượng trong cơ sở d ữ li ệ u

Dùng để lưu trữ dữ liệu, nó chính là cấu trúc cơ sở dữ liệu do đó đối tượng này cần phải được tạo trước, bên trong bảng dữ liệu được lưu thành nhiều cột và nhiều dòng

 Không được đặt tên bảng trùng nhau

 Không nên bỏ dấu và tạo khoảng cách khi đặt tên bảng

 Không sử dụng các ký tự đặc biệt khi đặt tên bảng

Là công cụ cho phép người sử dụng dùng ngôn ngữ truy vấn SQL hoặc QBE để thực hiện các truy vấn rút trích, chọn lựa dữ liệu hoặc cập nhật dữ liệu

Là đối tượng dùng để xây dựng các màn hình làm việc dạng cửa sổ giúp người sử dụng xem và có thể nhập thông tin vào cơ sở dữ liệu dễ dàng và tiện dụng

Là một đối tượng dùng để tổ chức lại cách hiển thị thông tin có trong cơ sở dữ liệu khi in ra cho người sử dụng xem

Là công cụ cung cấp cho người sử dụng tạo ra các hành động đơn giản trong Microsoft Access như mở biểu mẫu, báo cáo, thực hiện truy vấn, mà không cần phải biết gì về ngôn ngữ lập trình VBA

 Module: Đây là nơi quản lý những đoạn lệnh có thể sử dụng cho tất cả các đối tượng trong một cơ sở dữ liệu, chúng được viết theo ngôn ngữ Microsoft Visual Basic

1 Thanh Ribbon gồm có bao nhiêu Tab? Cho biết chức năng của các Tab ?

2 Cho biết các đối tượng trong cửa sổ Navigation Panel ? Chức năng của mỗi đối tượng là gì ?

3 Thực hiện tạo cơ sở dữ liệu rỗng đặt tên QLDiem và lưu vào ỗ đĩa D

4 Tạo password cho cơ sở dữ liệu vừa tạo

5 Gở bỏ password cho cơ sở dữ liệu trên

Khái niệm cơ sở dữ liệu

Một cơ sở dữ liệu Access bao gồm tập hợp các bảng dữ liệu có quan hệ chặt chẽ, phù hợp để phục vụ lưu trữ dữ liệu cho một ứng dụng quản lý

Một cơ sở dữ liệu Quản lý sinh viên bao gồm tập hợp các bảng dữ liệu: SINHVIEN, LOP, MONHOC, KETQUA được kết nối nhau một cách phù hợp phục vụ việc lưu trữ dữ liệu cho ứng dụng quản lý sinh viên.

Đối tượ ng Table

Table là thành phần cơ bản quan trọng nhất của cơ sở dữ liệu Nó được thiết kế dưới dạng bảng dùng để lưu trữ thông tin chi tiết về các thực thể mà chương trình quản lý của ta quan tâm tới Thông tin của mỗi loại thực thểđược lưu trữ bên trong một Table Tùy theo mỗi chương trình quản lý của ta có liên quan đến bao nhiêu loại thực thể mà ta có bấy nhiêu Table để chứa thông tin tương ứng Nó ghi các tất cả các biến động phát sinh thông tin về các thực thể trong quá trình làm việc Cách tạo Table :

 Click chọn đối tượng Table trong cửa sổ Navigation Panel

 Chọn Tab Create trên Ribbon

 Chọn biểu tượng Table Design trong nhóm Table (Hình 2 1)

Hình 2 1 Tab Create trên thanh Ribbon

 Xuất hiện một bảng mới để tạo cấu trúc bảng

 Nhập tên field tương ứng vào Field Name và chọn kiểu dữ liệu tương ứng trong khung Data Type Tạo khóa chính cho field trên Tab Design

Hình 2 2 Màn hình hướng dẫn tạo khóa chính cho bảng

 Nhấn CTRL +S hoặc click vào biểu tượng Save trên thanh Quick Access để lưu lại cấu trúc bảng (Hình 2 3)

Hình 2 3 Màn hình tạo cấu trúc bảng

Ngoài ra chúng ta có thể tạo bảng mới bằng cách chọn Table hoặc Table Templates, nhập dữ liệu ở chếđộ Datasheet, MS Access sẽ tựđộng tạo kiểu dữ liệu phù hợp khi người dùng nhập dữ liệu Nếu muốn chỉnh sửa lại cấu trúc bảng ta chọn lại chế độ Design view để thực hiện chỉnh sửa

Cách hiển thị qua lại giữa Datasheet và Design View :

Chọn tab Home / click vào biểu tượng View (xem Hình 2 4)

Hình 2 4 Chuyển đổi dạng hiển thị của bảng 2.2.1 Cấu trúc của Table

 Field (cột hoặc trường ) : Cấu trúc của table được xây dựng dựa trên các field, mỗi table có ít nhất 1 field Mỗi field phải có một kiểu dữ liệu Kiểu dữ liệu của một field sẽ quy định những giá trị nào sẽ được lưu trong field này

 Record (dòng hoặc mẫu tin ) : Table lưu trữ dữ liệu theo từng record, mỗi record sẽ chứa giá trị của tất cả các field có trong bảng

 Primary Key(khóa chính ): Là tập hợp một hoặc nhiều cột mà dữ liệu trên đó là duy nhất không trùng lắp và không được phép rỗng trong một bảng

 Foreign key (khóa ngoại ) : Là một hay nhiều cột và các cột này là khóa chính của một bảng khác

 Field Name (tên cột) : Giá trị của field name phải là duy nhất trong mỗi bảng (tối đa 255 ký tự )

 Data Type : Kiểu dữ liệu của Field Name (Xem Hình 2 5, bảng 2.1)

Hình 2 5 Các kiểu dữ liệu của Field Name

Short Text Kiểu chuỗi tối đa 255 ký tự (có thể sử dụng cho số nhưng không thể tính toán)

Long Text Kiểu văn bản gồm nhiều ký tựhơn so với kiểu Short Text

Number Kiểu số (số nguyên hoặc số thực)

Date / Time Kiểu ngày tháng năm

Currency Kiểu sốcó định dạng theo tiền tệ

AutoNumber Kiểu số (tựđộng tăng khi thêm một mẫu tin mới)

Yes/No Kiểu logic(chỉ có 2 giá trị là TRUE hay FALSE )

OLE Object Kết nối đến một đối tượng file khác ( word , Excel, picture

…) tối đa 2GB Hyperlink Kiểu chuỗi chỉ đường dẫn đến một địa chỉ

Attachment Lưu trữ file đính kèm tối đa 2GB

Lookup Wizard Tạo một cột để chọn giá trị và tìm kiếm từ một bảng khác

Bảng 2 1 Các kiểu dữ liệu của Field Name

 Description (mô tả cột ): Giải thích ý nghĩa của field và được hiển thị dưới thanh trạng thái khi nhập dữ liệu (không bắt buộc )

1.2.2 Một số thuộc tính của Field (cột hoặc trường )

 Field Size( độ rộng của cột ) :Xác định kích thước tối đa có thểlưu trữ trong cột, chỉ hiển thị với kiểu dữ liệu là Short Text hoặc Number (Xem Hình 2 6)

Hình 2 6 Các thuộc tính cơ bản của field

 Với kiểu Short Text: Xác định số ký tự tối đa của chuỗi

 Với kiểu Number : chọn các kiểu sau

 Byte: Kiểu số nguyên, chứa con số có giá trị từ ( 0-> 225 )

 Integer: Kiểu số nguyên, trong khoảng -32000->32000

 Long integer: Kiểu số nguyên dài

 Format (định dạng ): Thay đổi dạng hiển thị giá trị của Field

Tùy theo kiểu dữ liệu của Field mà ta có các dạng định dạng khác nhau

Genaral Number Đúng số đã nhập vào

Currency Có dấu phân cách và dấu $

Fixed Có dấu phân cách hàng ngàn và thập phân

Standard Có phân cách hàng ngàn , số lẻ

Scientific Số khoa học (số mũ )

Bảng 2 2 Các định dạng của kiểu Number

 Kiểu Date/Time : Xem bảng 2.3

Genaral Date Ngày giờ đầy đủ

Long Date Thứ, tháng , ngày , năm

Medium Date Ngày tháng năm

Short Date Ngày – tháng –năm

Long Time Giờ phút giây AM/PM

Short Time Giờ phút dd/mm/yyyy Dạng tự tạo

Bảng 2 3 Các định dạng của kiểu Date/Time

> Làm thay đổi chữ IN

@ dữ liệu bắt buộc nhập

& dữ liệu không bắt buộc nhập

Bảng 2 4 Các định dạng của kiểu Text

 Decimal Places: Chỉ có khi kiểu dữ liệu của field là Number, xác định số chữ số lẻ sau phần thập phân

 Input mask (mặt nạ nhập liệu ): Mặt nạ định dạng dữ liệu dùng để bắt buộc người sử dụng khi nhập dữ liệu vào bảng phải tuân theo đúng định dạng đó Xem bảng 2.5

0 Ký số 0->9, không cho phép nhập dấu

9 Ký số 0->9, và khoảng trắng, không cho phép nhập dấu

# Ký số 0->9 , và khoảng trắng, cho phép nhập dấu

L Ký tự A->Z bắt buộc nhập dữ liệu

? Ký tự A->Z không bắt buộc nhập dữ liệu

A Ký tự và ký số, bắt buộc nhập dữ liệu a Ký tự và ký số, không bắt buộc nhập dữ liệu

& Bất kỳ ký tự nào, hoặc khoảng trắng, bắt buộc nhập dữ liệu

C Bất kỳ ký tự nào, hoặc khoảng trắng, không bắt buộc nhập dữ liệu

< Chuyển đổi các dữ liệu chuỗi sang chữthường

> Chuyển đổi các dữ liệu chuỗi sang chữ IN

Password Thể hiện các ký tự * khi nhập dữ liệu (mật khẩu )

Bảng 2 5 Bảng định dạng mặt nạ dữ liệu

 Caption( tiêu đề cột ): Nội dung của tiêu đề sẽ hiển thị khi đang mở table để nhập liệu.( Ví dụ : Mã khoa )

 Default Value: Giá trị mặc định khi chưa nhập dữ liệu vào ( ví dụ : Mã khoa có kiểu Number, có giá trị mặc định là 0)

 Validation Rule(quy tắc hợp lệ ): Kiểm tra miền giá trị của field khi thay đổi

 Validation Text(thông báo lỗi ):Xuất ra chuỗi thông báo khi giá trị của field vi phạm nội dung được xây dựng trong thuộc tính Validation Rule

 Required(yêu cầu): Nếu chọn là Yes thì khi thêm một Record mới giá trị của field phải được nhập, không được để trống

 Allow Zero Length(cho phép chuỗi rỗng ): (Dùng cho field kiểu Text) Nếu là

Yes, giá trị của Field có thể là chuỗi rỗng, ngược lại, không chấp nhận chuỗi rỗng

 Thiết kế dữ liệu kiểu dữ liệu Lookup wizard

 Chọn kiểu dữ liệu Lookup Wizard trongk hộp thoại Data Type Xuất hiện hộp thoại lookup wizard như Hình 2 7

Hình 2 7 Hộp thoại Lookup Wizard bước 1

 Chọn mục chọn như Hình 2 7

 Chọn bảng hoặc Query cần đưa vào danh sách như Hình 2 8

Hình 2 8 Hộp thoại Lookup Wizard bước 2

 Chọn các trường của Bảng hoặc query sẽđược hiển thị trên danh sách đểđưa vào khung Selected Field như Hình 2 9

Hình 2 9 Hộp thoại Lookup Wizard bước 3

 Chọn Field cần sắp xếp, nếu không sắp xếp thì bỏ trống như Hình 2 10

Hình 2 10 Hộp thoại Lookup Wizard bước 4

 Xác định độ rộng của Field bằng cách kéo rê chuột trực tiếp trên cột hiển thị trong Hình 2 11

Hình 2 11 Hộp thoại Lookup Wizard bước 5

 Đặt tên Field vào khung như Hình 2 12

Hình 2 12 Hộp thoại Lookup Wizard bước 6

 Click Finish để hoàn tất

 Khi đó xuất hiện hộp thoại yêu cầu lưu lại cấu trúc bảng như Hình 2 13

Hình 2 13 Hộp thoại lưu cấu trúc bảng

 Chọn Yes để đồng ý lưu kiểu dữ liệu

 Lưu ý : Mặc dù field đã được lưu kiểu Lookup Wizard nhưng trên bảng thiết kế ta vẫn thấy field hiển thị kiểu Text là do Field được tham chiếu để lấy giá trị có kiểu dữ liệu là kiểu Text (field MaKhoa có kiểu Text) chứ không hiển thị Lookup Wizard

1.2.3 Các thao tác trên Table

 Tạo khóa chính (Primary key) :

 Chọn một hoặc nhiều cột làm khóa chính

 Chọn Tab Design trên thanh Ribbon

 Chọn biểu tượng Primary Key

Hoặc Right click vào các cột cần tạo khóa / chọn Primary Key

 Lưu lại cấu trúc bảng :

Click vào biểu tượng đĩa mềm trên thanh Quick Access

Khi tạo cấu trúc bảng mà ta không tạo khóa chính cho bảng thì Access sẽ thông báo hỏi bảng có hay không có khóa chính như hình 2.13

Hình 2 14 Hộp thoại thông báo chưa có khóa chính

 Chọn Yes khi muốn Access tự động tạo khóa chính cho bảng (số tự động tăng )

 Chọn No khi xác nhận không cần khóa chính tự động hoặc sẽ thêm khóa chính sau

 Mở bảng ở chếđộ thiết kế và cập nhật dữ liệu :

 Xem hình 2.4 cách chuyển đổi qua lại giữa chếđộ Design View và Datasheet

 Sửa đổi cấu trúc bảng (Design View)

 Chèn thêm một cột vào trong bảng: Chọn Tab Design trên thanh Ribbon sau đó chọn Insert Rows trong nhóm Tools

 Xóa một hoặc nhiều cột: Chọn Tab Design trên thanh Ribbon sau đó chọn Delete Rows trong nhóm Tools

 Sao chép cột : Khi các cột có kiểu dữ liệu và định dạng giống nhau thì ta có thể sao chép cột rồi thực hiện chỉnh sửa tên cột

 Thay đổi vị trí các cột : Chọn các cột cần thay đổi vị trí / Kéo rê chuột đến vị trí mới

 Đị nh dạng Font chữ :

 Mở bảng ở chếđộ Datasheet View

 Chọn font, size,… trong nhóm Font

 Thay đổ i chiều cao của các dòng và cột

Thực hiện kéo rê trực tiếp trên các biên của dòng và cột

 Right click tại tên cột \ chọn Hide Column

 Right click tại tên cột \ chọn Unhide Column

Hình 2 15 Hộp thoại Ẩn/ hiện cột

 Chọn cột cần hiển thị như Hình 2 15 (Cột chưa được đánh dấu check)

 Thay đổ i vị trí các cột

 Đánh dấu các cột muốn di chuyển

 Kéo rê chuột đến vị trí mới

 Khóa cột khi xem dữ liệu

 Right click tại cột cần khóa

 Right click tại cột cần khóa

 Chèn đối tượng OLE Object vào bảng

 Mở bảng ở chếđộ Datasheet View

 Right click tại ô có kiểu dữ liệu OLE Object cần chèn

 Chọn đường dẫn đến đối tượng

Thi ế t l ậ p m ố i quan h ệ gi ữ a các b ả ng

 Quan hệ 1 – 1 (One-to-One)

Mỗi mẩu tin trong Table này quan hệ với một mẩu tin trong Table kia hay nói cách khác 2 Table sử dụng khóa chính của mình để liên kết với khóa chính của Table kia

Thí dụ: Quan hệ giữa Table T_HOSONV (danh sách nhân viên) với

T_CHAMCONG06 (chấm công tháng 06 cho nhân viên) là quan hệ 1-1

 Quan hệ 1 – N (One-to-Many):

Mỗi mẩu tin trong Table này quan hệ với nhiều mẩu tin trong Table kia hay nói cách khác Table này sử dụng khoá chính để liên kết với trường khóa ngoại của Table kia

Thí dụ: Quan hệ giữa Table KHOA (Danh mục khoa) và LOP (Danh sách lớp) là quan hệ một nhiều

 Chọn Tab Database Tools trên thanh Ribbon\ Chọn biểu tượng Relationships

Xuất hiện hộp thoại Show Table như Hình 2 16

Hình 2 16 Hộp thoại hiển thị các bảng

 Chọn các Table muốn tạo quan hệ trong hộp thoại Show Table, nhấn nút Add để chèn các table vào cửa sổ quan hệnhư Hình 2 17

Hình 2 17 Cửa sổ tạo quan hệ các bảng

 Dùng thao tác kéo – thả field của bảng để thiết lập quan hệ cho các table như sau : Kéo field là khóa chính ở một bảng sang field là khóa ngoại của bảng khác

Ví dụ field MaKhoa ở bảng KHOA và field MaKhoa ở bảng LOP

 Lúc này cửa sổ thiết lập quan hệ sẽ xuất hiện như Hình 2 18

Hình 2 18 Hộp thoại thiết lập quan hệ 1-N

- Enforce Referential Integrity : Chọn/không chọn tạo mối quan hệ 1 – N

- Cascade Update Related Fields: Chọn / không chọn khi sửa giá trị của field bên table một thì các giá trị của field liên kết bên table nhiều sẽ thay đổi theo

- Cascade Delete Related Records: Chọn / không chọn khi xóa một record bên table một thì tất cả những record của field liên kết bên table nhiều sẽ bị xóa theo

 Nếu khóa chính gồm nhiều field và khóa ngoại gồm nhiều field thì ta chọn các field đó trong bảng Table/Query để tạo quan hệ như Hình 2 20 trong ví dụ Hình 2 19

Hình 2 19 Ví dụ tạo mối quan hệ giữa các bảng có khóa chính và khóa ngoại gồm nhiều field

Hình 2 20 Tạo quan hệ 1-N giữa bảng PHIEU và CTPHIEU

Quy trình thiết kếcơ sở dữ liệu :

 Tạo mới cơ sở dữ liệu

 Tạo cấu trúc bảng (thiết lập các thuộc tính cho các field , tạo khoá chính cho field )

 Thiết lập quan hệ ràng buộc giữa các bảng

 Nhập dữ liệu vào bảng (Bảng có quan hệđầu 1 nhập trước , bảng có quan hệ đầu nhiều nhập sau )

 Một số lỗi thông dụng khi nhập liệu :

Hình 2 21 Lỗi sai kiểu dữ liệu

Giá trị nhập vào không tương thích với kiểu dữ liệu của trường đã chỉ định , chọn Enter new value để nhập lại các giá trịđúng với kiểu dữ liệu đã khai báo.

Hình 2 22 Lỗi khóa chính rỗng

Khóa chính không chứa giá trị rỗng Lỗi do Không nhập giá trị cho khoá chính

Hình 2 23 Lỗi trùng khóa chính

Trùng giá trị ở field là khóa chính Lỗi do giá trị nhập vào bị trùng với một giá trịnào đó trên bảng Click OK và tiến hành chỉnh sửa giá trị trên dòng vừa nhập

Hình 2 24 Lỗi bỏ trống giá trị bắt buộc nhập

Mẫu tin vừa nhập liệu đã bị bỏ trống ở trường bắt buộc phải nhập dữ liệu do thiết lập thuộc tính Required = Yes ở field này Chỉnh sửa bằng cách nhập giá trị tương ứng vào field

Hình 2 25 Lỗi nhập chưa đúng dữ liệu theo nguyên tắc ràng buộc toàn vẹn

Lỗi do vi phạm các nguyên tắc ràng buộc toàn vẹn dữ liệu (dữ liệu ở bảng có quan hệđầu 1 chưa được nhập hoặc dữ liệu nhập vào không đúng trong dữ liệu từ bảng có quan hệđầu 1 ) Chỉnh sửa bằng cách tìm và nhập dữ liệu từ bảng có quan hệ đầu 1 hoặc kiểm tra lại dữ liệu vừa nhập vào và nhập lại cho đúng

Các thao tác trên b ả ng d ữ li ệ u

Ta không thể chép độc lập một đối tượng (như là Table) từ cơ sở dữ liệu này sang tập tin cơ sở dữ liệu khác Trong trường hợp muốn chia sẽ dữ liệu trong Table giữa các cơ sở dữ liệu ta phải sử dụng đến chức năng Import của Microsoft Access và thực hiện qua các bước sau:

Chọn biểu tượng trên Tab External Database trong nhóm Import trên thanh Ribbon để lấy dữ liệu từ tập tin Access (nếu dữ liệu là Excel thì ta chọn biểu tượng Excel (hoặc click chuột phải tại đối tượng Table \ chọn Import)

 Click nút Brown để chọn đường dẫn đến dữ liệu cần lấy trong Hình 2 26

Hình 2 26 Hộp thoại Get External Data

 Xuất hiện hộp thoại Import dữ liệu như Hình 2 27

Hình 2 27 Hộp thoại Import Objects

 Trong hộp thoại Import, chọn đối tượng cần sử dụng (Tables, Queries, …) Sau đó, click chọn những đối tượng (table hay query) cần copy sang cơ sở dữ liệu hiện đang làm việc rồi nhấn OK

 Mở bảng ở chếđộ Datasheet View

 Chọn cột cần sắp xếp

 Chọn biểu tượng trong nhóm Sort & Filter để sắp tăng hoặc biểu tượng để sắp giảm hoặc biểu tượng để hủy bỏ thao tác sắp xếp

 Nếu muốn sắp xếp theo nhiều cột thì ta cần để các cột cần sắp xếp nằm cạnh nhau (từ trái qua phải) sau đó thực hiện lệnh sắp xếp như trên

 Hoặc chúng ta có thể click vào biểu tượng mũi tên bên phải cột để chọn sắp xếp nhanh

2.4.3 Tìm kiếm và thay thế

 Tìm kiếm : Để tra cứu nhanh các thông tin đã lưu trữ, ta sử dụng công cụ tìm kiếm nhanh của Microsoft Access

 Mở bảng ở chếđộ Datasheet View

 Click chọn biểu tượng trong nhóm Find của Tab Home

 Xuất hiện hộp thoại như Hình 2 28

Hình 2 28 Hộp thoại tìm kiếm

 Nhập giá trị cần tìm vào ô Find What

 Chọn tên bảng trong mục Look In

 Chọn Find Next để tìm kiếm

Trong trường hợp muốn tìm gần đúng chúng ta có thể sử dụng một số ký tựđại diện khi nhập giá trị cần tìm chẳng hạn như:

 Ký tự‘?’ dùng đểđại diện cho một ký tự

 Ký tự‘*’ dùng đểđại diện cho một chuỗi các ký tự

 Ký tự ‘#’ dùng để đại diện cho một ký số

 Tìm kiếm và thay thế :

 Mở bảng ở chếđộ Datasheet View

 Click chọn biểu tượng trong nhóm Find của Tab Home

 Xuất hiện hộp thoại như Hình 2 29

Hình 2 29 Hộp thoại tìm kiếm và thay thế

- Nhập giá trị cần thay thế vào ô Find What, nhập giá trị thay thế vào ô

- Chọn nút Find Next để tìm kiếm còn nhấn nút Replace thì sẽ thay thếở dòng hiện hành, còn nếu nhấn Replace All sẽ thay thế tất cả các dòng còn lại

Có 4 cách lọc dữ liệu :

 Lọc trực tiếp giá trị trên cột

 Lọc với giá trịđược chọn trước

 Lọc theo biểu mẫu : Filter by Form

 Lọc theo cách khác : Advanced Filter/Sort

 Lọc trực tiếp trên cột :

 Mở bảng ở chế độ Datasheet View

 Chọn biểu tượng mũi tên bên phải cột cần lọc dữ liệu

Hình 2 30 Hộp thoại lọc trực tiếp

 Chọn hoặc không chọn giá trị cần lọc

 Hoặc lọc với các điều kiện trong lệnh Text Filters

 Khi muốn hiển thị lại tất cả các mẫu tin ta chọn Clear filter form tên field đã lọc

 Lọc với giá trịđược chọn trước :

 Mở bảng ở chếđộ Datasheet View

 Chọn dữ liệu trong bảng

 Chọn biểu tượng trong nhóm Sort & Filter của tab Home

 Chọn điều kiện lọc tương ứng

Để hiển thị dữ liệu đã lọc ta chọn biểu tượng

 Lọc theo biểu mẫu : Filter by Form

 Mở bảng ở chế độ Datasheet View

 Chọn giá trị cần lọc tương ứng như Hình 2 31

 Chọn để thực hiện lọc dữ liệu

Hình 2 31 Màn hình lọc theo biểu mẩu

 Lọc theo cách khác : Advanced Filter/Sort

Cho phép chúng ta lọc dữ liệu hoặc sắp xếp dữ liệu theo cách riêng tùy ý (do người sử dụng quyết định )

Trong bảng SINHVIEN hãy lọc ra những sinh viên nam học lớp cao đẳng tin học khóa 1

 Mở bảng ở chế độ cập nhật dữ liệu

 Nhập các giá trị cần lọc vào mục criteria (ta có thể sắp xếp dữ liệu trong mục sort ) xem Hình 2 32

 Chọn để thực hiện lọc dữ liệu

Hình 2 32 Lưới lọc nâng cao

BÀI TẬP THỰC HÀNH CHƯƠNG 2

1 Thiết kếcơ sở dữ liệu quản lý sinh viên(Quanlysinhvien.mdb)

Các Field in đậm, nghiêng và gạch dưới là khoá chính của bảng

Field Name Field Type Field Size Caption Description

MaKH Short Text 2 Mã khoa

TenKH Short Text 50 Tên khoa

Field Name Field Type Field Size Caption Description

MaSV Short Text 3 Mã sinh viên

HoSV Short Text 15 Họ sinh viên

TenSV Short Text 7 Tên sinh viên

Phai Yes/No Phái Yes:Nữ, No:Nam

NgaySinh Date/Time Ngày sinh Dd/mm/yyyy

NoiSinh Short Text 15 Nơi sinh

MaKH Short Text 2 Mã khoa

HocBong Number Double Học bổng

Field Name Field Type Field Size Caption Description

MaSV Short Text 3 Mã sinh viên

MaMH Short Text 2 Mã môn học

Thiết lập quan hệ giữa các bảng

Field Name Field Type Field Size Caption Description

MaMH Short Text 2 Mã môn

TenMH Short Text 25 Tên môn

SoTiet Number byte Số tiết

SINHVIEN MaSV HoSV TenSV Phai NgaySinh NoiSinh MaKH HocBong

A01 Nguyễn thị Hải  23/02/1977 Hà Nội TH 130000 A02 Trần văn Chính  24/12/1977 Bình Định TH 150000 A03 Lê thu bạch Yến  21/02/1977 TpHCM TH 170000 A04 Trần anh Tuấn  20/12/1977 Hà Nội AV 80000 B01 Trần thanh Mai  12/08/1977 Hải Phòng TR 0

B02 Trần thị thu thủy  02/01/1977 TpHCM AV 0

2 Thiết kếcơ sở dữ liệu quản lý điểm sinh viên(Quanlydiem.mdb)

Các Field in đậm, nghiêng và gạch dưới là khoá chính của bảng

Field Name Field Type Field Size Format Caption

MaLop Short Text 10 Mã lớp

TenLop Short Text 30 Tên lớp

MaKhoa Lookup Wizard Mã khoa

Field mã khoa lấy từ bảng KHOA

Field Name Field Type Field Size Format Caption

MaMon Short Text 10 Mã môn

TenMon Short Text 30 Tên môn

LyThuyet Number Integer Lý thuyết

ThucHanh Number Integer Thực hành

HocKy Number Byte Học kỳ

MaLop Lookup Wizard Mã Lớp

 Field HocKy chỉ cho nhập các giá trị 1 hoặc 2, nếu người sử dụng nhập sai, yêu cầu hệ thống phát thông báo nhắc nhở: “Chỉ nhập giá trị 1 hoặc 2 ”

 Field Nam chỉ cho phép nhập giá trị 1, 2, hoặc 3 Nếu người sử dụng nhập sai, yêu cầu hệ thống phát thông báo nhắc nhở : “ Chỉ nhận giá trị 1, 2 hoặc 3

 Field MaLop chọn từ Field MaLop của bảng LOP

Field Name Field Type Field Size Format Caption

MaSV Short Text 10 Mã sinh viên

Malop Lookup Wizard Mã Lớp

Phai Yes/No Giới tính

NgaySinh Date/Time dd/mm/yyyy Ngày sinh

Field Name Field Type Field Size Format Caption

MaSV Lookup Wizard Mã sinh viên

MaMon Lookup Wizard Mã môn

LanThi Number Byte Lần thi

DiemThi Number Double Điểm thi

 Mã sinh viên và mã môn chọn từ bảng SINHVIEN, MONHOC

 Field LanThi chỉ cho nhập các giá trị 1 hoặc 2 Nếu người sử dụng nhập sai, yêu cầu hệ thống phát thông báo nhắc nhở: “chỉ nhập giá trị 1 hoặc 2 ”

 Field DiemThi chỉ được nhập điểm từ 0 đến 10 Nếu nhập sai, hệ thống thông báo : “Điểm từ 0 đến 10 ”

Thiết lập quan hệ giữa các bảng :

KHCB Khoa học cơ bản

KTCN Kỹ thuật công nghệ

KTXHNV Kinh tế xã hội nhân văn

NTTS Nuôi trồng thủy sản

Mã Lớp Tên lớp Mã Khoa

CDKT01 Cao Đẳng Kế Toán KHÓA 1 KTXHNV

CDKT02 Cao Đẳng Kế Toán Khóa 2 KTXHNV

CDKT03 Cao Đẳng Kế Toán Khóa 3 KTXHNV

CDTH01 Cao Đẳng Tin Học Khóa 1 KTCN

CDTH02 Cao Đẳng Tin Học Khóa 2 KTCN

CDTH03 Cao Đẳng Tin Học Khóa 3 KTCN

CNTP01 Công Nghệ Thực Phẩm Khóa 1 KTCN

CNTP02 Công Nghệ Thực Phẩm Khóa 2 KTCN

CNTP03 Công Nghệ Thực Phẩm Khóa 3 KTCN

DHKT01 Đại Học Kinh Tế Khóa 1 TAICHUC

DHKT02 Đại Học Kinh Tế Khóa 2 TAICHUC

NTTS01 Nuôi Trồng Thủy Sản Khóa 1 NTTS

NTTS02 Nuôi Trồng Thủy Sản Khóa 2 NTTS

THTHKT01 Trung Học TH – KH Khóa 1 KTXHNV

THTHKT02 Trung Học TH – KT Khóa 2 KTXHNV

Mã Môn Tên Môn Lý

Kỳ Năm Mã Lớp CDKT0101 Kế Toán Doanh Nghiệp 45 0 1 1 CDKT01 CDKT0102 Tin Học Văn Phòng 45 60 2 1 CDKT01 CDKT0201 Kế Toán Doanh Nghiệp 45 0 1 1 CDKT02 CDTH0101 Giáo dục thể chất 1 15 0 1 1 CDTH01

CDTH0102 Phòng chống AIDS 30 0 1 1 CDTH01

CDTH0103 Vi tích phân A2 45 0 2 1 CDTH01

CDTH0104 KT lập trình Pascal 45 60 2 1 CDTH01

CDTH0106 Cấu trúc dữ liệu 45 30 2 2 CDTH01 DHKT0101 Tin học ứng dụng 45 60 1 1 DHKT01 DHKT0102 Kinh tế chính trị 30 0 2 1 DHKT01

NTTS0101 Sinh đại cương 30 0 1 1 NTTS01

NTTS0102 Giáo dục quốc phòng 15 30 2 1 NTTS01

THTHKT0101 Tin học căn bản

THTHKT0102 Xử lý văn bản Word

THTHKT0103 Quản trịcơ sở dữ liệu

Mã SV Mã Lớp Họ Tên Phái Ngày sinh HKTT Hình

CDKT0101 CDKT01 Lê Anh Xuân  02/06/1985

CDKT0102 CDKT01 Lê Thúy Hằng  02/07/1985

CDTH0101 CDTH01 Nguyễn Huy Cường  20/11/1985

CDTH0102 CDTH01 Nguyễn Thanh Hòa  08/09/1985

CDTH0103 CDTH01 Nguyễn Văn Phú  07/11/1986

CDTH0104 CDTH01 Nguyễn Thị Xuân  25/01/1984

CDTH0201 CDTH02 Trần Văn An  08/09/1987

CDTH0202 CDTH02 Trần Thị Hiền  18/06/1987

DHKT0101 DHKT01 Trần Ngọc Thắm  27/05/1982

DHKT0102 DHKT01 Nguyễn Mạnh Hùng  21/03/1981

NTTS0101 NTTS01 Võ Thị Phương  18/11/1985

NTTS0102 NTTS01 Võ Anh Thi  08/01/1985

THTHKT0101 THTHKT01 Mai Lệ Hằng  01/08/1986

THTHKT0102 THTHKT01 Võ Mỹ Chi  08/08/1986

THTHKT0201 THTHKT02 Thái Văn Tuấn  05/09/1987

THTHKT0202 THTHKT02 Nguyễn Thanh Phong  12/08/1987

Mã SV Mã Môn Lần Thi Điểm Thi

Mở bảng lớp, lọc ra những lớp thuộc khoa KTCN

Mở bảng môn học, lọc ra những môn học không có thực hành

Mở bảng sinh viên, lọc ra sinh viên nam

Mở bảng sinh viên, lọc ra sinh viên học lớp cao đẳng tin học khóa 1

Mở bảng điểm thi, lọc ra các kết quả thi lần 1

Mở bảng điểm thi, sắp xếp các kết quả thi theo lần thi

Mở bảng điểm thi, tìm kiếm sinh viên có mã sinh viên là “THTHKT0101”

3 Thiết kếcơ sở dữ liệu quản lý sổ tiết kiệm(Quanlysotietkiem.mdb)

Các Field in đậm, nghiêng và gạch dưới là khoá chính của bảng

Field Name Field Type Field Size Caption Description

MKH Short Text 5 Mã khách hàng

Ho_ten_KH Short Text 50 Họ tên khách hàng

CMND Short Text 10 Chứng minh nhân dân

Dia_Chi Short Text 50 Địa chỉ

Field Name Field Type Field Size Caption Description

MSO Short Text 10 Mã sổ tiết kiệm

MKH Lookup wizard Mã khách hàng

Ngay_mo Date/Time Short Date Ngày mở sổ tiết kiệm

So_tien Number Long Integer Số tiền

Lai_suat Number Single Lãi suất

Field Name Field Type Field Size Caption Description

MPG Short Text 10 Mã phiếu gửi

MSO Lookup wizard 10 Mã sổ tiết kiệm

Ngay_goi Date/Time Short Date Ngày gởi

So_tien Number Double Số tiền

Field Name Field Type Field Size Caption Description

MPR Short Text 10 Mã phiếu rút

MSO Lookup wizard 10 Mã sổ tiết kiệm

Ngay_rut Date/Time Short Date Ngày rút tiền

So_tien Number Double Số tiền

Thiết lập quan hệ giữa các bảng

Cung cấp cho sinh viên khái niệm về truy vấn dữ liệu, cách tạo các loại truy vấn dữ liệu với ngôn ngữ SQL và công cụ QBE

3.1 Khái niệm truy vấn dữ liệu

Vai trò của cơ sở dữ liệu là tổ chức lưu trữthông tin đồng thời cung cấp những công cụ hỗ trợ việc quản lý và thao tác dữ liệu đang lưu trữ Những thao tác thường gặp khi làm việc với cơ sở dữ liệu là tìm kiếm thông tin, cập nhật thông tin đang lưu Một trong những công cụđược sử dụng để quản lý thông tin là truy vấn dữ liệu (Query)

3.2 Các loại truy vấn dữ liệu

Tùy theo cấu trúc lệnh được sử dụng khi tạo query, ta có một số loại truy vấn sau:

Là loại truy vấn chỉ mang tính chất cung cấp dữ liệu đã được lưu trữ trong các

Table, không làm thay đổi thông tin của chúng Tập kết quả của truy vấn có thể được chọn lựa theo điều kiện cần xem thông tin, có thể tạo ra các cột tính toán hay thống kê dữ liệu trên Table khi hiển thị Loại truy vấn này vừa có ý nghĩa tìm kiếm vừa có ý nghĩa lọc thông tin theo yêu cầu của người sử dụng

Tương tự như Select Query, tuy nhiên kết quả của loại truy vấn này là một đối tượng Table được lưu trữ vào trang Tables trong cửa sổ Windows Database

Dùng để thêm mới một hay nhiều dòng dữ liệu vào một Table trong cơ sở dữ liệu Mỗi câu truy vấn chỉ dùng để thêm mới dữ liệu cho một Table

Dùng để cập nhật dữ liệu đang lưu trữ trong các table của cơ sở dữ liệu

Dùng để thực hiện yêu cầu xóa dữ liệu hiện đang lưu trữtrong cơ sở dữ liệu

Ấ N D Ữ LI Ệ U

Khái ni ệ m truy v ấ n d ữ li ệ u

Vai trò của cơ sở dữ liệu là tổ chức lưu trữthông tin đồng thời cung cấp những công cụ hỗ trợ việc quản lý và thao tác dữ liệu đang lưu trữ Những thao tác thường gặp khi làm việc với cơ sở dữ liệu là tìm kiếm thông tin, cập nhật thông tin đang lưu Một trong những công cụđược sử dụng để quản lý thông tin là truy vấn dữ liệu (Query).

Các lo ạ i truy v ấ n d ữ li ệ u

Tùy theo cấu trúc lệnh được sử dụng khi tạo query, ta có một số loại truy vấn sau:

Là loại truy vấn chỉ mang tính chất cung cấp dữ liệu đã được lưu trữ trong các

Table, không làm thay đổi thông tin của chúng Tập kết quả của truy vấn có thể được chọn lựa theo điều kiện cần xem thông tin, có thể tạo ra các cột tính toán hay thống kê dữ liệu trên Table khi hiển thị Loại truy vấn này vừa có ý nghĩa tìm kiếm vừa có ý nghĩa lọc thông tin theo yêu cầu của người sử dụng

Tương tự như Select Query, tuy nhiên kết quả của loại truy vấn này là một đối tượng Table được lưu trữ vào trang Tables trong cửa sổ Windows Database

Dùng để thêm mới một hay nhiều dòng dữ liệu vào một Table trong cơ sở dữ liệu Mỗi câu truy vấn chỉ dùng để thêm mới dữ liệu cho một Table

Dùng để cập nhật dữ liệu đang lưu trữ trong các table của cơ sở dữ liệu

Dùng để thực hiện yêu cầu xóa dữ liệu hiện đang lưu trữtrong cơ sở dữ liệu

Dùng để thực hiện yêu cầu thống kê, tính toán và hiển thị dữ liệu theo dạng dòng và cột.

T ạ o truy v ấ n Select Query b ằ ng ngôn ng ữ SQL

 Chọn tab Create trên thanh Ribbon

 Chọn biểu tượng Query Design trên nhóm Other

 Đóng cửa sổ Show Table (nếu có)

 Click chọn biểu tượng trên tab Design của thanh Ribbon

 Gõ các câu lệnh cần thiết vào

3.3.2 Một số toán tửthường dùng trong truy vấn

 Toán tử so sánh gần đúng (chỉ áp dụng cho chuỗi) :LIKE

 Toán tử logic :AND, OR, NOT

Dùng để thực hiện thao tác tổng hợp dữ liệu , được lưu trữ trong một hay nhiều bảng thành một tập kết quả Dữ liệu trong tập kết quả của truy vấn có thể được lọc theo điều kiện và sắp xếp theo nhu cầu của người sử dụng

Ngoài ra ta thể thực hiện việc tính toán thống kê trên tập dữ liệu kết quảđó.

Cú pháp tạo truy vấn dữ liệu từ một table :

 Mệnh đề SELECT (bắt buộc phải có trong truy vấn ) : Cho biết những field nào trong bảng cần hiển thị ra trong tập kết quả khi thực thi truy vấn Ta cũng có thể sử dụng dấu * (SELECT *) để hiển thị tất cả các field trong bảng

Field 1, Field 2, …: là tên những field có trong các table cần hiển thị ra tập kết quả Mỗi field sẽđược phân cách bởi dấu phẩy (,)

 Mệnh đề FROM (bắt buộc phải có trong truy vấn) :Cho biết dữ liệu sử dụng được lấy từ bảng nào

 Mệnh đề WHERE (không bắt buộc có trong truy vấn ) : Điều kiện lọc dữ liệu có dạng : field giá trị

 Nếu điều kiện là kiểu chuỗi thì giá trị phải đặt trong cặp dấu nháy đôi (" ").

 Ngoài các phép toán so sánh =, >,< thì kiểu chuỗi còn sử dụng phép toán so sánh gần đúng là like và like luôn được sử dụng với những ký tự đại diện như: *, ?, hay [] (ký tự* dùng để thay thế cho chuỗi ký tự bất kỳ bao gồm cả chuỗi rỗng, ký tự ? dùng thay thế cho một ký tự bất kỳ và [] để biểu diễn vùng ký tự, như vùng từ a đến m sẽ biểu diễn như sau [a-m])

 Nếu điều kiện là kiểu ngày (Date/Time) thì ta phải sử dụng định dạng

#mm/dd/yyyy# (tháng trước ngày sau)

 Mệnh đề GROUP BY là mệnh đề thực hiện gom các dòng dữ liệu thành các nhóm dựa vào giá trị của các field theo sau mệnh đề GROUP BY

 Mệnh đề HAVING là mệnh đề điều kiện trên nhóm Điều kiện xác lập trên bộ (WHERE) sẽ được kiểm tra trước điều kiện xác lập trên nhóm (HAVING)

SELECT [Tính chất] Field 1 , Field 2 [ AS Tên hiển thị], …

[ORDER BY Field [Asc/Desc], Biểu_thức [Asc/Desc], Số thứ tự cột…]

 Mệnh đề ORDER BY (không bắt buộc có trong truy vấn ): Sắp xếp dữ liệu theo field (ASC: sắp tăng, DESC: sắp giảm )

Các ví dụ minh họa: Sử dụng cơ sở dữ liệu quản lý điểm sinh viên – QLDiem.accdb

Cho biết danh sách sinh viên hiện có Thông tin hiển thị gồm: Mã sinh viên,

Họ sinh viên, Tên sinh viên, Phái

Câu truy vấn có dạng sau:

SELECT MaSV, Ho, Ten, Phai

Ta nhấn CTRL + S hoặc click vào biểu tượng Save trên thanh công cụ Quick Access đểlưu câu truy vấn - Hình 3 1

Hình 3 1 Hộp thoại lưu câu truy vấn

 Thực thi câu truy vấn :

Click vào biểu tượng mũi tên View trong Hình 3 2 - chọn Datasheet View để xem kết quả câu truy vấn – chọn SQL View để trở về màn hình viết lệnh SQL

Ta cũng có thể click chọn biểu Run trong Hình 3 2 để thực thi câu truy vấn

Hình 3 2 Thao tác xem kết quả hiển thị câu truy vấn

Kết quả hiển thị câu truy vấn - Hình 3 3

Hình 3 3 Kết quả hiển thị truy vấn SQL ví dụ 1

Cho biết danh sách sinh viên của lớp Cao Đẳng Tin Học Khóa 1 (Mã lớp CDTH01) có tên bắt đầu là ký tự H, gồm các thông tin như: Mã sinh viên, Họ tên sinh viên, Phái, Mã lớp

Câu truy vấn có dạng sau:

SELECT MaSV, Ho& “ ”& Ten AS [Họ tên SV], Phai,MaLop

WHERE MaLop = "CDTH01" AND Ten LIKE "H*"

Kết quả hiển thị câu truy vấn - Hình 3 4

Hình 3 4 Kết quả hiển thị truy vấn SQL ví dụ 2

Cho biết những sinh viên nữ nào sinh vào ngày 20 tháng 11 năm 1985, gồm các thông tin như: Mã sinh viên, Họ tên sinh viên, Phái, Mã lớp

Câu truy vấn có dạng sau:

SELECT MaSV, Ho& “ ”& Ten AS [Họ tên SV], Phai, MaLop

WHERE Phai = No AND NgaySinh = #11/20/1985#

 Nếu dữ liệu so sánh là kiểu logic (Yes/No) thì ta phải so sánh giá trị theo số là

-1 tương ứng với Yes và 0 tương ứng với No, hay ta cũng có thể sử dụng giá trị Yes (True) và No (False) để so sánh nhưng không được đặt trong dấu nháy đôi như so sánh chuỗi

Cho biết danh sách các môn học của lớp cao đẳng tin học khóa 1 Danh sách được xếp theo học kỳ của năm học

Câu truy vấn có dạng sau:

Kết quả hiển thị câu truy vấn - Hình 3 5

Hình 3 5 Kết quả hiển thị truy vấn SQL ví dụ 4

Ta có thể sắp xếp dữ liệu theo nhiều field khác nhau, mỗi field sẽ được phân cách bởi dấu phẩy (,) và field bên trái nhất sẽ được sắp trước, nếu trùng dữ liệu thì sẽ tiếp tục cho những field tiếp theo

Cú pháp tạo truy vấn dữ liệu từ nhiều table

- INNER JOIN: Là phép toán kết giữa hai table lại với nhau thông qua điều kiện kết được chỉ định sau từ khóa ON Đây là phép kết bằng, có nghĩa là khi 2 table được kết qua phép toán này thì dữ liệu xuất hiện trong tập kết quả sẽ được lấy từ 2 table với điều kiện giá trị của field liên kết phải tồn tại đồng thời trên cả 2 table. Điều kiện kết:Chỉ ra field dùng để liên kết các table có dạng sau: Table1.field table2.field

SELECT [Tính chất] Field 1, Field 2 [ AS Tên hiển thị], …

FROM (Table 1 INNER JOIN Table 2 ON ) INNER JOIN Table 3 ON …

[ORDER BY Field [ASC/DESC], Biểu_thức [ASC/DESC], Số thứ tự cột…]

Thông thường để xác định được biểu thức trên ta sẽ dựa vào quan hệ hiện có giữa các table (trong Relationships) để tìm ra field quan hệ

Ta có thể kết nhiều table lại với nhau theo từng cặp và được phân biệt bởi cặp dấu ngoặc tròn ()

Cho biết danh sách những sinh viên lớp cao đẳng tin học khóa 1 Thông tin hiển thị gồm : Mã sinh viên, họ tên sinh viên, phái, tên lớp

Câu truy vấn có dạng :

SELECT MASV, HO&" "&TEN AS [Họ tên sinh viên], PHAI, TENLOP FROM SINHVIEN INNER JOIN LOP ON SINHVIEN.MALOP LOP.MALOP

Kết quả câu truy vấn - Hình 3 6

Hình 3 6 Kết quả hiển thị truy vấn SQL ví dụ 5

Trong trường hợp mệnh đề FROM sử dụng từ 2 table trở lên thì những field cần hiển thị trong mệnh đề Select mà xuất hiện ở nhiều table thì phải cho biết field đó được lấy từ table nào (table.field)

Cho biết danh sách sinh viên học ở khoa Kỹ Thuật- Công Nghệ, thông tin hiển thị gồm : Mã sinh viên, Họ tên sinh viên, Phái, tên lớp, tên khoa

Câu truy vấn có dạng sau :

SELECT MaSV, [ho] & " " & [ten] AS [Họ tên sinh viên], Phai, TenLop,TenKhoa FROM (KHOA INNER JOIN LOP ON KHOA.MaKhoa = LOP.MaKhoa) INNER JOIN SINHVIEN ON LOP.MaLop = SINHVIEN.Malop

Cho biết bảng điểm thi lần 1 của sinh viên lớp cao đẳng tin học khóa 1 Thông tin hiển thị : Mã sinh viên, họ tên sinh viên, tên lớp, tên môn, điểm thi

Câu truy vấn có dạng :

SELECT SINHVIEN.MASV, HO & TEN AS [Họ tên sinh viên], TENLOP, TENMON, DIEMTHI

FROM ((LOP INNER JOIN MONHOC ON LOP.MALOP=MONHOC.MALOP )

INNER JOIN SINHVIEN ON LOP.MALOP = SINHVIEN.MALOP) INNER JOIN DIEMTHI ON (SINHVIEN.MASV = DIEMTHI.MASV) AND (MONHOC.MAMON = DIEMTHI.MAMON)

WHERE DIEMTHI.LANTHI=1 AND LOP.MALOP="CDTH01";

3.3.4 Sử dụng các phép toán và hàm trong mệnh đề Select

 Các phép toán thường sử dụng : +, -, *, /, &

 Các hàm thường sử dụng :

 Các hàm xử lý chuỗi :

 HÀM LEN : Trả về chiều dài chuỗi String

 HÀM LEFT : Trả về N ký tự bên trái chuỗi String

Ví dụ: Left(“CDTH01”,2) = CD

 HÀM RIGHT: Trả về N ký tự bên phải chuỗi String

 HÀM MID : Trả về chuỗi con gồm N ký tự bắt đầu từ vị trí Start của chuỗi String

Cú pháp: Mid(string, start,N)

Ví dụ: Mid(“CDTH01”,3,4)= TH01

 HÀM LCASE : Đổi chuỗi String sang chuỗi thường

 HÀM UCASE: Đổi chuỗi String sang chuỗi hoa

 HÀM LTRIM, RTRIM, TRIM : Cắt bỏ các ký tự trắng ở đầu chuỗi (Ltrim), ở cuối chuỗi (Rtrim), và cả đầu và cuối (Trim)

Cú pháp: LTrim(string), RTrim(string), Trim(string)

 Các hàm vềngày tháng năm

 HÀM DATE : Trả về ngày hệ thống

 HÀM TIME : Trả về giờ hệ thống

 HÀM NOW : Trả về ngày giờ hệ thống

 HÀM DAY : Trả về ngày của chuỗi thời gian date

 HÀM MONTH : Trả về tháng của chuỗi thời gian date

 HÀM YEAR : Trả vềnăm của chuỗi thời gian date

HÀM WEEKDAY : Trả về số đại diện thứ của ngày date trong tuần (giá trị trả về từ1 đến 7 )

 HÀM FORMAT : Định dạng giá trị biểu thức theo mẫu định dạng

Cú pháp :Format(,)

Mẫu định dạng có thể là Long Date, Standard, Long Time hoặc do người dùng tự định nghĩa như “dd/mm/yyyy”, “#,###.00” hoặc định dạng biểu thức sang chuỗi thường “ < ”, chuỗi hoa “ > “

Format(Date( ),"Long Date") = Friday, September 07, 2012

Format(now( ),"Long Time") = 5:10:30 PM

Format(date( ),"dd/mm/yyyy") = 07/09/2012

 Hàm IFF : Trả về giá trị 1 nếu biểu thức điều kiện đúng, ngược lại trả về giá trị 2

Cú pháp : IIF(,, )

Cho biết số tiết các môn học của lớp Cao đẳng tin học khóa 1 Thông tin hiển thị gồm : Mã môn, tên môn, số tiết lý thuyết, số tiết thực hành, tổng số tiết Câu truy vấn có dạng sau :

SELECT MaMon,TenMon, LyThuyet ,ThucHanh , [Lythuyet]+[Thuchanh] AS [Tổng số tiết]

Hình 3 7 Kết quả hiển thị truy vấn SQL ví dụ 8

Cho biết danh sách sinh viên sinh vào tháng 9, gồm các thông tin: Mã sinh viên, Họ Tên, Năm sinh

Câu truy vấn có dạng sau:

SELECT MaSV, Ho&" "&Ten AS [Họtên], Year(NgaySinh) AS [Năm sinh] FROM SINHVIEN

Cho biết danh sách sinh viên có tuổi nhỏ hơn 20 Thông tin hiển thị gồm :

Mã sinh viên, Họ tên, Giới tính(hiển thị Nam / Nữ), Tuổi

Câu truy vấn có dạng sau :

SELECT MaSV, Ho&" "&Ten AS [Họ tên], IIF(Phai=yes,"Nam","Nữ") AS [Giới tính], Year(date())-Year(NgaySinh) AS Tuổi

WHERE Year(date())-Year(NgaySinh) 5

Hình 3 20 Màn hình lưới QBE tạo truy vấn thống kê ví dụ 22

Cho biết lớp nào có tổng số sinh viên đông nhất Thông tin hiển thị gồm: Mã lớp, Tên lớp, Tổng số sinh viên

Khi tìm giá trị Max hoặc Min trên tổng các giá trị ta không sử dụng hàm Min, Max mà tiến hành sắp xếp cột tăng hoặc giảm rồi chọn Top value là 1

Gõ giá trị 1 vào Top value trên nhóm Query Setup của thanh công cụ Design hoặc right click vào vùng chứa bảng của Query \ chọn Properties \ gõ giá trị 1 vào mục Top value

Hình 3 21 Màn hình lưới QBE tạo truy vấn thống kê ví dụ 23

Tham số trong câu truy vấn đơn giản chi là một chuỗi (tên tham số) không trùng với tên của table hay các field hiện có trong cơ sở dữ liệu đang làm việc Nếu tên của tham số có khoảng trắng thì phải đặt trong cặp dấu ngoặc vuông ([])

Cho biết danh sách các sinh viên của một lớp bất kỳ gồm Mã sinh viên, Họ tên, Tên lớp với Mã lớp do người dùng nhập vào khi thực thi truy vấn

Lưu ý : Ta cần khai báo tham số trước khi thực thi câu truy vấn

 Chọn Parameters trong nhóm Show/Hide trên thanh công cụ Design

 Nhập tham số vào khung Query Parameter

 Chọn kiểu dữ liệu trong khung Data Type

Hình 3 22 Hộp thoại khai báo tham số

Hình 3 23 Màn hình lưới QBE tạo truy vấn tham số ví dụ 24

Crosstab Query là một loại truy vấn thống kê kết hợp dòng và cột, thông tin hiển thị của Query xuất hiện ở dạng: một dòng và có nhiều cột có thông tin liên quan Các bước thực hiện :

 Thêm các bảng cần thiết vào vùng chứa bảng của lưới QBE

 Click chọn biểu tượng Crosstab

 Kéo rê các field cần hiển thị vào bảng

 Xác định xem field nào là Row Heading, Column Heading, value , Notshow

 Chọn Group by hay các hàm thống kê trên dòng totals

 Nếu dòng Crosstab là Column Heading dòng Total phải là Group By

 Nếu dòng Crosstab là Row Heading dòng Total có thể là Group By hoặc hàm thống kê (Sum, Count, …)

 Nếu dòng Crosstab là Value dòng Total phải là hàm thống kê (Sum, Count,

Lưu ý : Nếu truy vấn có sử dụng tham số thì ta phải vào Parameter khai báo tham số cho truy vấn

 Những thành phần của Crosstab query

Row heading : Tập dữ liệu của các field thuộc thành phần này sẽđược hiển thị trên từng dòng Trong Crosstab query phải có ít nhất 1 field thuộc về Row Heading

Column Heading: Trong crosstab query có duy nhất một field thuộc thành phần Column Heading Giá trị của field sẽ được hiển thị theo cột, tuỳ theo field có bao nhiêu giá trị kết quả của truy vấn sẽ thể hiện số cột tương ứng

Value : là thành phần không thể thiếu và chỉ có duy nhất một field là Value Giá trị của field này thể hiện thông tin liên qua giữa Row Heading và Column Heading

Cho biết điểm thi lần 1 của sinh viên lớp cao đẳng tin học khóa 1 Thông tin hiển thị gồm: Mã sinh viên, Họtên, Tên môn, điểm thi

Hình 3 24 Màn hình lưới QBE tạo truy vấn Crosstab ví dụ 25

Kết quả thực thi truy vấn

Hình 3 25 Kết quả thực thi truy vấn Crosstab ví dụ 25

Ví dụ 26 : Cho biết điểm thi lần 1 của sinh viên của một lớp bất kỳ (Mã lớp được nhập vào khi thực thi truy vấn) Thông tin hiển thị gồm: Mã sinh viên, Họ tên, Tên môn, điểm thi

Là loại query khi thực thi sẽ tạo ra một bảng mới dựa trên các bảng đã có trong cơ sở dữ liệu

Thiết kế query tạo ra bảng mới có tên là SINHVIENK1 thông tin gồm : Mã sinh viên, Họ sinh viên, Tên sinh viên, Phái, Mã lớp, Tên lớp

 Tạo Select Query theo yêu cầu

 Chọn biểu tượng trong nhóm Query Type trên thanh công cụ Design

Hình 3 26 Hộp thoại đặt tên bảng mới trong Make Table Query ví dụ 27

 Đặt tên cho bảng cần tạo trong khung Table Name

 Để xem trước dữ liệu của bảng mới ta click nút View

 Để thực thi truy vấn ta click vào nút Run trên thanh công cụ

Xuất hiện hộp thoại thông báo là bạn có chắc là muốn tạo thêm 1 Table mới hay không ? Click Yes nếu đồng ý

Hình 3 27 Hộp thông thông báo tạo bảng mới 3.4.8 Append Query

Là loại truy vấn dùng để thêm mới dữ liệu vào bảng hoặc thêm dữ liệu từ bảng khác vào bảng khi thực thi truy vấn

Tạo query thêm vào bảng điểm thi những sinh viên lớp cao đẳng tin học khóa 1 (CDTH01) có điểm thi lần 1 môn Giáo dục thể chất (CDTH0101) là 0

 Mởvùng lưới QBE ở chếđộ thiết kế

 Click chọn biểu tượng Append Query

Hình 3 28 Hộp thoại chọn tên bảng cần thêm trong Append Query ví dụ 28

 Chọn bảng cần thêm vào trong khung Table Name

Hình 3 29 Màn hình lưới tạo truy vấn Append Query ví dụ 28

 Gõ các giá trị cần thêm vào ở dòng Field của vùng lưới (nếu lấy từ bảng khác thì chọn field của bảng khác)

 Các field được thêm vào tương ứng ở dòng Append To

 Đểxem trước dữ liệu cần thêm vào bảng ta click nút View

 Để thực thi truy vấn ta click vào nút Run trên thanh công cụ

Xuất hiện hộp thoại thông báo là bạn có chắc là muốn thêm dữ liệu vào bảng hay không? Click Yes nếu đồng ý

Hình 3 30 Hộp thoại thông báo thêm dữ liệu vào bảng 3.4.9 Delete Query

Là loại query dùng để xóa dữ liệu trong bảng thỏa mãn với điều kiện cho trước Thực hiện :

 Chọn Table chứa dữ liệu cần xóa hiển thịtrong vùng lưới QBE

 Chọn field cần xóa ởdòng field và điều kiện xóa ở dòng Criteria

Hình 3 31 Màn hình lưới tao truy vấn Delete Query ví dụ 29

 Để xem trước dữ liệu cần xóa ta click nút View

 Để thực thi truy vấn ta click vào nút Run trên thanh công cụ

Xuất hiện hộp thoại thông báo là bạn có chắc là muốn xóa dữ liệu trong bảng hay không? Click Yes nếu đồng ý

Hình 3 32 Hộp thoại thông báo xóa dữ liệu 3.4.10 Update Query

Là loại truy vấn dùng để cập nhập dữ liệu trong bảng thỏa mãn điều kiện cho trước

Tạo truy vấn cập nhật điểm thi lần 1 của sinh viên lớp cao đẳng tin học khóa 1 (CDTH01) học môn Giáo dục thể chất (CDTH0101) thành điểm 5

 Chọn Table chứa dữ liệu cần chỉnh sửa hiển thị trong vùng lưới QBE

 Chọn các Field cần chỉnh sửa ở dòng Field, các giá trị mới ở dòng Update to, ứng với điều kiện ở dòng Criteria

Hình 3 33 Màn hình lưới tạo truy vấn Update Query ví dụ 30

 Đểxem trước dữ liệu cần cập nhật ta click nút View

 Để thực thi truy vấn ta click vào nút Run trên thanh công cụ

Xuất hiện hộp thoại thông báo là bạn có chắc là muốn cập nhật dữ liệu trong bảng hay không? Click Yes nếu đồng ý

Hình 3 34 Hộp thoại thông báo cập nhật dữ liệu

NHIỆM VỤ CỦA SINH VIÊN

 Đọc bài giảng phần chương 3 trước khi đến lớp

 Tham khảo tài liệu [1] Tập 1

 Tham khảo tài liệu [2] Bài 4 từtrang 69 đến 91

 Tham khảo tài liệu [4] Phần 1- Bài 3,4 : từtrang 19 đến trang 64

 Thực hành các bài tập chương 3.

BÀI TẬP THỰC HÀNH CHƯƠNG 3

Sử dụng cơ sở dữ liệu quản lý điểm sinh viên(QLDiem.accdb) thực hiện các câu truy vấn sau :

Lọc và sắp xếp dữ liệu

1 Cho biết danh sách sinh viên gồm các thông tin sau: Mã sinh viên, Họ tên sinh viên, Phái, Ngày sinh Danh sách sẽđược sắp xếp theo thứ tự Nam/Nữ

2 Cho biết danh sách các sinh viên lớp cao đẳng tin học khóa 1 gồm Mã sinh viên, họ sinh viên, tên sinh viên, phái, ngày sinh

3 Cho biết danh sách các môn học có tên bắt đầu bằng chữ T, gồm các thông tin:

Mã môn, Tên môn, Số tiết lý thuyết, số tiết thực hành

4 Liệt kê danh sách những sinh viên có chữ cái cuối cùng trong tên là I, gồm các thông tin: Họ tên sinh viên, Ngày sinh, Phái

5 Cho biết danh sách những khoa có ký tự thứ hai của tên khoa có chứa chữ N, gồm các thông tin: Mã khoa, Tên khoa

6 Liệt kê những sinh viên mà họ có chứa chữ Thị

7 Cho biết danh sách những sinh viên ký tựđầu tiên của tên nằm trong khoảng từ a đến m, gồm các thông tin: Mã sinh viên, Họ tên sinh viên, Phái

Cung cấp cho sinh viên các kiến thức như định nghĩa Form, một số thuộc tính thông dụng trên form, các dạng hiển thị của form, cách tạo form bằng wizard, bằng design view, cách thiết kế một số điều khiển trên form ( Label, Text Box, Option Button, Option Group, Combo Box, List Box, Subform )

4.1 Giới thiệu đối tượng Form

Form (biểu mẫu) là một trong những đối tượng có sẵn trong Microsoft

Access, dùng để xây dựng những màn hình giao tiếp giữa người dùng và ứng dụng Form được dùng để kết nối các đối tượng như Table, query, report …Thông qua Form, người dùng có thể thực hiện các thao tác xem, nhập, thay đổi và tìm kiếm thông tin một cách dễdàng hơn.

Khi thiết kế Form, ta có thể xem thông tin các thuộc tính của đối tượng thông qua cửa sổ thuộc tính, Properties Sheet Ta có thể mở cửa sổ này bằng một trong những cách sau:

 Double Click vào đối tượng cần xem thuộc tính

 Hoặc click phải vào đối tượng cần xem thuộc tính, sau đó chọn chức năng Properties có trong menu vừa xuất hiện Hoặc nhấn ALT + ENTER

Trong khi cửa sổ thuộc tính đang được mở thì ta chỉ cần click vào đối tượng khác thì trang thuộc tính sẽ tự động hiển thị những thuộc tính của đối tượng đang được chọn

Hình 5 1 Cửa sổ thuộc tính của form

4.1.2 Thành phần của một thuộc tính

Một thuộc tính được tạo bởi hai phần: Phần tên thuộc tính và phần giá trị

Phần giá trị của thuộc tính là các kiểu dữ liệu sau: String, Boolean, Enumerated (giá trị định sẳn cho thuộc tính), Numeric, Expression

4.2 Các thuộc tính cơ bản trên form

 Name: Tên đối tượng, là thuộc tính dùng để phân biệt giữa các đối tượng

Giá trị của thuộc tính Name có một sốlưu ý sau:

- Có thể là sự kết hợp của chuỗi, số, khoảng trắng, …

- Không có ký tự đặc biệt như: dấu chấm (.), dấu chấm than (!), dấu ngoặc vuông ([])

Tên thuộc tính Giá trị thuộc tính

- Mặc dù giá trị Name có thể có khoảng trắng nhưng ta không nên sử dụng vì sẽ gây khó khăn khi lập trình trong môi trường VBA

 Record Source : Dữ liệu nguồn của form

 Caption : Tên tiêu đề hay tên mô tả

 Default view : Thể hiện loại màn hình Form

- Single form : thể hiện dạng cột ( chỉ thể hiện 1 dòng Record )

- Datasheet : thể hiện dạng dòng không có Header / Footer (giống Table / Query)

- Continuous forms : Thể hiện dạng dòng có Header / Footer

 Picture: Hình nền thể hiện trên form

 Record Selectors: Hiển thị hoặc không hiển thị ký hiệu chọn dòng hiện hành (Yes/ No)

 Navigation buttons: Bộ nút di chuyển

 Border Style: Dùng đểthay đổi đường viền của Form

 Max Min Buttons: Bộ nút phóng to hay thu nhỏkích thước màn hình form

 Allow edits: Cho phép hoặc không cho phép chỉnh sửa dữ liệu trên form

 Allow Additions : Cho phép hoặc không cho phép thêm mới dữ liệu trên form

 Allow Deletions : Cho phép hoặc không cho phép xóa dữ liệu trên form

 Allow Filters : Cho phép hoặc không cho phép lọc dữ liệu trên form

 Autoresize : Tựđộng thay đổi kích thước để hiển thị đủ mẩu tin

 Autocenter : Tựđộng canh giữa khi mở Form

 Modal : Xác lập trị Yes thì không thể chuyển qua cửa sổ khác khi Form chưa đóng

 Pop Up :Nếu chọn Yes thì Form nằm trên các cửa sổ và Form khác

 Close : Có / không có nút Close

 Control Box : Hiện / không hiện Control Box

 Scroll bars : Hiện hay không hiện thanh trượt của Form

4.3.1 Thiết kế Form bằng Wizard

 Chọn bảng hoặc query làm dữ liệu nguồn cho form

 Chọn tab Create trên thanh Ribbon

 Click chọn More Forms \ Form Wizard

Hình 5 2 Màn hình hướng dẫn tạo form bằng WiZard

 Chọn các field cần thiết kế Click Next

Hình 5 3 Hộp thoại thiết kế Form bằng Wizard bước 1

 Chọn dạng hiển thị của Fom Click Next

Hình 5 4 Hộp thoại thiết kế Form bằng Wizard bước 2

 Chọn mẫu hiển thị Form Click Next

Hình 5 5 Hộp thoại thiết kế Form bằng Wizard bước 3

 Đặt tiêu đềcho form cũng là tên form Click Finish.

Hình 5 6 Hộp thoại thiết kế Form bằng Wizard bước 4

Hình 5 7 Màn hình form thiết kế bằng Wizard

Sau khi thiết kế form bằng Wizard chúng ta trở vềmàn hình Design View để chỉnh sửa cho phù hợp với yêu cầu

Các cách hiển thị Form :

- Form View : Chuyển Form về chếđộ xem dữ liệu

- Layout View : Chuyển Form về chế độ Layout Trong chế độ này giống như chếđộ Form View nhưng cho phép chỉnh sửa vị trí, kích thước của các điều khiển trên Form

- Design View : Chuyển Form về chếđộ thiết kế

4.3.2 Thiết kế Form bằng design view :

 Chọn Tab Create trên thanh Ribbon

 Chọn biểu tượng trong nhóm Forms

 Hiển thị cửa sổ Design View với thành phần Detail Tương tự như report chúng ta có thể bật/tắt các thành Form Header/Footer và Page Header/Footer bằng cách Righ click / thành Form Header/Footer hoặc Page Header/Footer Các thành phần trong cửa sổ Design View: Field List, Nhóm Controls và Properties Sheet

Là một cửa sổ nhỏ liệt kê tất cả những Field của các bảng trong cơ sở dữ liệu Nếu Form chưa có dữ liệu nguồn thì ta chọn dữ liệu nguồn cho form từ các table trong fiel list bằng cách double vào Field cần chọn làm dữ liệu nguồn cho form Nếu Form đã có dữ liệu nguồn rồi thì ta xem dữ liệu nguồn của form bằng cách click chọn dòng Show only fields in the current record source nằm ở dòng cuối cùng của Field List

Hình 5 8 Cửa sổ Field list trong chếđộ Design View của Form

502 Bad GatewayUnable to reach the origin service The service may be down or it may not be responding to traffic from cloudflared

Hình 5 9 Nhóm Controls trên thanh công cụ Form Design

 Properties Sheet: Hiển thị các thuộc tính và hành động của một đối tượng đang được chọn trên form

4.3.3 Các dạng Form thường gặp

 Columnar : Hiển thị thông tin của một dòng dữ liệu tại một thời điểm

Hình 5 10 Màn hình form dạng Columnar

 Tabular : Hiển thịthông tin lưu trữ ở dạng tập hợp các dòng dữ liệu liên tục nhau

Hình 5 11 Màn hình form dạng Tabular

 Datasheet :Dạng hiển thị của Form giống với đối tượng Table, hiển thị tất cả dữ liệu tại một thời điểm

Hình 5 12 Màn hình form dạng datasheet

4.4 Các điều khiển trên form

Dùng để hiển thị các thông tin liên quan đến màn hình làm việc như: Tên của màn hình, những thông tin cần thiết cho người dùng

Các thuộc tính của Label :

Caption Hiển thị nội dung trong điều khiển

Font name Định dạng font chữ

Font size Kích cở chữ

Fore color Định dạng màu cho chữ

Border style Kiểu đường viền điều khiển

Border color Màu đường viền điều khiển

Back color Màu nền điều khiển

Text Align Canh lề cho các dữ liệu bên trong điều khiển

Dùng để xem thông tin được lưu trong cơ sở dữ liệu và cho phép thêm mới hay cập nhật dữ liệu

Các thuộc tính của Text Box :

Control Source Dùng để chỉ ra nguồn dữ liệu sẽđược hiển thị trên text box Name Tên điều khiển( là duy nhất trên form) thường bắt đầu bằng txt

Enabled Cho phép hoặc không cho phép nhập ký tự

Locked Khóa hoặc mở khóa điều khiển

Caption Hiển thị nội dung trong điều khiển

Font name Định dạng font chữ

Font size Kích cở chữ

Fore color Định dạng màu cho chữ

Border style Kiểu đường viền điều khiển

Border color Màu đường viền điều khiển

Back color Màu nền điều khiển

Text Align Canh lề cho các dữ liệu bên trong điều khiển

Khi nguồn dữ liệu của Text Box không phải là tên Field trong Field List thì giá trị của Control Source phải luôn bắt đầu bằng dấu bằng (=)

Dùng để thực hiện các lệnh xử lý theo yêu cầu nào đó của người sử dụng

Nếu chưa biết cách tạo lệnh bằng Macro hoặc Code thì ta sử dụng điều khiển thông minh (Control wizard ) để tạo nút lệnh

 Click chọn điều khiển trên nhóm Controls (được chọn mặc định )

502 Bad GatewayUnable to reach the origin service The service may be down or it may not be responding to traffic from cloudflared

Hình 5 13 Hộp thoại tạo Command Button bằng Wizard bước 1

 Nhập nhãn của nút lệnh trong khung text (thuộc tính caption của command button ), hoặc chọn hình ảnh hiển thị trên nút lệnh trong khung Picture Click Next

Hình 5 14 Hộp thoại tạo Command Button bằng Wizard bước 2

 Nhập tên nút lệnh (thuộc tính name của command button ) vào khung Click Finish

Hình 5 15 Hộp thoại tạo Command Button bằng Wizard bước 3

Một số loại thao tác và các hành động tương ứng khi sử dụng Control Wizard tạo Command Button

 Find record Tìm mẫu tin thỏa điều kiện tìm kiếm

 Go to first record Di chuyển mẫu tin vềđầu

 Go to last record Di chuyển mẫu tin về cuối

 Go to next record Di chuyển mẫu tin về sau mẫu tin hiện hành

 Go to Previous record Di chuyển mẫu tin vềtrước mẫu tin hiện hành

 Các hành động trên mẫu tin :

 Add new record Thêm mẫu tin mới

 Delete record Xóa mẫu tin hiện hành

 Save record Lưu lại mẫu tin hiện hành

 Undo record Phục hồi giá trị trước khi sửa mẫu tin hiện hành

 Các hành động trên biểu mẫu :

 Close Form Đóng form hiện hành

 Open Form Mở form khác

 Các hành động trên báo cáo :

 Preview report Mở báo cáo ở chếđộxem trước khi in

 Print report In báo cáo ra máy in

 Các hành động trên ứng dụng :

 Quit application Thoát khỏi Access

Dùng để thực hiện thao tác chọn một giá trị không bắt buộc, ta có thể không chọn, và có thể chọn nhiều giá trị cùng một lúc

Trang 97 Để biết một Check Box có được chọn hay không ta dựa vào thuộc tính Value của nó Nếu Value của Check Box có giá trị là –1 thì nó đang được chọn, nếu giá trị bằng 0 thì điều khiển không được chọn

4.4.5 Option Button và Option Group

Hình 5 16 Ví dụ minh họa điều khiển Option Button và Option Group

 Option Button tương tự như Check Box, sẽ có giá trị là -1 khi đựơc chọn và bằng 0 khi không chọn

Các thuộc tính của Option Button :

Caption Hiển thị nội dung trong nút chọn(nam, nữ )

Name Tên nút chọn (Optnam, Optnu)

Option value Giá trị trả về của nút chọn (-1,0)

502 Bad GatewayUnable to reach the origin service The service may be down or it may not be responding to traffic from cloudflared

Khi chọn 1 Option Button thì Option Group sẽ có giá trịtương ứng

Các thuộc tính của Option Group:

Name Tên nút chọn (optgioitinh)

Control source Liên kết với dữ liệu nguồn

Ví dụ : Tạo field giới tính sử dụng Option Group, Option Button

 Chọn điều khiển Option Group kéo vào cửa sổ thiết kế Đặt thuộc tính cho Option Group:

 Chọn điều khiển Option Button kéo vào cửa sổ thiết kế Đặt các thuộc tính cho Option Group:

 Chọn điều khiển Option Button tiếp tục kéo vào cửa sổ thiết kế Đặt các thuộc tính cho Option Button :

Dùng để chọn một giá trị có trong danh sách các giá trị đã định nghĩa trước Các thuộc tính của Combo Box :

 Name Tên điều khiển (cbomasv)

 Control Source Liên kết với dữ liệu nguồn

 Row Source Type Chỉ ta loại dữ liệu của danh sách :

Table/query : lấy dữ liệu từ bảng hoặc truy vấn Value : dữ liệu tự gõ vào

 Row Source Chứa dữ liệu của danh sách

 Column Count Số cột dữ liệu hiển thị trong danh sách

 Column Widths Độ rộng của các cột dữ liệu trong danh sách được ngăn cách bởi dấu chấm phẩy (;)

 Bound Column Chỉ ra cột trả về giá trị cho Combo Box

 Limit To List Yes\No: Khả năng người dùng có thể nhập vào các giá trị không sẵn có trong Combo Box

Tương tự như Combo Box nhưng List Box có diện tích lớn hơn và người sử dụng chỉđược chọn mà không thể nhập dữ liệu mới vào danh sách

Hình 5 17 Ví dụ minh họa điều khiển List Box

List box có các thuộc tính tương tựnhư combo box

Name Tên điều khiển (LstMasv)

Control source Liên kết với dữ liệu nguồn

Chỉ ta loại dữ liệu của danh sách : Table/query : lấy dữ liệu từ bảng hoặc truy vấn Value : Dữ liệu tự gõ vào

Row source Chứa dữ liệu của danh sách

Column count Số cột dữ liệu hiển thị trong danh sách

Column widths Độ rộng của các cột dữ liệu trong danh sách được ngăn cách bởi dấu chấm phẩy (;) Column Heads Hiển thỉ hoặc không hiển thị tiêu đề dữ liệu

Bound column Chỉ ra cột trả về giá trị cho List Box

Hình 5 18 Ví dụ minh họa điều khiển Tab Control

Cho phép chúng ta tạo một điều khiển có nhiều trang khác nhau nhằm thể hiện đầy đủ các thông tin theo từng nhóm trên form

- Chèn thêm một trang mới: Click chuột phải trên Page cuối \ chọn Insret Page

- Xóa một trang: Click chuột phải lên trang cần xóa \ chọn Delete Page

Các thuộc tính của Tab control :

Caption Hiển thị nội dung tiêu đề trang

Page Index Thứ tự các trang

 Lưu ý : Phải chọn trang cần thiết kếtrước, sau đó tạo điều khiển cần chèn lên trang đang được chọn

Subform là một form được nhúng vào bên trong của một form khác, chọn chếđộ hiển thị cho Subform là Datasheet

Một màn hình mà bên trong Form chính có chứa một hay nhiều Form con khác được gọi là màn hình dạng Main – Sub Dạng màn hình này thường sử dụng để thực hiện các thao tác thay đổi dữ liệu trên 2 bảng có quan hệ 1- N

Các thuộc tính của Subform:

Source Object Tên form cần đưa vào

Tên của một hay nhiều Field có trong Sub Form Các Field này dùng để liên kết dữ liệu với Main Form, dựa vào quan hệ giữa 2 bảng Mỗi Field cách nhau bởi dấu chấm phẩy (;)

Link Master Fields Tên field hoặc tên điều khiển dùng để liên kết với form Sub, mỗi đối tượng cũng được cách nhau bởi dấu chấm phẩy

Các bước thiết kế màn hình Main – Sub

- Tạo các điều khiển trên form Main

- Tạo các màn hình đóng vai trò là Form Sub có dạng hiển thị là Datasheet sau đó lưu và đóng lại

+ Thuộc tính Source Object của Subform : Chọn tên Form là form con đưa vào

+ Điền các cột liên kết vào 2 thuộc tính Link Child Field và Link Master Field của Sub Form Nếu liên kết có nhiều field thì mỗi field được ngăn cách nhau bằng dấu chấm phẩy (;)

Hình 5 19 Ví dụ minh họa điều khiển Subform

Truyền dữ liệu giữa các màn hình Để lấy thông tin từ một màn hình trong chế độ thực thi ta thực hiện những bước sau:

 Tạo một TextBox trên màn hình sẽ nhận dữ liệu từ màn hình khác

 Thiết lập công thức cho thuộc tính Control Source của TextBox như sau:

Forms![Tên form cần lấy giá trị]![Tên đối tượng cần lấy giá trị]

Lấy dữ liệu của Form Sub

Cung cấp cho sinh viên kiến thức và những kỹ thuật cần thiết trong quá trình xây dựng báo cáo, giúp sinh viên có khảnăng thiết kếđược các dạng báo cáo thông dụng

Report giúp người sử dụng có thể trình bày thông tin lưu trữ trong table dưới hình thức của một biểu mẫu, khả năng xuất dữ liệu ra nhiều định dạng khác, như máy tin, tập tin, màn hình

5.2.1 Tabular : Dữ liệu hiển thị các dòng liên tục nhau

Hình 4 1 Dạng hiển thị Tabular không phân nhóm

Hình 4 2 Dạng hiển thị Tabular phân nhóm theo lớp

5.2.2 Columnar : Dữ liệu hiển thị chi tiết từng mẫu tin

Hình 4 3 Dạng hiển thị Columnar

5.2.3 Các bước chuẩn bị trước khi tạo báo cáo :

 Dựa vào thông tin cần trình bày trên báo cáo, chọn các table/Query chứa thông tin cần hiển thị, gọi là nguồn dữ liệu của báo cáo.(Nguồn của báo cáo có thể là một hay nhiều table, hoặc câu query lọc thông tin cần hiển thị)

 Xác định báo cáo cần thiết kế thể hiện ở dạng nào, Tabular hay Columnar?

Báo cáo có phân nhóm hay không? Khi báo cáo có phân nhóm thì ta cần xác định có bao nhiệu nhóm? Field nào được chọn phân nhóm?

5.3.Tạo Report bằng công cụ Report Wizard

5.3.1 Tạo báo cáo chi tiết :

 Chọn dữ liệu nguồn cho báo cáo là bảng hoặc Query trên thanh Navigation Pane

 Chọn Tab Create trên thanh Ribbon

 Chọn biểu tượng trong nhóm Report

5.3.2 Tạo báo cáo phân nhóm :

 Chọn dữ liệu nguồn cho báo cáo là bảng hoặc Query trên thanh Navigation Pane

 Chọn Tab Create trên thanh Ribbon

 Chọn biểu tượng trong nhóm Report

 Chọn các field cần thiết kế trong Hình 4 4 Click Next

Hình 4 4 Hộp thoại Report Wizard tạo báo cáo bước 1

 Chọn một cột muốn nhóm dữ liệu trên báo cáo Hình 4 5 Click Next

Hình 4 5 Hộp thoại Report Wizard tạo báo cáo bước 2

 Chọn tiếp các cột muốn nhóm dữ liệu báo cáo Click Next

Hình 4 6 Hộp thoại Report Wizard tạo báo cáo bước 3

 Chọn tên cột muốn sắp xếp bên trong chi tiết báo cáo Click Next

Hình 4 7 Hộp thoại Report Wizard tạo báo cáo bước 4

 Chọn các thể hiện của báo cáo và hướng giấy in của báo cáo Click Next

Hình 4 8 Hộp thoại Report Wizard tạo báo cáo bước 5

 Chọn các kiểu thể hiện tiêu đề, chi tiết cho báo cáo Click Next

Hình 4 9 Hộp thoại Report Wizard tạo báo cáo bước 6

 Đặt tiêu đề cho báo cáo cũng là tên của report Click Finish

Hình 4 10 Hộp thoại Report Wizard tạo báo cáo bước 7

Hình 4 11 Kết quả tạo report R_DSsinhvien bằng Wizard

 Click chọn biểu tượng để chỉnh sửa report

5.4.Chỉnh sửa Report bằng Design View

5.4.1 Các thành phần của Report

Hình 4 12 Màn hình hiển thị các thành phần của Report

 Report Header –Tiêu đề của báo cáo: Các thông tin được đặt trong phần này sẽ xuất hiện ở đầu báo cáo (chỉ xuất hiện một lần ở trang đầu tiên của báo cáo)

 Report Footer – Cuối báo cáo: Các thông tin được đặt trong thành này sẽ xuất hiện ở cuối báo cáo (chỉ xuất hiện một lần ở trang cuối cùng của báo cáo)

 Page Header – Tiêu đề của trang: Các thông tin được đặt trong phần này sẽ xuất hiện ởđầu mỗi trang của báo cáo

 Page Footer – Cuối trang: Các thông tin được đặt trong thành phần này sẽ xuất hiện ở cuối mỗi trang của báo cáo

 Detail – Chi tiết: Thể hiện các thông tin chi tiết (thông tin chính) của báo cáo

 Ngoài các thành phần cơ bản đã giới thiệu ở trên, còn có 2 thành phần sau:

 Group Header – Đầu nhóm: Các thông tin được đặt trong phần này sẽ xuất hiện ở đầu mỗi nhóm dữ liệu của báo cáo

 Group Footer – Cuối nhóm: Các thông tin được đặt trong phần này sẽ xuất hiện ở cuối mỗi nhóm dữ liệu của báo cáo

 Các chế độ hiển thị của Report :

Hình 4 13 Các chếđộ hiển thị của Report

 Design View: Cho phép thiết kế cấu trúc của báo cáo

 Report View: Cho phép xem dữ liệu từ bảng nhưng không thay đổi cách bố trí của báo cáo

 Layout View: Cho phép xem dữ liệu từ bảng và có thể thêm, chỉnh sửa, xóa các thành phần của báo cáo

 Print Preview: Cho phép xem báo cáo trước khi được in

5.4.2 Thiết kế Report bằng Design view

 Chọn Tab Create trên thanh Ribbon

 Chọn biểu tượng trong nhóm Report

Hình 4 14 – Màn hình Design View của report

 Double click tại giao điểm giữa hai thước ngang và dọc để mở cửa sổ thuộc tính của report Hình 4 14

 Hoặc click chọn biểu tượng trong nhóm Tool của thanh công cụ Design để tắt/mở cửa sổ thuộc tính

 Chọn dữ liệu nguồn cho report trong thuộc tính Record Source Hình 4 15

Hình 4 15 Cửa sổ Property của report

 Chọn biểu tượng để tắt / mở hộp thoại Field list của report

Hình 4 16 Hộp thoại Field list của report

 Lấy dữ liệu từ Field List sang thành phần detail của report bằng cách double click vào các field tương ứng

5.4.3 Các điều khiển thường dùng trên Report

Hình 4 17 Thanh công cụ Tool box của Report

Là điều khiển dùng để hiển thị các thông tin tĩnh (không thay đổi) trên báo cáo, chẳng hạn như Tiêu đề của báo cáo, Tiêu đề của các cột trong báo cáo,

Là điều khiển dùng để hiển thị giá trị của một field, một công thức tính toán hay của một biểu thức thống kê Để lấy dữ liệu nguồn của điều khiển ta vào thuộc tính Control Source trong cửa sổ thuộc tính của report sau đó chọn Field cần lấy giá trị hoặc gõ công thức tính toán (luôn bắt đầu bởi dấu bằng “ = ” ).

 Line : Được sử dụng để vẽ các đường thẳng nhằm trang trí cho báo cáo Giúp các thông tin trên báo cáo được trình bày rõ ràng hơn

Dùng để vẽ các khung hình chữ nhật nhằm trang trí cho báo cáo

Là điều khiển có nhiệm vụ ngắt trang báo cáo tại vịtrí đặt điều khiển Đểthay đổi cách thể hiện dữ liệu trên điều khiển thì người ta sử dụng thuộc tính Format trong cửa sổ thuộc tính của điều khiển

5.4.4 Các thao tác chung trên điều khiển

 Tạo điều khiển : Click chọn điều khiển trên Toolbox sau đó click vào vùng thiết kế của Report

 Chọn các điều khiển: Click vào điều khiển cần chọn Muốn chọn nhiều điều khiển cùng lúc ta có thể nhấn giữphím Shift + điều khiển cần chọn hoặc đưa trỏ chuột ra ngoài thước dọc sau đó kéo rê chuột

 Di chuyển các điều khiển

 Di chuyển một điều khiển được chọn: kéo rê chuột tạo điểm trên bên trái của điều khiển

 Di chuyển điều khiển và thành phần thành liên kết với nó nếu có: kéo rê chuột tại vị trí bất kỳ của điều khiển

 Thay đổi kích thước của điều khiển

Khi điều khiển được chọn thì xung quanh nó xuất hiện 8 ô hình vuông màu đen Để thay đổi kích thước của điều khiển ta di chuyển chuột đến vị trí của các ô vuông, khi đó biểu tượng của chuột sẽ đổi thành dạng đường thẳng hai đầu có hai mũi tên, click và rê chuột để thay đổi kích thước của điều khiển hoặc ta cũng có thể sử dụng tổ hợp phím Shift và các phím mũi tên để thay đổi kích thước của điều khiển

Lưu ý : Để thiết kế nhanh báo cáo ta nên sử dụng Wizard để thiết kếsau đó ta trở về chế độ Design View để chỉnh sửa

5.5.Một số kỹ thuật thường dùng trong thiết kế

5.5.1 Ẩn hoặc hiện các thành phần của báo cáo

 Ẩn hiện Report Header/Footer, Page Header/Footer :

 Click chọn tab Arrange trên thanh công cụ Report design

 Click chọn các thành phần cần hiển thị trên nhóm Show/Hide

Hình 4 18 Nhóm Show/Hide các thành phần của báo cáo

 Ẩn hiện Group Header/Footer

 Click chọn biểu tượng trong nhóm Grouping &Total trên thanh công cụ Design

 Click chọn để tạo nhóm và để sắp xếp

 Chọn field cần tạo nhóm hoặc biểu thức phân nhóm Hình 4 19

Hình 4 19 Bảng hiện thị các field cần tạo nhóm

 Click vào nút More/Less để ẩn hiện thêm các thông tin cần tạo nhóm

Hình 4 20 – Hộp thoại dùng để sắp xếp hoặc thống kê theo nhóm

 Click chọn biểu tượng mũi tên with no totals

Hình 4 21 – Hộp thoại chọn nhóm và hàm thống kê

 Totals on: Chọn field cần thống kê

 Type : Chọn hàm cần thống kê

 Show Grand Total : Hiển thị thống kê cuối báo cáo

 Show group totals as % of Grand Total : Hiển thị tỷ lệ % thống kê từng nhóm

 Show in group header : Hiển thị thống kê ởđầu nhóm

 Show in group footer : Hiển thị thống kê ở cuối nhóm

Ngoài ra, ta có thể sử dụng shortcut menu đểẩn hiện các thành phần của báo cáo

5.5.2 Tạo số thứ tự cho báo cáo

 Vẽ TextBox vào vịtrí tương ứng trên báo cáo

 Trong thuộc tính Control Source của TextBox này ta gán =1

 Trong thuộc tính Running Sum của TextBox này ta chọn một trong 3 giá trị sau:

 None: Không tự động làm tăng giá trị của TextBox khi sang mẫu tin tiếp theo

 Over Group: Tự động tăng giá trị của TextBox khi sang mẫu tin tiếp theo Tuy nhiên, nếu chuyển sang một nhóm thông tin khác thì giá trị của TextBox này sẽđược khởi động lại bằng với giá trị ban đầu gán cho Control Source

 Over All: Tự động tăng giá trị của TextBox khi sang mẫu tin tiếp theo, không gán lại giá trị khi qua nhóm khác

Hình 4 22 Cửa sổ chọn giá trị cho thuộc tính Running Sum

 Chọn biểu tượng Line thickness Width trên thanh Tools box

 Chọn dạng cần kẻ khung

5.5.3 Ẩn hoặc hiện field khi trùng lắp

Chọn yes tại thuộc tính Hide Duplicates của của sổ thuộc tính của điều khiển

 Vẽđiều khiển TextBox vào phần Page Footer

 Điền công thức vào thuộc tính Control Source của TextBox để tạo số trang mong muốn

 Hàm Page: cho biết trang hiện hành trên báo cáo

 Hàm Pages: cho biết tổng số trang sẽđược trình bày trên báo cáo

Ta có thể đánh số trang nhanh cho report bằng cách chọn biểu tượng

Control Source = “Trang “ & Page & “/” & Pages

5.5.5 Ngắt trang Đặt điều khiển Page Break vào vị trí cần phân trang, khi báo cáo được xem ở chếđộ Preview thì thông tin sẽ tựđộng được phân trang theo vịtrí đặt điều khiển

BÀI TẬP THỰC HÀNH CHƯƠNG 5

Sử dụng cơ sở dữ liệu Quản lý điểm thiết kế các report sau :

1 Thiết kế report danh sách khoa theo mẫu sau :

2 Thiết kế report danh mục lớp theo mẫu sau :

Tiếp tục cho các khoa khác…

3 Thiết kế report danh sách sinh viên theo mẫu sau :

Tiếp tục cho các lớp khác …

Tiếp tục cho các sinh viên khác…

4 Thiết kế report danh sách môn học theo mẫu sau:

Tiếp tục cho các lớp khác…

5 Thiết kế report bảng điểm môn học lần 1, lần 2 cho sinh viên theo mẫu sau :

Tiếp tục cho các lớp khác…

6 Thiết kế report kết quả học tập cho sinh viên theo mẫu sau :

Tiếp tục cho các lớp khác…

Cung cấp cho sinh viên các kiến thức cơ bản về đối tượng Macro (tập lệnh) Trình bày các thao tác xử lý đối với Macro và cách sử dụng macro với các biến cố(sự kiện) trên form hoặc trên điều khiển Giúp sinh viên biết cách tạo đúng các tập lệnh cho các màn hình ứng dụng

− Macro là tập hợp các bộ lệnh đã được định nghĩa sẵn Mỗi bộ lệnh có một chức năng riêng biệt Trong Macro, nếu có nhiều bộ lệnh thì phải sắp xếp theo một trình tự xử lý

− Macro không thực hiện độc lập mà phải kết hợp với các sự kiện trên Form hay các điều khiển trên form

6.2.Khái niệm thuộc tính, hành động và sự kiện

Thuộc tính dùng để xác định những đặc điểm đối tượng, những loại đối tượng khác nhau thì sẽ có những thuộc tính mang ý nghĩa sử dụng giống và khác nhau

Là những thao tác xử lý của riêng đối tượng và do chính đối tượng gọi thực thi hành động đó Hành động của đối tượng sẽđược thực thi theo cú pháp :

Tên đối tượng.Tên hành động

Là những xử lý liên quan đến các đối tượng trên màn hình như mở form, click chuột,…

- CurrentRecord: Cho biết dòng hiện hành trong bộ mẫu tin nguồn trên Form

- RecordSetClone.RecordCount: Cho biết tổng số dòng (Record) có trong bộ mẫu tin nguồn

 Các sự kiện trên Form:

- On Load: Sự kiện xảy ra khi bắt đầu mở Form (Các điều khiển chưa xuất hiện trên Form )

- On Open: Sự kiện xảy ra khi mở Form (Các điều khiển đã xuất hiện trên Form )

- On Activate: Sự kiện xảy ra khi Form được kích hoạt

- On DeActivate: Sự kiện xảy ra khi đóng kích hoạt Form

- On Close: Sự kiện xảy ra khi đóng Form

- On Unload: Sự kiện xảy ra khi đóng Form

- On Current: Sự kiện xảy ra với trạng thái dòng (Record) hiện hành trên Form

- On Click: Sự kiện xảy ra khi click chuột

- On DbClick: Sự kiện xảy ra khi Double click chuột

- Before Update: Sự kiện xảy ra trước khi cập nhật form

- After Update: Sự kiện xảy ra sau khi cập nhật form

- Before Insert: Sự kiện xảy ra trước khi thêm mới một dòng trên form

- After Insert: Sự kiện xảy ra sau khi thêm mới một dòng trên form

 Các sự kiện trên điều khiển:

- On Click: Sự kiện xảy ra khi click chuột trên điều khiển

- Dblclick: Sự kiện xảy ra khi Double click chuột trên điều khiển

- On KeyPress: Sự kiện xảy ra khi nhấn một phím tại điều khiển

- On Keydown: Sự kiện xảy ra khi nhấn giữ một phím tại điều khiển

- On KeyUp: Sự kiện xảy ra khi nhả phím tại điều khiển

- On GotFocus: Sự kiện xảy ra trước khi con trỏ vào điều khiển

- On LostFocus: Sự kiện xảy ra sau khi con trỏ ra khỏi điều khiển

- On Change: Sự kiện xảy ra khi thay đổi nội dung điều khiển

 Chọn sự kiện cần xử lý trên form (Chọn trang Event trên cửa sổ thuộc tính Properties\ chọn On Click)

 Click vào dấu … chọn Macro builder \ Ok

 Chọn các bộ lệnh (hành động ) xử lý trong khung Action

 Action Arguments: chứa các thuộc tính tương ứng với hành động đã chọn trong cột Action ở phía trên

Hình 6 1 Hộp thoại hướng dẫn tạo Macro

Hình 6 2 Màn hình thiết kế Macro

Chứa danh sách các tham sốTham số của lệnh Requery

6.4.Các tập lệnh thường dùng

 Di chuyển mẩu tin hiện hành trên form

 Object Type: Kiểu đối tượng

 Object Name: Tên đối tượng

 Record: Vị trí di chuyển là Trước, Sau, Đầu, Cuối, Thêm mới, di chuyển vị trí mẩu tin thứ mấy

Command: Tên của chức năng lệnh sẽđược thực hiện:

 Undo: Không ghi / phục hồi dữ liệu cũ

 Find What: Giá trị cần tìm kiếm

 Match: Xác định vị trí dò tìm của dữ liệu trong cột có thể là một phần, cả một cột hoặc bắt đầu của một cột

 Match Case: Có phân biệt dữ liệu có chữ IN hay thường

 Find First: Vị trí tìm kiếm bắt đầu từ mẩu tin đầu tiên hay mẩu tin hiện hành

Cho phép gán giá trịvào các điều khiển, thuộc tính của các điều khiển

 Item: Tên của điều khiển, thuộc tính của điều khiển

 Expression: Giá trị cần gán vào

 Form Name: Tên form muốn mờ

 View: Hiển thị form ở các chế độ: thiết kế, in xem trước…

 Filter Name: Tên truy vấn sẽ làm bộ lọc dữ liệu nguồn cho form

 Where Condition: Biểu thức lọc(giống mệnh đề Where của câu lệnh SQL)

 Data Mode: Chế độ hiển thị dữ liệu là thêm mới, sửa đổi và chỉ đọc

 Report Name: Tên báo cáo muốn mờ

 View: Hiển thị report ở các chế độ: thiết kế, in xem trước…

 Filter Name: Tên truy vấn sẽ làm bộ lọc dữ liệu nguồn cho báo cáo

 Where Condition: Biểu thức lọc(giống mệnh đề Where của câu lệnh SQL)

Thực hiện xuất một hộp thoại thông báo ra màn hình

 Message : Chuỗi xuất thông báo

 Title: tiêu đề của cửa sổ

 Huỷ bỏ một hành động

Thực hiện ngắt ngang một biến cố, một tập lệnh, thoát khỏi MS Access

 Cập nhật dữ liệu ở các điều khiển

Control Name : tên điều khiển

 Di chuyển con trỏđến điều khiển

Control Name: tên điều khiển

 Thực hiện một Macro khác

 Đóng màn đối tượng hiện hành(Form , Report , Table , )

 Object Type : Kiểu đối tượng

 Object Name : Tên đối tượng

 Save : có lưu lại không (yes/no)

Nếu như có một yêu cầu nào đó trước khi thực hiện một hành động thì chúng ta phải kiểm tra điều kiện trước, khi nào điều kiện đúng sẽ thực hiện hành động, ngược lại sẽ thực hiện những hành động khác hoặc có thểkhông có hành động nào được thực hiện Lúc này ta cần đến tập lệnh có điều kiện

- Cách chèn cột điều kiện trong Macro Để có thể ghi các điều kiện cần kiểm tra cho một hành động trong Macro ta cần chèn vào cột điều kiện (Condition Column) trong màn hình thiết kế Macro

- Mở Macro ở chếđộ thiết kế

- Click chọn biểu tượng trong nhóm Show/Hide trên thanh công cụ Design

- Ghi điều kiện cần kiểm tra cho các hành động trong tập lệnh trên cột Condition mới vừa thêm

- Lệnh 1 được thực hiện khi biểu thức điều kiện 1 là True

- Lệnh 2 được thực hiện khi biểu thức điều kiện 2 là True

- Lệnh N được thực hiện khi biểu thức điều kiện N là True

- Nếu biểu thức điều kiện là rỗng thì xem như là True

- Nếu biểu thức điều kiện giống nhau thì dùng dấu …

Ví dụ : Để thiết kế nút Thoát dùng để đóng form hiện hành ta tạo macro có điều kiện như hình 6.3

Hình 6.3 Macro dùng đểđóng form hiện hành

BÀI TẬP THỰC HÀNH CHƯƠNG 6

Sử dụng cơ sở dữ liệu quản lý điểm thiết kế các màn hình sau :

1 Tạo Form có tên F_Nhap_Khoa dùng để nhập dữ liệu vào bảng Khoa Sử dụng macro để tạo lệnh cho các nút lệnh

2 Thiết kếform F_bangdiemmonhoc dùng đểxem điểm thi môn học được chọn từ Combo box

- Combo Box chọn lớp hiển thị các lớp trong cơ sở dữ liệu

- Combo Box chọn môn hiển thị các môn của lớp vừa chọn ở trên

- Nút Xem bảng điểm dùng để mở report bảng điểm theo lớp và theo môn đang chọn trên Combo Box

3 Thiết kế form F_diemthicuasinhvien dùng để xem điểm thi của sinh viên được chọn từ Combo Box

- Combo Box chọn lớp hiển thị các lớp trong cơ sở dữ liệu

- Combo Box chọn sinh viên hiển thị các sinh viên của lớp vừa chọn ở trên

- Nút Xem kết quả dùng để mở report bảng điểm theo lớp và theo sinh viên đang chọn trên Combo Box

4 Thiết kếform F_xemdiemthi dùng đểxem điểm thi của từng môn học

- Thiết kế 1 list box chọn lớp dùng để chọn lớp cần xem điểm

- Thiết kế 1 list box chọn môn dùng để chọn môn của lớp hiện hành trên list chọn lớp

- Thiết kế 1 subform hiển thị thông tin vềđiểm thi của sinh viên, các field trên subform chỉđược xem không được phép sửa dữ liệu

Giới thiệu những thành phần quan trọng trong ngôn ngữ VBA và cách vận dụng VBA trong việc tạo các chức năng xử lý trên màn hình, giúp sinh viên có khả năng xây dựng những màn hình làm việc có nhiều chức năng về hiển thị dữ liệu, các chức năng thao tác dữ liệu và xử lý lỗi trong khi cập nhật dữ liệu trên màn hình ứng dụng

Mặc dù macro đã hỗ trợ một cách nhanh chóng và dễdàng để tự động hóa các ứng dụng nhưng macro không có tính mềm dẽo, với những yêu cầu phức tạp thì macro không giải quyết được

Module là một công cụ của Access dùng ngôn ngữVisual Basic để tạo những chương trình nhằm giải quyết những hạn chế của macro

Module và các thủ thủ tục của nó là đối tượng chủ yếu của ngôn ngữ lập trình VBA (Visual Basiv for Application) Có hai loại module: module dùng chung và module gắn liền với form, report

Visual Basic là ngôn ngữ lập trình dùng để ràng buộc các đối tượng trong ứng dụng với nhau thành một hệ thống hợp nhất Các chương trình của VBA (Visual Basic for Application) được tổ chức và hoạt động trong Access nhằm mục đích xây dựng các ứng dụng phức tạp

7.1.2 Khi nào sử dụng tập lệnh Visual Basic

Có thểdùng VB để thực hiện các công việc sau:

- Làm cho ứng dụng dễ bảo trì hơn

- Tạo ra các hàm/thủ tục của người sử dụng để xử lý các thao tác phức tạp mà chưa được MS Access cung cấp sẵn

- Xử lý lỗi theo ý người sử dụng

- Tạo hay thao tác với các đối tượng

- Thực hiện các thao tác cấp hệ thống : thực hiện một ứng dụng khác, liên kết giữa các ứng dụng

 Module chung : Dùng để chứa các thủ tục và hàm chung do người thiết kế tự lập trình bằng ngôn ngữ VBA để bổ sung cho file cơ sở dữ liệu mà ta có thể chạy ở bất kỳ vị trí nào trong ứng dụng

- Chọn tab Create trên thanh Ribbon

- Chọn biểu tượng Module trên nhóm other

- Nhập hàm hoặc thủ tục vào vùng soạn thảo

Hình 7 1 Màn hình tạo module chung

 Module riêng(Module gắn liền với form, report) : Dùng để chứa các thủ tục xử lý sự kiện liên kết với Form hay Report Ta không thểlưu riêng module loại này mà chúng gắn liền với Form hoặc Report Khi ta sao chép Form hay Report từ tập tin CSDL này sang tập tin CSDL khác thì các Module này cũng được chép sang cùng với nó và nếu ta xóa Form hoặc Report thì chúng cũng bị xóa theo

- Mở Form ở chếđộ Design rồi bấm vào biểu tượng nút Code

- Nhập hàm hoặc thủ tục vào vùng soạn thảo

Hình 7 2 Màn hình chọn xem code VBA

 Thủ tục xử lý sự kiện ( biến cố) trên form:

Khi Access nhận thấy có một sự kiện (biến cố) xảy ra trên Form hoặc trên điều khiển thì nó sẽ tựđộng thi hành thủ tục biến cố đã tạo cho đối tượng và biến cố đó

Do đó, để thực hiện một số hành động nào đó ứng với sự kiện trên form hoặc trên điều khiển thì ta phải đưa các hành động đó vào một thủ tục biến cố

Thiết kế màn hình cho phép nhập vào hai giá trị A và B, chương trình sẽ tính tổng hai số nhập vào và xuất kết quả ra text box tính tổng khi ta click vào nút Tính tổng

Tạo text box số A có thuộc tính Name: txtsoA

Tạo text box số B có thuộc tính Name: txtsoB

Tạo text box Tổng có thuộc tính Name: txttong

Tạo nút lệnh Command button Tính tổng có thuộc tính Name: cmdTinhtong

Tạo nút lệnh Command button Tiếp tục có thuộc tính Name: cmdTieptuc

Hình 7 3 Màn hình tính tổng 2 số

Trên biến cố On click của điều khiển Tính tổng (Event \ Onclick ) ta chọn Procedure, sau đó click vào dấu … hoặc click vào dấu … chọn Code builder

Hình 7 4 Màn hình hướng dẫn tạo code VBA

Hình 7 5 Màn hình thiết kế VBA

 Các quy định khi viết chương trình VBA

- ™ Mỗi lệnh thường viết trên một dòng Nếu muốn xuống dòng ta dùng dấu gạch dưới “_”

- ™ Không phân biệt chữ hoa hay chữthường

- Sử dụng dấu nháy đơn để tạo chú thích

Cửa sổ Project Explorer Cửa sổ viết lệnh

Chứa tên điều khiển trên form

- Khi kết thúc mỗi dòng lệnh, Access sẽ tự động kiểm tra cú pháp của dòng lệnh đó

- Để dịch toàn bộchương trình, ta chọn Debug \ Compile

7.3.1 Các kiểu dữ liệu cơ bản

 Boolean: Kiểu lô gíc, tương tự kiểu Boolean trên Pascal Kiểu này chiếm 2 byte bộ nhớ; chỉ nhận một trong 2 giá trị là: Yes – No hoặc True – False

 Byte: Kiểu sốnguyên dương trong phạm vi từ 0 255 Kiểu này chiếm 1 byte bộ nhớ

 Integer: Kiểu nguyên, có giá trị trong khoảng -32768 32767 Kiểu này chiếm 2 bytes bộ nhớ

 Long: Kiểu số nguyên dài, có giá trị trong khoảng 2,147,483,648 147,483,647 Kiểu này chiếm 4 bytes bộ nhớ

 Single: Kiểu số thực, có giá trị trong khoảng 1.401298E-45 to 3.402823E38 Chiếm 4 bytes bộ nhớ

 Double: Kiểu số thực có độ lớn hơn kiểu Single, có giá trị trong khoảng 4.94065645841247E-324 to 1.79769313486232E308 Chiếm 8 bytes bộ nhớ

 Currency: Kiểu tiền tệ Bản chất là kiểu số, độ lớn 8 bytes, có giá trị trong khoảng -922,337,203,685,477.5808 to 922,337,203,685,477.5807 Đặc biệt, kiểu này luôn có ký hiệu tiền tệđi kèm.

 String: Kiểu xâu ký tự Kiểu này tương ứng với kiểu String trong Pascal, tương ứng với kiểu Text trong các trường CSDL Access Độ lớn tối đa 255 bytes tương đương với khảnăng xử lý xâu dài 255 ký tự

 Variant: Variant là kiểu dữ liệu không tường minh Biến kiểu này có thể nhận bất kỳ một giá trị nào có thể Ví dụ :

Dim a As Variant a = 123 a = “Nguyễn Văn Ngô”

Hoàn toàn không có lỗi

Người ta thường khai báo biến kiểu Variant trong những trường hợp phải xử lý biến đó mềm dẻo Khi thì biến nhận giá trị kiểu này, khi thì nhận giá trị và xử lý theo kiểu dữ liệu khác

 Object :Object là một loại biến kiểu Variant, chiếm dung lượng nhớ 4 bytes, dùng để tham chiếu tới một loại đối tượng (Object) nào đó trong khi lập trình Tất nhiên muốn khai báo biến Object kiểu nào, phải chắc chắn đối tượng đó đã được đăng ký vào thư viện tham chiếu VBA bởi tính năng Tool | Reference

Biến (Variable) là thành phần của một ngôn ngữ lập trình, giúp xử lý dữ liệu một cách linh hoạt và mềm dẻo

Biến có thể được khai báo bất kỳ ở đâu trong phần viết lệnh của VBA Tất nhiên, biến có hiệu lực như khai báo chỉ bắt đầu từ sau lời khai báo và đảm bảo phạm vi hoạt động như đã qui định Vì biến trong VBA hoạt động rất mềm dẻo, nên có nhiều cách khai báo biến như:

Ví dụ 1: Khai báo biến i kiểu Integer

Ví dụ 2: Khai báo 2 biến i, j kiểu Integer

Ví dụ 3: Khai báo biến i kiểu Integer, st kiểu String độ dài 15 ký tự

Dim i As Integer, st As String*15

Ví dụ 4: Khai báo biến i kiểu Variant

Ví dụ 5: Khai báo biến txt kiểu Textbox

Ví dụ 6: Khai báo mảng kiểu String*30 gồm 46 phần tử

Ví dụ 7: Khai báo biến mảng 2 chiều A(i , j) trong đó: i = 0 3 và j = 0 4

Ví dụ 8: Khai báo mảng 3 chiều A(i, j, k) trong đó: i = 1 5; j = 4 9 và k = 3 5

Dim A(1 To 5,4 To 9, 3 To 5) As Double

Ví dụ 9: Khai báo một mảng động kiểu Variant Mảng động là mảng không cốđịnh chiều dài

 Quy tắc đặt tên biến

 Bao gồm các chữ cái, chữ số và dấu gạch dưới

 Kí tựđầu phải là chữ cái

 Không được trùng với các từ dành riêng của Access

7.3.3 Hằng và cách sử dụng hằng

Hằng (Constant) là đại lượng có giá trị xác định và không bị thay đổi trong bất kỳ hoàn cảnh nào Tương ứng với từng kiểu dữ liệu, sẽ có những hằng tương ứng

Khai báo hằng số bởi từ khoá Const Sau đây là các ví dụ về khai báo các loại hằng:

Ví dụ 1: Hằng a =5 (hằng số)

Ví dụ 2: Hằng ngày = 24/12/2004 kiểu Date (bao bởi cặp dấu thăng # #)

Ví dụ 3: Hằng xâu ký tự (bao bởi cặp dấu nháy kép “ ”)

Ví dụ 4: Hằng kiểu Lôgíc xác định bởi True hoặc False

 Biến cục bộ: Được khai báo sau từ khoá Dim, nó chỉ có tác dụng trong một chương trình con, cục bộ trong một form hoặc một module nào đó Biến toàn cục:

 Biến toàn cục: Được khai báo sau cụm từ khoá Public, nó có tác dụng trong toàn bộ chương trình (ở bất kỳ chỗ nào có thể viết lệnh)

Ví dụ: Public Hoten(45) As String * 45

Ngày đăng: 29/10/2022, 09:19

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Dương Quang Thiệ n, Microsoft Office Access 2000 T ậ p 1,2,3 Sách, tạp chí
Tiêu đề: Microsoft Office Access 2000
Tác giả: Dương Quang Thiện
2. Hu ỳnh Tôn Nghĩa(2009), Đạ i h ọc sư phạ m k ỹ thu ậ t TPHCM, Giáo trình L ậ p trình quản lý với Microsoft Office Access Sách, tạp chí
Tiêu đề: Giáo trình Lập trình quản lý với Microsoft Office Access
Tác giả: Huỳnh Tôn Nghĩa
Nhà XB: Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh
Năm: 2009
3. Nguy ễn Sơn Hả i, Trung tâm Tin h ọ c B ộ Giáo D ục &amp; Đào Tạ o, Giáo trình Microsoft Access 2000 Sách, tạp chí
Tiêu đề: Giáo trình Microsoft Access 2000
Tác giả: Nguyễn Sơn Hải
Nhà XB: Trung tâm Tin học Bộ Giáo dục & Đào Tạo
4. Trung tâm Tin h ọc trường Đạ i h ọ c khoa h ọ c t ự nhiên TP. HCM, Ch ứ ng ch ỉ tin h ọ c qu ốc gia trình độ B Sách, tạp chí
Tiêu đề: Chứng chỉ tin học quốc gia trình độ B
Tác giả: Trung tâm Tin học trường Đại học khoa học tự nhiên TP. HCM
Nhà XB: Trung tâm Tin học trường Đại học khoa học tự nhiên TP. HCM
5. Microsoft Access 2007, http://www.ebook.edu.vn Sách, tạp chí
Tiêu đề: Microsoft Access 2007
6. Tài li ệ u tra c ứ u t ừ ch ức năng Help c ủ a MS Access 2007 Sách, tạp chí
Tiêu đề: Tài liệu tra cứu từ chức năng Help của MS Access 2007

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm