TIN HỌC ỨNG DỤNG TRONG KINH DOANH 2

Chương 2 BẢNG DỮ LIỆU - TABLE

Giảng Viên: ThS. Nguyễn Minh Thành Email: thanhnm@itc.edu.vn Tel : 0908.348.469

Chương 2: BẢNG DỮ LIỆU - TABLE

NỘI DUNG

1. Các khái niệm

2. Kiểu dữ liệu.

3. Thiết kế Table

4. Các Thuộc tính của kiểu dữ liệu

5. Thiết lập mối quan hệ

6. Các thao tác trên dữ liệu

7. Import/Export và liên kết dữ liệu

2

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

1. CÁC KHÁI NIỆM

1.1. Giới thiệu về bảng Dữ liệu lưu trong Access là một bảng được tổ chức thành nhiều dòng và nhiều cột. Một dòng được gọi là một mẩu tin (record – bản ghi). Một cột được gọi là trường (field – mục tin – vùng tin).

3

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

1. CÁC KHÁI NIỆM

1.2. Tên trường (Field name):

-Dài tối đa 64 ký tự có thể chứa chữ số, chữ cái, khoảng trắng và một vài ký tự khác, thường bắt đầu bằng một chữ cái.

- Tuy nhiên cũng có một số ký hiệu không dùng như: .,!, +, -, *, /…Với những tên trường có khoảng trắng (và những ký tự đặc biệt) khi truy xuất dữ liệu ta phải rào trong cặp dấu ngoặc vuông [].

Tốt nhất không nên dùng tên trường có khoảng trắng và các ký tự đặc biệt để hạn chế sai sót.

4

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

2. KIỂU DỮ LIỆU

2.1. Kiểu dữ liệu (Data Type)

Kiểu

Ý nghĩa

Text

Chứa tập hợp các ký tự tuỳ ý, <= 255 ký tự

Memo

Chứa tập hợp các ký tự tuỳ ý, <= 65535 ký tự

Number

Chứa giá trị số

Date/Time

Chứa giá trị ngày, giờ

Currency

Chứa giá trị tiền tệ

Auto Number Giá trị số (Access tự tăng 1 đơn vị cho mỗi bản ghi

mới)

Currency

Kiểu tiền tệ

OLE

Đối tượng dạng hình ảnh

Yes/No

Chứa giá trị logic (True/False)

Lookup Wizard Chọn một trị từ danh sách các trị

5

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

2. KIỂU DỮ LIỆU

2.3. Các thuộc tính  Độ rộng trường (FieldSize – chiều dài trường): Với dữ liệu kiểu số và chuỗi, ta có thể quy định độ rộng vào ô Field zize. - Dữ liệu kiểu text có chiều dài tối đa là 255. nếu ta khai báo lớn hơn thì thông tin nào vượt quá chiều dài sẽ bị ngắt bớt. - Dữ liệu kiểu Number:

6

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

2. KIỂU DỮ LIỆU

2.2. Mô tả trường (Description): Phần này dùng để mô tả rõ hơn về trường

7

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

2. KIỂU DỮ LIỆU

2.4. Qui định khoá chính (PrimaryKey) Một bảng dữ liệu (Table) thường phải có một trường (hay một nhóm trường) làm khoá chính.

Trong bảng trên khoá chính là MaHV vì không thể có 2 học viên có cùng mã số.

8

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

2. KIỂU DỮ LIỆU

Trong một vài trường hợp, một trường không đủ để nhận diện mẫu tin. Khi đó ta phải dùng 2 hay nhiều trường, chẳng hạn như bảng Kết Quả.

Lưu ý: Không thể thay đổi khóa chính khi đã thiết lập mối quan hệ có liên quan đến khoá này (muốn sửa khoá chính ta phải hủy bỏ các mối quan hệ liên quan).

9

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

3. THIẾT KẾ TABLE

3.1. Tạo bảng bằng Design View - Từ cửa sổ database như sau:

- Bước 1: Chọn New hay Create Table in Design View. Xuất hiện hộp thoại sau

10

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

3. THIẾT KẾ TABLE

Khai báo  ngườ tên tr

Khai báo ki u ể ữ ệ d  li u

Cho tạo bảng theo nhu cầu của NSD

 Trong hộp thoại New Table, chọn Design View, OK. Cửa sổ định nghĩa cấu trúc bảng có các phần

• Bước 2: Khai báo

11

11

ươ ữ ệ ả

tên trường, kiểu dữ liệu và khóa 28/08/2013            ­            MaMH: 701006         ­          Ch

ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

3. THIẾT KẾ TABLE

Sau khi khai báo các kiểu dữ liệu và tạo khoá xong ta Lưu (Ctrl + S ):

-Bước 3: Đặt tên bảng mới rồi nhấn OK.

Lưu ý: Trường hợp chưa khai báo khóa chính thì khi lưu bảng Acces sẽ nhắc nhở chỉ định khoá chính (there is no primary defined (Yes/No/Cancel)). - Chọn Yes:

+ Nếu trong bảng đã có 1 trường kiểu AutoNumber thì

Access sẽ lấy trường đó làm khoá chính

+ Nếu không có trường AutoNumber thì nó sẽ tạo ra một

trường có tên ID kiểu AutoNumber làm khoá chính - Chọn No thì không tạo khóa chính - Chọn Cancel thì trở lại cửa sổ thiết kế bảng

12

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

3. THIẾT KẾ TABLE

Các thông báo lỗi khi khai báo bảng : -Khi chỉ định một tên trường không hợp lệ (chẳng hạn như tên bắt đầu bằng một khoảng trắng…) thì sẽ thông báo lỗi

“The field is name is invalid”

hay một thông báo tương tự

“A field name is missing”

-Nếu trong một bảng có 2 tên trường trùng nhau thì sẽ thông báo lỗi:

“You already have a field name…”.

-Khi thay đổi kiểu dữ liệu hay độ rộng trường mà trường đó được để thiết lập quan hệ thì thông báo lỗi “You can’t change ta data type or field size of this field; it is part of one or more relationship”.

13

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

a. Thuộc tính Format

 Trường Text

Ký tự

Công dụng

@ Bắt buộc phải nhập kí tự vào văn bản

&

Không bắt buộc phải nhập kí tự vào văn bản

<

Biến chữ hoa thành chữ thường

>

Biến chữ thường thành chữ hoa

14

14

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

 Trường Number

Dạng

Số

Trình bày

1234.5

1234.5

General Number

Currency

1234.5

$1234.5

Fixed

1234.5

1234.50

Standard

1234.5

1,234.50

Percent

0.825

82.5%

15

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

 Trường Date / Time: thường chọn kiểu Short Date

Dạng

Hiển thị

General Date

4/23/02 10:30:00 AM

Long Date

Tuesday, April 23, 2002

Medium Date

23/April/2002

Short Date

4/23/02

Long Time

10:30:00 AM

Medium Time

10:30 AM

Short Time

10:30

16

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

b. Thuộc tính Input Mask (mặt nạ nhập liệu)

 Công dụng

• Tạo khuôn dạng nhập liệu cho dễ nhìn. Vd: dấu ngăn cách phần nguyên và thập phân, dấu gạch ngang để phân cách các cụm ký tự của tài khoản

• Kiểm tra tính hợp lệ của ký tự gõ vào. (Vd nếu qui định là chữ số thì Access sẽ không nhận các ký tự không phải là chữ số)

• Tự động biến đổi các ký tự được nhập (Vd từ chữ thường sang chữ hoa)

• Che giấu thông tin đưa vào (Vd khi ta dùng Password)

17

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

 Thuộc tính Input Mask (mặt nạ nhập liệu)

Ký tự

Công dụng : là vị trí dành cho

0

chữ số 0...9, bắt buộc

9

chữ số 0...9, không bắt buộc

#

chữ số, dấu cộng +, dấu trừ -, dấu cách

L

một chữ cái, bắt buộc

 Vd1: để nhập số điện thoại dạng Text theo mẫu: 0-511-810425 ta dùng mặt nạ 0-000-000000

?

chữ hoặc dấu cách, không bắt buộc

A

ký tự chữ hay số, bắt buộc

a

ký tự chữ hay số, không bắt buộc

&

ký tự bất kỳ, bắt buộc

C

ký tự bất kỳ, không bắt buộc

18

ươ ữ ệ ả

 Vd2: để nhập điểm thi chứa hai chữ số phần nguyên, một chữ số phần thập phân ta dùng mặt nạ 00.0 28/08/2013            ­            MaMH: 701006         ­          Ch

ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

Ví dụ:

19

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

c. Caption: Nếu không chỉ định thành phần này thì nó sẽ dùng FieldName làm tiêu đề của trường. Caption chỉ có nghĩa làm tiêu đề (cho dễ đọc) chứ không có tác dụng để truy xuất dữ liệu

d. Default Value ( qui định giá trị ngầm định): giá trị mặc định ban đầu của cột khi thêm một dòng dữ liệu mới. Ví dụ: Điểm: 0. Default Value: 0 Ngày hiện tại: Default Value: Date() Đơn vị tính thường và mét. Default Value: “mét “

20

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

e. Validation Rule: Quy tắc kiểm tra dữ liệu hợp lệ khi nhập dữ liệu vào bảng. Trong biểu thức này ta có thể chỉ định: - Phép toán so sánh: >, >=, <, <=, <> - Phép toán luận lý: AND, OR, NOT - Phép toán so sánh chuỗi: Like Ví dụ: Đơn vị tính chỉ lấy: mét, kg. Validation Rule: “mét”,”kg” -Điểm: từ 0 đến 10 . Validation: >=0 and <=10 f. Validation Text: Thông báo khi nhập liệu sai điều kiện ở Validation Rule Ví dụ: gán điểm trong Validation Rule là >=0 and <=10 mà ta nhập nhầm là 11 thì Access sẽ xuất sẽ thông báo lỗi thì chúng ta sửa lại thông báo lỗi cho người dùng hiểu. Validation Rule: “Điểm chỉ được từ 0 đến 10”

21

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

g. Required: Yes/No yêu cầu bắt buộc nhập liệu hay để trống. Nếu ta muốn 1 trường luôn phải có dữ liệu, chẳng hạn như HoTen thì qui định Required là Yes. Khi đó nếu ta lưu mẫu tin hay nhảy qua mẩu tin khác mà trường này chưa có dữ liệu thì sẽ thông báo: “Field ….can’t contain a Null value”

h. Allow Zero length: Yes/No cho phép chuỗi rỗng hay không.

22

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

i. Index (qui định chỉ mục): Thông thường ta muốn sắp xếp dữ liệu theo một trường nào đó để tăng tốc độ tìm kiếm. Chỉ định tính chất indexed là: •Yes (Duplicates): Qui định chỉ mục cho phép trùng nhau. •Yes (NoDuplicate):Qui định chỉ mục không được phép trùng nhau •No: Không chỉ định chỉ mục •PrimayKey (khoá chính) là một dạng chỉ mục đặc biệt, nó không cho phép hai mẩu tin trùng nhau trong khoá chính cho nên Index của nó là: Yes (Noduplicates). •Tuy nhiên có những trường không phải là khoá chính nhưng khi ta đặt index nó là Yes (Noduplicates) thì dữ liệu trong trường này cũng không được phép trùng nhau

23

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

j. Lookup: Dùng để hiển thị dạng các điều khiển text box, Combo box hay list box. Thông thường nếu cột của bảng là khóa ngoại và có thể tra cứu nhanh dữ liệu khi nhập và để tránh không có lỗi. Hay những cột chỉ có một số đặt trưng riêng như phái thì chỉ có “Nam” hay “Nữ” hay quy cách của mặt hàng chỉ có “cái” , “chiếc”, “cuốn”, “thùng” . Chúng ta dùng điều khiển lookup sẽ tiện hơn.

24

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

25

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

Ví dụ 1: Cách làm để chọn trường DonViTinh là: “cái”, “ chiếc”, “cuốn”, “thùng”

Chọn kiểu dữ liệu (Data Type) là: Text và trong phần thuộc tính Lookup chọn:

26

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

Ví dụ 2: Trong bảng LOP và HOCVIEN trong bảng HOCVIEN sẽ có cột MaLop mà bắt buột dữ liệu chỉ tồn tại trong bảng LOP.

Trong phần thuộc tính Lookup chọn:

27

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

4. CÁC THUỘC TÍNH CỦA KIỂU DỮ LIỆU

g. Qui định tính chất của bảng dữ liệu: - Ngoài việc qui định tính chất cho từng trường, ta có thể qui định thêm tính chất cho toàn bảng dữ liệu. Trường hợp phổ biến là kiểm tra dữ liệu trên 2 hay nhiều trường. Chẳng hạn như: NamCongTac >= NamSinh + 18 NgayTra >= NgayMuon View/properties (hay chọn Properties trên thanh công cụ hay trên menu tắt) rồi chỉ định biểu thức kiểm tra vào mục Validation Rule và chuỗi thông báo vào mục Validdation Text

28

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ

4.1. Tại sao phải thiết lập mối quan hệ giữa các bảng

Sau khi thiết kế các bảng, chúng ta chỉ mới có cấu trúc các bảng chứ chưa có thông tin quan hệ giữa các bảng với nhau. Do đó việc thiết lập mối quan hệ giữa các bảng giúp cho Access quản lý dữ liệu được hợp lý hơn.

Thí dụ: Có hai bảng LOP và HOCVIEN thì ta nhận thấy rằng giữa hai bảng này có tồn tại một mối quan hệ “một lớp thì có nhiều học viên”. Do đó để hợp lý khi nhập thông tin của một học viên mới thì bắt buộc sinh viên đó phải học trong các lớp hiện đang có.

29

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ

4.2. Các loại quan hệ giữa hai bảng trong Access.  Một - một (One To One): mô tả mối quan hệ một - một giữa hai bảng với nhau Ví dụ: chúng ta có hai bảng GIAOVIEN và LOP mối quan hệ giữa hai bảng này là một lớp học chỉ có một giáo viên chủ nhiệm trong một năm học và một giáo viên chỉ chủ nhiệm một lớp học trong một năm

 Một – nhiều (One To Many): mô tả mối quan hệ một - nhiều của hai bảng với nhau (hay còn gọi là nhiều – một) Ví dụ: Có hai bảng LOP va HOCVIEN mối quan hệ giữa hai bảng này là “trong một lớp có nhiều học viên đang theo học” hoặc “ có nhiều học viên học trong cùng một lớp”

30

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ

 Ngoài ra còn tồn tại mối quan hệ nhiều - nhiều (Many To Many): Tuy nhiên khi triển khai vào cơ sở dữ liệu quan hệ thì phải tách ra thành hai mối quan hệ một – nhiều

Ví dụ: chúng ta có bảng HOCVIEN và MONHOC mối quan hệ giữa hai bảng này là” một học viên được thi nhiều môn” và “ và một môn học có nhiều sinh viên đăng ký thi”. Khi đó chúng ta phải tạo thêm bảng KETQUATHI để có thể tạo ra mối quan hệ nhiều – nhiều.

31

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ 4.3. Các bước thực hiện tạo quan hệ - Bước 1: Gọi Tool -> Relationship… hay biểu tượng trên cụ xuất hiện hộp thoại sau:

- Bước 2: chọn các bảng cần tạo quan hệ nhấn nút Add

32

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ

- Bước 3: Kéo chuột tại cột cần tạo quan hệ của bảng thứ nhất sang cột quan hệ của bảng thứ hai - Xác định các quy tắc ràng buộc của mối quan hệ

Chọn một kiểu quan hệ

 Enforce Referencial Integrity: Ràng buộc toàn vẹn (kiểm tra dữ liệu ở bên nhiều phải tương ứng với dữ liệu ở bên một, nhờ đó ta không thể nhập MaLop ở trong bảng HOCVIEN mà không có loại MaLop ấy trong bảng LOP.

33

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ

Cascade Update Related Fields: Khi đánh dấu vào ô kiểm này nếu thay thay đổi cột MaLop bên nhánh một thì MaLop bên nhánh nhiều sẽ tự động sửa lại trong tất cả các record tương ứng. Check vào ô kiểm Delete Related Records: Khi đánh dấu vào ô kiểm này thì khi xoá 1 record bên một thì sẽ tự động xóa các record có liên hệ bên nhiều.

Lưu ý: - Luôn luôn đánh dấu thuộc tính thứ nhất - Không nên đánh dấu vào thuộc tính thứ 3 vì nguy hiểm cho dữ liệu

34

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ

Hình sau tạo quan hệ đã hoàn tất

35

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ

4.4. Các thông báo lỗi khi thiết lập quan hệ: -Khi thiết lập mối quan hệ trên các trường có kiểu dữ liệu không phù hợp thì sẽ thông báo lỗi “Relation must be on the same number of field with the same data type”

Ví dụ: MaGV ở bảng GIAOVIEN có kiểu text và chiều dài là 5 mà MaGVCN ở bảng LOP có kiểu text mà chiều dài là 50 Lưu ý: Khi thiết lập mối quan hệ phải kiểm tra khoá chính và khoá ngoại phải cùng kiểu dữ liệu và cùng kích thước

ữ ệ ả

- Khi thiết lập mối quan hệ có ràng buộc toàn vẹn dữ liệu mà dữ liệu trong khoá ngoại có những giá trị chưa có trong khoá chính thì sẽ báo lỗi “Microsoft Access can’t this Relationship and nforce referential integrity. Data in the table…violate referential integrital rule”. 36 ươ 28/08/2013            ­            MaMH: 701006         ­          Ch

ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

5. THIẾT LẬP MỐI QUAN HỆ

Ví dụ: Thiết lập mối quan hệ giữa 2 bảng sau:

37

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU 5.1. Nhập liệu - Từ cửa sổ database chọn bảng cần nhập liệu

- Bước 1: Chọn bảng rồi chọn Open hay double click vào bảng đã chọn. Ví dụ chọn bảng MONHOC

38

- Bước 2: lần lượt nhập thông tin của các môn học vào bảng ươ

ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

Lưu ý: Khi ta đã tạo quan hệ xong thì việc nhập liệu phải theo trình tự như sau: 1. Bảng chỉ có đầu quan hệ là một: GIAOVIEN, MONHOC. 2. Bảng có đầu quan hệ một – một từ GIAOVIEN và LOP: LOP. 3. Bảng có quan hệ đầu một, nhiều : HOCVIEN. 4. Bảng chỉ có đầu quan hệ nhiều: KETQUA.

39

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

Các thông báo lỗi khi nhập liệu: - Khi không nhập liệu cho trường chỉ mục hay khoá chính mà chuyển sang mẩu tin khác thì sẽ báo lỗi “ Index or Primary Key can’t contain a Null value”.

-Khi nhập một giá trị không phù hợp cho một trường (ví dụ 50000 cho trường khai báo kiểu byte hay Integer) hay nhập một chữ cái vào trường number thì sẽ báo lỗi “The value you entered isn’t valid for this field”.

-Độ rộng nhỏ hơn dữ liệu ví dụ kiểu text khai báo fieldsize: 5 mà ta nhập đến 6 ký tự thì sẽ báo lỗi “the filed too small to accept the amount of data you attemped to add. Try inserting or passing less data”. -Khi ta nhập một trường không đúng với InputMask qui định thì sẽ báo lỗi “the value you entered isn’t appropriate for the input mask… specified for this field”.

40

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

- Khi ta thay đổi dữ liệu trên một bảng có quan hệ với bảng khác mà vi phạm tính toàn vẹn dữ liệu thì sẽ thông báo lỗi “you can’t add or change a record because a related record is required in table…”

Ví dụ: Bảng LOP có MaLop là mà ta nhập vào bảng HOCVIEN cột MaLop có dữ liệu . Vì TH1 không tồn tại trong bảng LOP

41

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

- Khi trùng nhau trên trường index, khoá chính. Thì sẽ báo lỗi “the changes you requested to the table were not successful because they would create duplicate value in the index, primarykey or relationship… ”

Ví dụ : Thêm dòng có MaHV là 002

42

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

5.2. Tìm kiếm dữ liệu - Khi bảng dữ liệu có nhiều mẩu tin, dùng lệnh Find thay cho cách dò qua từng mẩu tin. - Muốn thực hiện tìm kiếm ta gọi Edit/Find (Ctrl+F) hay nhấp vào biểu tượng trên thanh công cụ hiển thị hộp thoại (thực hiện giống như word và excel)

5.3. Tìm kiếm thay thế Đôi khi ta muốn thay thế giá trị bằng một giá trị khác ở nhiều nơi trong bảng. Gọi lệnh Edit/Replace (Ctrl+H) hiển thị hộp thoại (thực hiện giống như word và excel).

43

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

5.4. Sắp xếp dữ liệu

Để hiển thị dữ liệu theo thứ tự mà ta muốn. - Sắp xếp nhanh: dời con nháy vào trường để lấy thứ tự sắp xếp rồi chọn biểu tượng tăng dần hoặc giảm dần trên thanh công cụ. - Hoặc có thể vào record/sort/…

44

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

5.5. Lọc dữ liệu Gọi Records -> Filter. Chọn một trong bốn chức năng sau: + Lọc theo biểu mẫu (Filter by form): Click vào filter by Form. Mẫu lọc trắng xuất hiện, trong đó các nút điều trắng. Click vào field chứa dữ liệu lọc thì bên phải xuất hiện nút Drop down, click vào đó để chọn dữ liệu. Sau đó click vào để xem kết quả hay trả lại kết quả.

+ Lọc mẫu theo giá trị đã đánh dấu (Filter By Selection): Chỉ cho phép chúng ta lọc các dữ liệu đúng với giá trị mà chúng ta đã đánh dấu. Ví dụ: Trên bảng HOCVIEN chỉ lọc danh sách các sinh viên ở lớp KT1. Các bước thực hiện:

- Bước 1: Mở bảng HOCVIEN ở chế độ cập nhật dữ liệu. - Bước 2: Đánh dấu giá trị tại cột dữ liệu muốn lọc. - Bước 3: Record -> Filter -> Filter By Selection.

45

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

+ Lọc theo lấy phần khác với giá trị đã đánh dấu (Filter Excluding Selection) : Cho phép chúng ta lọc các dòng dữ liệu khác với giá trị đã đánh dấu.

Ví dụ: Trên bảng HOCVIEN lọc các học viên không học trong lớp KT1. Bước 1: Mở bảng SINH VIÊN ở chế độ cập nhật dữ liệu. Bước 2: Đánh dấu giá trị tại cột dữ liệu muốn lọc (tại cột Mã khoa chọn giá trị AV) Bước 3: Record -> Filter -> Filter Excluding Selection.

46

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6.CÁC THAO TÁC TRÊN DỮ LIỆU

+ Lọc theo cách khác (Advance Filter/ Sort) : Cho phép chúng ta lọc dữ liệu hoặc sắp xếp theo cách riêng tuỳ ý theo người sử dụng. Với cách này giúp người sử dụng thoải mái hơn. Chúng ta có thể kết hợp các điều kiện phức tạp, các hàm tính toán và các phép tính logic And, Or bằng cách thể hiện trên màn hình này.

Lưu ý: - Điều kiện ghi trên cùng một cột thể hiện phép toán logic Or. - Điều kiện ghi trên cùng một dòng thể hiện phép toán logic And. Ví dụ: hình trên là lọc những học viên học ở lớp KT1 và KT2

47

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6. IMPORT/EXPORT DỮ LIỆU

6.1. Import (nhập dữ liệu) Là việc sao chép dữ liệu của một ứng dụng bên ngoài vào CSDL hiện hành. Các ứng dụng này có thể là FoxPro, Oracle, SQLServer, Excel, text.. hoặc đối tượng của một tập tin CSDL Access khác.

Thao tác Import: File -> Get External Data -> Import…

48

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6. IMPORT/EXPORT DỮ LIỆU

6.2. Export (xuất dữ liệu) Cho phép chúng ta xuất các đối tượng của tập tin cơ sở dữ liệu Access hiện hành ra bên ngoài thành một dạng dữ liệu khác cho các ứng dụng word, excel, SQLServer . . . hoặc cũng có thể ra một đối tượng trong CSDL access khác.

49

ữ ệ ươ ả

Các thao tác kết xuất dữ liệu - Export: - Chọn bảng dữ liệu muốn kết xuất ttrong CSDL hiện hành. - Click phải chuột -> chọn chức năng Export…. - Chọn kiểu dữ liệu cho tập tin và ghi tên tập tin mới. ng 2. B ng d  li u – Table

28/08/2013            ­            MaMH: 701006         ­          Ch

Chương 2: BẢNG DỮ LIỆU - TABLE

6. IMPORT/EXPORT DỮ LIỆU

6.3. Liên kết dữ liệu (Link) Là sự liên kết giữa các bảng trong các CSDL khác nhau. Khi đó có một tập tin CSDL chứa bảng gốc còn các tập tin CSDL còn lại chứa bảng liên kết với tập tin CSDL chứa bảng gốc.

50

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

Chương 2: BẢNG DỮ LIỆU - TABLE

6. IMPORT/EXPORT DỮ LIỆU

6.3. Liên kết dữ liệu (Link)

Ví dụ: Ứng dụng Quản lý sinh viên tại một trường đại học có bảng SINH VIÊN lưu lý lịch tất cả sinh viên khi họ đến đăng ký hồ sơ nhập học. Mỗi khoa trong trường theo yêu cầu quản lý có thể xây dựng các ứng dụng riêng của từng khoa. Tuy nhiên để khỏi nhập liệu lại và để nhất quán giữa khoa và phòng đao tạo thì chúng ta có thể tạo các bảng liên kết trong tập tin CSDL của phòng đào tạo Thao tác tạo bảng liên kết: File -> Get External Data -> Link Tables…

51

ươ ữ ệ ả 28/08/2013            ­            MaMH: 701006         ­          Ch ng 2. B ng d  li u – Table

TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG KHOA QUẢN TRỊ KINH DOANH