Cơ Sở Dữ Liệu Là Gì Cơ sở dữ liệu Database, viết tắt là CSDL hoặc DB, là một tập hợp các Dữ liệu có quan hệ logic với nhau, có thể dễ dàng chia sẻ và được thiết kế nhằm đáp ứng các nhu c
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TRUNG TÂM MÁY TÍNH
-
TÀI LIỆU
HỆ QUẢN TRỊ
CƠ SỞ DỮ LIỆU QUAN HỆ
(Dành cho môn Tin học cơ sở 2)
Trang 2MỤC LỤC
I Các khái niệm cơ bản 7
I.1 Dữ liệu 7
I.2 Cơ Sở Dữ Liệu Là Gì 7
I.3 Vai trò của CSDL? 9
I.4 Hệ Quản Trị Cơ Sở Dữ Liệu Là Gì 10
I.4.1 Các chức năng của một hệ quản trị cơ sở dữ liệu 10
I.4.2 Các đặc trưng của giải pháp cơ sở dữ liệu 12
I.4.3 Ví dụ về một cơ sở dữ liệu 14
I.4.4 Mô hình cơ sở dữ liệu 16
I.5 Con người trong hệ cơ sở dữ liệu 18
I.5.1 Người quản trị hệ cơ sở dữ liệu (Database Administrator – DBA) 18
I.5.2 Người thiết kế cơ sở dữ liệu (Database Designer) 18
I.5.3 Những người sử dụng (End User) 19
I.6 Các khái niệm về bảng dữ liệu 21
II Hệ quản trị cơ sở dữ liệu quan hệ 23
II.1 Giới thiệu chung về hệ quản trị cơ sở dữ liệu Access 23
II.1.1 Bước đầu làm việc với hệ quản trị cơ sở dữ liệu 24
II.1.2 Thao tác với các đối tượng trong cơ sở dữ liệu 26
II.2 Tạo bảng 28
II.2.1 Tạo bảng bằng chức năng Table Design 28
II.2.2 Tạo bảng trong chế độ Datasheet View 30
II.3 Các kiểu dữ liệu (Data Type) 30
II.4 Các thuộc tính của Field (Field Properties) 31
II.4.1 Field Size 31
II.4.2 Decimal Places 32
II.4.3 Format 32
II.4.4 Input Mask (mặt nạ nhập liệu) 35
II.4.5 Tạo field Lookup Wizard 35
II.4.6 Validation rule (Quy tắc hợp lệ) 38
II.4.7 Validation text (Thông báo lỗi) 39
II.4.8 Required (Yêu cầu) 39
II.4.9 AllowZeroLength 39
II.4.10 Index ( Chỉ mục/ Sắp xếp) 39
II.4.11 Caption 39
II.4.12 Defaut value 39
II.5 Hiệu chỉnh cấu trúc của bảng 39
II.6 Cách nhập dữ liệu cho bảng 40
II.7 Tạo quan hệ giữa các bảng trong cơ sở dữ liệu – Relationships 41
Trang 3II.7.2 Cách tạo quan hệ 42
II.7.3 Cách xóa quan hệ 44
II.7.4 Kiểu kết nối (Join type) 44
II.8 Các thao tác với bảng ở chế độ Datasheet view 45
II.8.1 Một số định dạng trong chế độ Database View 45
II.8.2 Sắp xếp 47
II.8.3 Tìm kiếm và thay thế 48
II.8.4 Lọc dữ liệu 49
III Toán tử Hàm – Biểu thức 53
III.1 Toán tử 53
III.1.1 Toán tử số học 53
III.1.2 Toán tử so sánh 53
III.1.3 Toán tử logic 53
III.1.4 Toán tử khác 53
III.1.5 Toán tử nối chuỗi 54
III.2 Hàm 54
III.2.1 Hàm xử lý kiểu dữ liệu Text 54
III.2.2 Hàm ngày giờ 54
III.2.3 Hàm điều kiện 55
III.2.4 Hàm cơ sở dữ liệu 55
III.3 Biểu thức 55
IV Truy vấn (Query) 57
IV.1 Khái niệm 57
IV.2 Các loại query 57
IV.3 Cách tạo select query bằng Design view 57
IV.3.1 Các thành phần trong cửa sổ thiết kế query 58
IV.3.2 Các thao tác trong cửa sổ thiết kế query 59
IV.3.3 Cách nhập biểu thức điều kiện 60
IV.3.4 Truy vấn có nhiều điều kiện ở nhiều fields 61
IV.3.5 Top value 62
IV.3.6 Tạo field tính toán trong query 63
IV.3.7 Sử dụng Expresstion Builder 64
IV.4 Total query 64
IV.4.1 Cách tạo Total Query 65
IV.4.2 Các tùy chọn trên dòng Total 66
IV.5 Queries tham số (Parameter Queries) 66
IV.6 Crosstab query 67
IV.6.1 Khái niệm 67
IV.6.2 Cách tạo 68
IV.7 Các loại query tạo bằng chức năng Wizard 71
Trang 4IV.7.1 Find Duplicate query 71
IV.7.2 Find Unmatched query Wizard 72
IV.8 Action query 73
IV.8.1 Update query 73
IV.8.2 Make-Table query 74
IV.8.3 Append query 76
IV.8.4 Delete query 77
V Biểu mẫu (Form) 79
V.1 Giới thiệu 79
V.2 Cách tạo form 79
V.2.1 Tạo một Single Form 79
V.2.2 Tạo form bằng chức năng Form Wizard 80
V.2.3 Tạo Form bằng Design 82
V.3 Sử dụng Form 85
V.3.1 Tìm kiếm và chỉnh sửa một record 85
V.3.2 Thêm một record 86
V.3.3 Xóa một record 87
V.3.4 Lọc dữ liệu trên form 87
V.4 Tùy biến form trong chế độ Desing view 88
V.4.1 Thêm một control vào form 88
V.4.2 Các loại form control 88
V.4.3 Định dạng các control trên form 90
V.4.4 Thiết lập thuộc tính cho control 91
V.5 Cách tạo các control có hỗ trợ của chức năng Wizard 91
V.5.1 Command button 91
V.5.2 Option group 92
V.5.3 Combo box và List box 93
V.6 Form và những bảng liên kết 97
V.6.1 Subform control 97
V.6.2 Hiệu chỉnh subform 99
V.6.3 Tạo ô tính toán trong subform 99
V.7 Tab control 100
V.7.1 Sử dụng tab control 101
V.7.2 Hiệu chỉnh tab Control 101
V.8 Navigation Form 102
V.8.1 Tạo Single level Navigation Form 102
V.8.2 Tạo Two level Navigation Form 103
V.9 Liên kết đến dữ liệu quan hệ (Link to Related Data) 104
V.9.1 Hiển thị các record quan hệ trong form riêng biệt 104
Trang 5VI Báo cáo (Report) 107
VI.1 Giới thiệu 107
VI.2 Cách tạo report 107
VI.2.1 Tạo bằng lệnh Report 107
VI.2.2 Tạo report bằng chức năng Wizard 108
VI.2.3 Tạo report bằng Design 110
VI.3 Tạo report có phân nhóm 112
VI.3.1 Sử dụng Total Query 112
VI.3.2 Report Grouping 113
VI.3.3 SubReport 115
VI.3.4 Tạo report có phân nhóm bằng wizard 116
VI.3.5 Ngắt trang trong report phân nhóm 118
VI.4 Preview Rport 119
VI.5 Định dạng report 119
VI.5.1 Tạo lưới cho report 119
VI.5.2 Thiết lập thuộc tính của các đối tượng trong report 119
VI.5.3 Định dạng dữ liệu 120
VII Macro 123
VII.1 Giới thiệu 123
VII.2 Cách tạo và thực thi Standalone macros 123
VII.2.1 Cách tạo 123
VII.2.2 Thực thi macro 125
VII.2.3 Sub Macro 125
VII.2.4 Các Actions và các Events thông dụng 126
VII.3 Tạo Data Macro 128
VII.3.1 Cách tạo 129
VII.3.2 Các Action của data macro 130
VII.3.3 Xóa data macro 131
VII.4 Embedded macros 131
VII.5 Hiệu chỉnh macro 131
VII.5.1 Thay đổi action arguments 131
VII.5.2 Sắp xếp các actions 132
VII.5.3 Thêm một action mới 132
VII.5.4 Xóa một action 132
VII.6 Các hàm thường dùng trong biểu thức điều kiện 132
VII.6.1 Hàm MsgBox («msg», «type», «title») 132
VII.6.2 DCount («expr», «domain», «criteria») 133
VII.7 Macro Autoexec 134
VII.8 Xậy dựng hệ thống menu bằng macro 134
VII.8.1 Tạo macro cho hệ thống menu 134
Trang 6VII.8.2 Đưa menu vào chương trình 135
VIII Module 137
VIII.1 Giới thiệu 137
VIII.1.1 Cửa sổ soạn thảo code VB 137
VIII.2 Cách tạo Module 138
VIII.2.1 Tạo một module dùng chung 138
VIII.2.2 Module gắn với form, report 138
VIII.2.3 Các thành phần trong module 139
VIII.2.4 Lệnh khai báo 140
VIII.2.5 Lệnh gán 140
VIII.3 Kiểu dữ liệu 141
VIII.3.1 Kiểu số 141
VIII.3.2 Kiểu chuỗi - String 141
VIII.3.3 Kiểu đối tượng thuộc cơ sở dữ liệu 142
VIII.4 Các hàm thông dụng 142
VIII.4.1 Hàm MsgBox 142
VIII.4.2 Hàm InputBox 143
VIII.4.3 Hàm dữ liệu số 143
VIII.4.4 Hàm xử lý chuỗi 144
VIII.5 Biến kiểu đối tượng 144
VIII.5.1 Các đối tượng có sẵn 144
VIII.5.2 Đối tượng không có sẵn 147
VIII.6 Cấu trúc điều khiển 148
VIII.6.1 Cấu trúc If…Then…Else 148
VIII.6.2 Cấu trúc Select Case 148
VIII.6.3 Cấu trúc For…Next 149
VIII.6.4 Cấu trúc For Each…Next 150
VIII.6.5 Cấu trúc Do…Loop 150
VIII.7 Lệnh Function 150
VIII.8 Lệnh Sub 151
VIII.9 Lệnh Call 151
Trang 7I Các khái niệm cơ bản
I.1 Dữ liệu
Theo định nghĩa, Dữ liệu (data) là một mô tả hình thức về thông tin hay hoạt động nào đó Trong cuộc sống hằng ngày, chúng ta tham gia vào rất nhiều các lĩnh vực khác nhau như kinh doanh, giáo dục, giải trí, hành chính, tiền tệ… Mỗi lĩnh vực lại có vô vàn các thông tin khác nhau được sinh ra, được truyền đạt, bị mất đi hay được tái tạo… Tuy nhiên, không phải thông tin nào cũng được coi là dữ liệu Từ vô vàn những thông tin đó có những sự kiện, khái niệm,
số liệu… được lọc ra và lưu trữ tùy theo mục đích sử dụng, đó mới chính là dữ liệu Điều này cũng có nghĩa rằng: cùng là các thông tin như nhau nhưng đối với cá nhân, tổ chức này thì nó
là dữ liệu trong khi với cá nhân, tổ chức khác thì không Đơn giản là vì mỗi cá nhân, tổ chức
sử dụng các thông tin với mục đích khác nhau và không phải thông tin nào cũng được sử dụng bởi tất cả mọi người
Dữ liệu được mô tả dưới nhiều dạng khác nhau Ví dụ như các ký tự, ký số, hình ảnh, ký hiệu,
âm thanh… Mỗi cách mô tả như vậy gắn chúng với một ngữ nghĩa nào đó
Ví dụ: Một đối tượng sinh viên thực tế có rất nhiều thông tin khác nhau liên quan đến bản
thân sinh viên đó như: tên, địa chỉ, ngày sinh, lớp, điểm số … sở thích, tác phong, quê quán, cha mẹ, anh, chị ,em , quan hệ cộng đồng,cân nặng, chiều cao… Song, với mục đích quản lý (thông thường) của nhà trường thì không phải tất cả các thông tin kia đều được lưu trữ Tùy mục đích, nhà trường có thể cần lưu trữ:
- Tên, địa chỉ, ngày sinh, lớp, điểm số
- Hoặc tên, địa chỉ, ngày sinh, lớp, điểm số, quê quán, cha mẹ,…
- Hoặc một tập hợp thông tin khác
I.2 Cơ Sở Dữ Liệu Là Gì
Cơ sở dữ liệu (Database), viết tắt là CSDL hoặc DB, là một tập hợp các Dữ liệu có quan hệ logic với nhau, có thể dễ dàng chia sẻ và được thiết kế nhằm đáp ứng các nhu cầu sử dụng của một tổ chức, cá nhân nào đó
Một cách định nghĩa khác dễ hiểu hơn, CSDL là một tập hợp có cấu trúc của những Dữ liệu
có liên quan với nhau được lưu trữ trong máy tính (bảng chấm công nhân viên, danh sách các
đề án, niên giám điện thoại…) Một CSDL được thiết kế, xây dựng và lưu trữ với một mục đích xác định như phục vụ lưu trữ, truy xuất dữ liệu cho các ứng dụng hay người dùng
Trang 8Quan hệ giữa thông tin, dữ liệu và CSDL Khi phân tích các thông tin cần lưu trữ về một tổ chức bất kỳ, chúng ta cần phải nhận ra các entity (thực thể) thuộc về tổ chức đó Với mỗi entity lại có nhiều attribute (thuộc tính) khác nhau Ngoài ra, giữa các entity lại có các mối quan hệ qua lại mà ta gọi là relationship Tất cả các CSDL đều có thể được biểu diễn bởi hệ thống các entity, các attribute và các relationship Các mối quan hệ giữa entity, attribute, relationship được gọi là quan hệ logic
Ví dụ : Với trường ĐẠI HỌC, khi phân tích tùy theo mục đích khác nhau sẽ có những tập
hợp các entity, attribute, relationship khác nhau Dưới đây chỉ là một ví dụ:
- Entity: Khoa, lớp, sinh viên, giáo viên, môn học, trụ sở, phòng ốc, giảng đường, bàn ghế…
- Attribute:
o Khoa: tên khoa, trưởng khoa, thông tin mô tả, …
o Sinh viên: họ tên, khoa, chuyên ngành, lớp,…
o Trụ sở: Cơ sở Nguyễn văn cừ, cơ sở linh trung, …
- Relationship:
o Mỗi sinh viên chỉ thuộc về một khoa nhất định
o Mỗi khoa chỉ có một trưởng khoa duy nhất
Trang 9I.3 Vai trò của CSDL?
Ngày nay, CSDL đã trở thành một phần không thể thiếu trong các hoạt động đời sống hàng ngày Mỗi ngày, có thể ta sử dụng nhiều CSDL khác nhau, nhiều lần khác nhau nhưng lại không nhận ra điều đó
Nếu ta là ta đọc của một hệ thống thư viện nào đó, mỗi khi ta đăng ký mượn sách, trả sách hay tìm kiếm sách thông qua hệ thống quản lý điện tử của thư viện (vd thư viện Trường) là ta đang sử dụng CSDL của thư viện đó Tùy vào sự hiện đại của hệ thống, thủ thư sẽ nhập bằng tay hay dùng máy quét mã số của các cuốn sách Sau đó tùy vào tính chất của hoạt động hiện tại (mượn, trả…) mà thủ thư sẽ input thêm một số lệnh khác cho hệ thống (click các button…) Bằng cách nào đó, những cuốn sách nói trên sẽ được đánh dấu trong CSDL là đã mượn hoặc
đã trả …
Nếu ta đi mua hàng ở siêu thị, tại quày tính tiền, các nhân viên siêu thị sẽ dùng máy quét mã của sản phẩm ta muốn mua Bên dưới CSDL sẽ cập nhật các thông tin tùy theo thiết kế chẳng hạn như: tên sản phẩm, đơn giá, số lượng, tổng tiền, thời gian mua, …
Nếu ta có một chiếc máy vi tính và sử dụng chúng hằng ngày, điều đó cũng có nghĩa là ta sử dụng CSDL hằng ngày thông qua việc sử dụng các ứng dụng cài đặt trong chiếc máy của mình
Trong lĩnh vực lập trình ứng dụng nói riêng và Công nghệ Thông tin nói chung, việc sử dụng CSDL ngày càng phổ biến Việc sử dụng CSDL giúp tạo ra các sản phẩm phần mềm chuyên nghiệp hơn, lưu trữ có hệ thống, ít tốn chỗ và dễ dàng quản lý hơn Các công ty, tổ chức ngày nay hầu như đều tích hợp CSDL với hệ thống website của họ Điều này cho phép tổ chức, công ty đó gửi và thu thập thông tin với người dùng một cách hết sức tinh vi Hệ thống đặt vé máy bay của Vietnam Airlines hay hệ thống đặt vé xe lửa của ga Sài Gòn là một ví dụ Tại một thời điểm bất kỳ có thể có nhiều người cùng truy cập và đặt vé một lúc Ứng dụng CSDL vào hệ thống này là cách để tránh những sai sót như: nhiều người cùng mua một vé, mua phải
vé đã bán cho người khác, trả tiền nhưng không mua được vé …
Trang 10Vị trí của CSDL trong hệ thống
Ví dụ: Một danh sách sinh viên của một trường với 5 trường dữ liệu là họ và tên sinh viên,
năm sinh, mã số sinh viên, lớp học và khóa học được coi là một cơ sở dữ liệu
I.4 Hệ Quản Trị Cơ Sở Dữ Liệu Là Gì
Bất cứ cơ sở dữ liệu nào sau khi được tạo ra cũng cần được lưu trữ lại Quá trình lưu cơ sở dữ liệu này được thực hiện qua việc sử dụng hệ quản trị cơ sở dữ liệu
Hệ quản trị cơ sở dữ liệu (HQT CSDL) là chương trình phần mềm giúp thực hiện việc lưu trữ
cơ sở dữ liệu Hệ quản trị trị cơ sở dữ liệu khi lưu trữ cơ sở dữ liệu cần đảm bảo được được tính cấu trúc trong cơ sở dữ liệu và ngoài ra cần phải hỗ trợ việc đọc, chỉnh sửa, thêm và xóa
dữ liệu trên cơ sở dữ liệu một cách dễ dàng
I.4.1 Các chức năng của một hệ quản trị cơ sở dữ liệu
Một hệ quản trị cơ sở dữ liệu hiện nay có các chức năng sau:
- Lưu trữ các định nghĩa, các mối liên kết dữ liệu (gọi là siêu dữ liệu) vào một từ điển
dữ liệu Các chương trình truy cập đến cơ sở dữ liệu làm việc thông qua hệ quản trị cơ
sở dữ liệu Hệ quản trị cơ sở dữ liệu sử dụng dữ liệu trong từ điển dữ liệu để tìm kiếm các cấu trúc thành phần dữ liệu và các mối liên kết được yêu cầu Mọi sự thay đổi trong các tệp cơ sở dữ liệu sẽ được tự động ghi lại vào từ điển dữ liệu Như vậy, hệ quản trị
cơ sở dữ liệu giải phóng người sử dụng khỏi việc lập trình cho các mối liên kết phức
Trang 11tạp trong mỗi chương trình, việc sửa đổi các chương trình truy cập đến tệp cơ sở dữ liệu đã bị sửa đổi Nói cách khác, hệ quản trị cơ sở dữ liệu loại bỏ sự phụ thuộc giữa
dữ liệu và cấu trúc ra khỏi hệ thống
- Tạo ra các cấu trúc phức tạp theo yêu cầu để lưu trữ dữ liệu Nó giúp người sử dụng làm nhiệm vụ khó khăn là định nghĩa và lập trình cho các đặc trưng vật lý của dữ liệu
- Biến đổi các dữ liệu được nhập vào để phù hợp với các cấu trúc dữ liệu ở điểm 2 Như vậy, hệ quản trị cơ sở dữ liệu giúp người sử dụng phân biệt dạng logic và dạng vật lý của dữ liệu Bằng việc duy trì sự độc lập dữ liệu, hệ quản trị cơ sở dữ liệu chuyển các yêu cầu logic thành các lệnh định vị một cách vật lý và lấy ra các dữ liệu yêu cầu Điều
đó cũng có nghĩa là hệ quản trị cơ sở dữ liệu tạo khuôn dạng cho các dữ liệu được lấy
ra để làm cho nó phù hợp với mong muốn logic của người sử dụng
- Tạo ra một hệ thống bảo mật và áp đặt tính bảo mật và riêng tư trong cơ sở dữ liệu
- Tạo ra các cấu trúc phức tạp cho phép nhiều người sử dụng truy cập đến dữ liệu
- Cung cấp các thủ tục sao lưu và phục hồi dữ liệu để đảm bảo sự an toàn và toàn vẹn
Chức năng của một HQT CSDL:
- Cho phép tạo ra các cấu trúc để lưu giữ dữ liệu
- Cho phép nhập, lưu giữ, xem, xóa, sửa đổi, chèn các dữ liệu vào CSDL
- Cho phép thao tác trên các dữ liệu của CSDL để đưa ra các thông tin
- Cho phép tạo báo cáo, bảng biểu để tổ chức đưa thông tin ra theo 1 mẫu nào đó
- Cung cấp các công cụ đảm bảo sự an toàn dữ liệu
Trang 12Hệ cơ sở dữ liệu Như ở ví dụ trên ta có thể lưu danh sách sinh viên này trên một bảng tính Excel hoặc một tập tin CSV (CSV là viết tắt của cụm từ comma separated vlue, là một loại cấu trúc tập tin đơn giản sử dụng dấu phảy (,) để phân biệt giữa các trường dữ liệu) Tuy nhiên cả Excel và CSV không được coi là hệ quản trị cơ sở dữ liệu vì chúng không hỗ trợ việc đọc, xóa và chỉnh sửa thông tin một cách dễ dàng Lấy ví dụ nếu ta muốn đếm xem có bao nhiêu sinh viên có ngày sinh nhật trước ngày 20/09/1988 thì việc này rất khó thực hiện trên cả tập tin Excel và CSV Các hệ quản trị cơ sở dữ liệu phổ biến hiện này bao gồm: Microsoft Access, MySQL, Oracle, PostgreSQL, SQL Server
Việc sử dụng các phần mềm (hệ quản trị cơ sở dữ liệu) này sẽ giúp các nhà quản trị hệ thống
dễ dàng thực hiện các thao tác như tìm kiếm, lọc, xóa, chỉnh sửa hay tạo mới dữ liệu trên cơ
sở dữ liệu Để làm được điều này trên các hệ quản trị cơ sở dữ liệu các nhà quản trị hệ thống thường sử dụng ngôn ngữ truy vấn mang tính cấu trúc: Structured Query Language hay SQL
I.4.2 Các đặc trưng của giải pháp cơ sở dữ liệu
Trước khi khái niệm cơ sở dữ liệu ra đời, hệ thống tệp (file) là một phương pháp được áp dụng trong việc quản lý Một tệp có thể được xem là một cặp hồ sơ lưu trữ các thông tin liên quan đến từng công việc riêng biệt Ví dụ, trong một cơ quan, bộ phận tài vụ sẽ có một cặp
hồ sơ liên quan đến lương của các nhân viên, bộ phận tổ chức có cặp hồ sơ liên quan đến vấn
đề nhân sự… Việc xử lý để lấy ra các thông tin như là các thống kê về lương, về quá trình công tác… lúc đầu được thực hiện một cách thủ công Dần dần, khối lượng thông tin ngày
Trang 13càng lớn, việc xử lý thông tin ngày càng phức tạp, người ta sử dụng máy tính vào việc quản
lý Các cặp hồ sơ được chuyển thành các tệp trên máy tính và việc xử lý thông tin được thực hiện bằng cách lập trình (trong một ngôn ngữ lập trình thế hệ 3)
Việc quản lý theo giải pháp hệ thống tệp có rất nhiều nhược điểm Thứ nhất, đó là sự dư thừa thông tin: cùng một thông tin được lưu trữ nhiều lần (chẳng hạn, danh sách nhân viên có mặt trong tệp lương và cũng có mặt cả trong tệp nhân sự) Điều đó gây ra việc lãng phí bộ nhớ và
dễ gây sai sót trong khi cập nhật dữ liệu, dễ sinh ra các dữ liệu không đúng đắn Thứ hai, đó
là việc phụ thuộc giữa chương trình ứng dụng và dữ liệu Mỗi khi có sự thay đổi cấu trúc tệp
và các dữ liệu trong tệp, chương trình ứng dụng khai thác thông tin trên tệp đó cũng thay đổi theo Điều đó gây ra khó khăn lớn cho việc bảo trì
Giải pháp cơ sở dữ liệu ra đời đã giải quyết được những nhược điểm đó Cụ thể, giải pháp cơ
sở dữ liệu có những đặc trưng sau:
- Bản chất tự mô tả của hệ cơ sở dữ liệu
Một đặc trưng cơ bản của giải pháp cơ sở dữ liệu là hệ thống cơ sở dữ liệu không chỉ gồm có bản thân cơ sở dữ liệu mà còn có cả định nghĩa hoặc mô tả đầy đủ về cấu trúc
cơ sở dữ liệu và các ràng buộc Định nghĩa này được lưu trữ trong từ điển hệ thống, nó chứa các thông tin như là cấu trúc của mỗi tệp, kiểu và dạng lưu trữ của từng mục dữ liệu Các thông tin được lưu giữ trong từ điển gọi là siêu dữ liệu (meta-data) và chúng
mô tả cấu trúc của dữ liệu nguyên thuỷ (hình 1-1) Phần mềm hệ quản trị cơ sở dữ liệu
và những người sử dụng cơ sở dữ liệu sử dụng từ điển để lấy thông tin về cấu trúc của
cơ sở dữ liệu
- Sự độc lập giữa chương trình và dữ liệu
Trong hệ thống tệp, cấu trúc của các tệp cơ sở dữ liệu được nhúng vào trong các chương trình truy cập, vì vậy bất kỳ một thay đổi nào về cấu trúc của một tệp cũng đòi hỏi phải thay đổi tất cả các chương trình truy cập đến tệp đó Ngược lại, các chương trình truy cập của hệ quản trị cơ sở dữ liệu không đòi hỏi việc thay đổi như thế Cấu trúc của các tệp dữ liệu được lưu trữ trong từ điển tách rời với các chương trình truy cập Tính chất này gọi là sự độc lập dữ liệu – chương trình
- Hỗ trợ các khung nhìn dữ liệu nhiều thành phần
Một cơ sở dữ liệu có nhiều người sử dụng, mỗi một người có thể đòi hỏi một phối cảnh hoặc một khung nhìn (view) khác nhau Một khung nhìn có thể là một tập con của cơ
sở dữ liệu hoặc nó có thể chứa các dữ liệu ảo, đó là các dữ liệu được trích ra từ các tệp
cơ sở dữ liệu khác nhau nhưng không được lưu trữ một cách rõ ràng Một hệ quản trị
cơ sở dữ liệu nhiều người sử dụng phải cung cấp nhiều công cụ để định nghĩa các khung nhìn nhiều thành phần
- Chia sẻ dữ liệu và nhiều người sử dụng
Trang 14Một hệ quản trị cơ sở dữ liệu nhiều người sử dụng phải cho phép nhiều người sử dụng truy cập đồng thời đến cơ sở dữ liệu Hệ quản trị cơ sở dữ liệu phải có phần mềm kiểm tra cạnh tranh để đảm bảo rằng các người sử dụng cập nhật đến cùng một cơ sở dữ liệu phải được thực hiện theo cách được kiểm tra để cho kết quả của các cập nhật là đúng đắn
I.4.3 Ví dụ về một cơ sở dữ liệu
Ta hãy xem xét một cơ sở dữ liệu mà nhiều người đã quen biết: cơ sở dữ liệu TRƯỜNG Cơ
sở dữ liệu này lưu giữ các thông tin liên quan đến sinh viên, các môn học, điểm… trong một môi trường đại học Cơ sở dữ liệu được tổ chức thành 5 bảng, mỗi bảng lưu trữ các bản ghi
dữ liệu cùng một kiểu Bảng SINHVIÊN lưu giữ dữ liệu về các sinh viên, bảng MÔNHỌC lưu giữ các dữ liệu về các môn học, bảng HỌCPHẦN lưu giữ các dữ liệu về các học phần của các môn học, bảng ĐIỂM lưu giữ điểm của từng học phần của các sinh viên và bảng BIẾTTRƯỚC lưu giữ thông tin về các môn học cần biết trước của các môn học Cấu trúc của
cơ sở dữ liệu và một vài mẫu dữ liệu ví dụ được trình bày ở hình
Trang 15Để định nghĩa cơ sở dữ liệu này, ta phải chỉ ra cấu trúc của các bản ghi của mỗi tệp (bảng) bằng cách đặc tả các kiểu khác nhau của các phần tử dữ liệu sẽ được lưu trữ trong mỗi bản ghi Theo hình, mỗi bản ghi SINHVIÊN bao gồm các dữ liệu để biểu diễn Mã số sinh viên,
Họ tên sinh viên, Lớp, Chuyên ngành Mỗi bản ghi MÔNHỌC bao gồm các dữ liệu để biểu diễn Tên môn học, Mã số môn học, Số đơn vị học trình, Khoa,… Chúng ta phải chỉ ra một kiểu dữ liệu cho mỗi phần tử dữ liệu bên trong các bản ghi Ví dụ, ta có thể đặc tả Họ tên sinh viên là một dãy ký tự có độ dài nhỏ hơn hoặc bằng 30, Mã số sinh viên là một số nguyên,…
Để xây dựng cơ sở dữ liệu TRƯỜNG, chúng ta lưu giữ các dữ liệu để biểu diễn mỗi sinh viên, mỗi môn học,… vào các tệp thích hợp Để ý rằng các bản ghi trong các tệp khác nhau có thể
có mối quan hệ với nhau Ví dụ, bản ghi đối với Nguyễn Nam trong tệp SINHVIÊN có liên quan đến hai bản ghi trong tệp ĐIỂM Các bản ghi này chỉ ra điểm của Nguyễn Nam trong hai học phần Tương tự như vậy, các bản ghi trong tệp có mối quan hệ với các bản ghi trong
Trang 16tệp MÔNHỌC… Thông thường một cơ sở dữ liệu chứa nhiều kiểu bản ghi và chứa nhiều mối quan hệ giữa các tệp
Thao tác cơ sở dữ liệu bao gồm việc truy vấn và cập nhật cơ sở dữ liệu Truy vấn cơ sở dữ liệu là đưa ra các yêu cầu đối với cơ sở dữ liệu để lấy ra các thông tin cần thiết Ví dụ, chúng
ta có thể có các truy vấn như: “Liệt kê các môn học và điểm thi của sinh viên Nguyễn Nam”,
“ Đưa ra danh sách các sinh viên thi trượt môn cơ sở dữ liệu” Cập nhật cơ sở dữ liệu bao gồm việc thêm vào cơ sở dữ liệu bản ghi, xoá bỏ các bản ghi hoặc sửa đổi các giá trị trong các bản ghi Các truy vấn và các cập nhật phải được đặc tả trong ngôn ngữ hệ cơ sở dữ liệu một cách chính xác trước khi chúng được xử lý
I.4.4 Mô hình cơ sở dữ liệu
Các loại cấu trúc cơ sở dữ liệu và mối liên hệ giữa chúng đóng vai trò rất lớn trong việc xác định tính hiệu quả của hệ quản trị cơ sở dữ liệu Vì vậy, thiết kế cơ sở dữ liệu trở thành hoạt động chính trong môi trường cơ sở dữ liệu
Việc thiết kế cơ sở dữ liệu được thực hiện đơn giản hơn nhiều khi ta sử dụng các mô hình Các mô hình là sự trừu tượng đơn giản của các sự kiện trong thế giới thực Các trừu tượng như vậy cho phép ta khảo sát các đặc điểm của các thực thể và các mối liên hệ được tạo ra giữa các thực thể đó Việc thiết kế các mô hình tốt sẽ đưa ra các cơ sở dữ liệu tốt và trên cơ
sở đó sẽ có các ứng dụng tốt Ngược lại, mô hình không tốt sẽ đưa đến thiết kế cơ sở dữ liệu tồi và dẫn đến các ứng dụng không đúng
Một mô hình cơ sở dữ liệu là một tập hợp các khái niệm dùng để biểu diễn các cấu trúc của
cơ sở dữ liệu Cấu trúc của một cơ sở dữ liệu là các kiểu dữ liệu, các mối liên kết và các ràng buộc phải tuân theo trên các dữ liệu Nhiều mô hình còn có thêm một tập hợp các phép toán
cơ bản để đặc tả các thao tác trên cơ sở dữ liệu
Các loại mô hình cơ sở dữ liệu
Có rất nhiều mô hình dữ liệu đã được đề nghị Chúng ta có thể phân loại các mô hình dữ liệu dựa trên các khái niệm mà chúng sử dụng để mô tả các cấu trúc cơ sở dữ liệu
Các mô hình dữ liệu bậc cao hoặc mô hình dữ liệu mức quan niệm cung cấp các khái niệm gắn liền với cách cảm nhận dữ liệu của nhiều người sử dụng Các mô hình này tập trung vào bản chất logic của biểu diễn dữ liệu, nó quan tâm đến cái(đối tượng) được biểu diễn trong cơ
sở dữ liệu chứ không phải cách biểu diễn dữ liệu
Các mô hình dữ liệu bậc thấp hoặc các mô hình dữ liệu vật lý cung cấp các khái niệm mô tả chi tiết về việc các dữ liệu được lưu trữ trong máy tính như thế nào Các khái niệm do mô hình dữ liệu vật lý cung cấp nói chung có ý nghĩa đối với các chuyên gia máy tính chứ không
Trang 17các mô hình dữ liệu thể hiện, chúng cung cấp những khái niệm mà người sử dụng có thể hiểu được và không xa với cách tổ chức dữ liệu bên trong máy tính Người ta còn gọi loại mô hình
dữ liệu này là loại mô hình dữ liệu mức logic Các mô hình dữ liệu thể hiện che giấu một số chi tiết về việc lưu trữ dữ liệu nhưng có thể được cài đặt trực tiếp trên hệ thống máy tính Trong những bài sau chúng ta sẽ nghiên cứu một mô hình dữ liệu mức quan niệm, mô hình thực thể - liên kết, gọi tắt là mô hình ER (Entity – Relationship Model) Mô hình này sử dụng các khái niệm thực thể, thuộc tính, mối liên kết, để diễn đạt các đối tượng của thế giới thực Một thực thể diễn đạt một đối tượng hoặc một khái niệm của thế giới thực Ví dụ, một thực thể là một nhân viên hoặc một dự án được mô tả trong cơ sở dữ liệu Một thuộc tính diễn đạt một đặc trưng nào đó của thực thể Chẳng hạn, họ tên, lương… là các thuộc tính của thực thể nhân viên Một mối liên kết giữa hai hay nhiều thực thể diễn đạt một mối quan hệ qua lại giữa các thực thể Ví dụ, giữa thực thể nhân viên và thực thể dự án có mối liên kết một nhân viên làm việc trên một dự án Mô hình dữ liệu hướng đối tượng cũng là một mô hình dữ liệu bậc cao Nó sử dụng các khái niệm như lớp, phương thức, thông điệp…
Các mô hình dữ liệu thể hiện là các mô hình được sử dụng thường xuyên nhất trong các hệ
cơ sở dữ liệu thương mại Ba mô hình nổi tiếng thuộc loại này là mô hình quan hệ, mô hình mạng và mô hình phân cấp Các mô hình mạng và phân cấp ra đời trước và được sử dụng rộng rãi trong quá khứ (trước 1970) Vào đầu những năm 70, mô hình quan hệ ra đời Do tính
ưu việt của nó, mô hình quan hệ dần dần thay thế các mô hình mạng và phân cấp Chúng ta
sẽ nghiên cứu về mô hình quan hệ trong những bài sau Các mô hình dữ liệu vật lý mô tả cách lưu trữ dữ liệu trong máy tính giới thiệu các thông tin như khuôn dạng bản ghi, sắp xếp bản ghi, đường truy cập
Lược đồ và trạng thái cơ sở dữ liệu
Trong một mô hình dữ liệu cần phải phân biệt rõ giữa mô tả của cơ sở dữ liệu và bản thân cơ
sở dữ liệu Mô tả của một cơ sở dữ liệu được gọi là lược đồ cơ sở dữ liệu, nó được xác định
rõ trong quá trình thiết kế cơ sở dữ liệu và không bị thay đổi thường xuyên Đa số các mô hình dữ liệu có các quy ước hiển thị các lược đồ Hiển thị của một lược đồ được gọi là biểu
đồ của lược đồ đó Một biểu đồ lược đồ chỉ thể hiện một vài khía cạnh của lược đồ như là các kiểu bản ghi, các mục dữ liệu và một số kiểu ràng buộc Các khía cạnh khác không được thể hiện trong biểu đồ lược đồ
Các dữ liệu trong một cơ sở dữ liệu có thể thay đổi một cách thường xuyên Các dữ liệu trong một cơ sở dữ liệu tại một thời điểm cụ thể được gọi là một trạng thái cơ sở dữ liệu hoặc là ảnh (snapshot) của cơ sở dữ liệu Nhiều trạng thái quan hệ có thể được xây dựng để làm tương ứng với một lược đồ cơ sở dữ liệu cụ thể Mỗi khi chúng ta chèn vào hoặc loại bỏ một bản
Trang 18ghi, sửa đổi giá trị của một mục dữ liệu trong một bản ghi, chúng ta đã làm thay đổi trạng thái của cơ sở dữ liệu sang một trạng thái khác
Việc phân biệt giữa lược đồ cơ sở dữ liệu và trạng thái cơ sở dữ liệu là rất quan trọng Khi chúng ta định nghĩa một cơ sở dữ liệu mới, ta chỉ đặc tả lược đồ cơ sở dữ liệu cho hệ quản trị
cơ sở dữ liệu Tại thời điểm này, trạng thái của cơ sở dữ liệu là một trạng thái rỗng, không có
dữ liệu Chúng ta nhận được trạng thái ban đầu của cơ sở dữ liệu khi ta nhập dữ liệu lần đầu tiên Từ đó trở đi, mỗi khi một phép toán cập nhật được thực hiện đối với cơ sở dữ liệu, chúng
ta nhận được một trạng thái cơ sở dữ liệu khác Tại mọi thời điểm, cơ sở dữ liệu có một trạng thái hiện tại Hệ quản trị cơ sở dữ liệu có trách nhiệm đảm bảo rằng mỗi trạng thái cơ sở dữ liệu là một trạng thái vững chắc, nghĩa là một trạng thái thoả mãn cấu trúc và các ràng buộc được đặc tả trong lược đồ Vì vậy, việc đặc tả một lược đồ đúng đắn cho hệ quản trị cơ sở dữ liệu là một việc làm cực kỳ quan trọng và lược đồ phải được thiết kế một cách cẩn thận Hệ quản trị cơ sở dữ liệu lưu trữ các mô tả của các cấu trúc lược đồ và các ràng buộc – còn gọi
là siêu dữ liệu – vào trong từ điển (catalog) của hệ quản trị sao cho phần mềm hệ quản trị cơ
sở dữ liệu có thể tham khảo đến lược đồ khi nó cần Đôi khi người ta còn gọi lược đồ là mục tiêu (intension) và trạng thái cơ sở dữ liệu là mở rộng (extension) của lược đồ
I.5 Con người trong hệ cơ sở dữ liệu
Với một cơ sở dữ liệu lớn, rất nhiều người tham gia vào việc thiết kế, sử dụng và duy trì cơ
sở dữ liệu Những người liên quan đến hệ cơ sở dữ liệu được chia thành hai nhóm chính Nhóm thứ nhất gồm những người mà công việc của họ liên quan hàng ngày đến cơ sở dữ liệu,
đó là những người quản trị cơ sở dữ liệu, thiết kế cơ sở dữ liệu, sử dụng cơ sở dữ liệu, phân tích hệ thống và lập trình ứng dụng Nhóm thứ hai gồm những người làm việc để duy trì môi trường hệ cơ sở dữ liệu nhưng không quan tâm đến bản thân cơ sở dữ liệu, đó là những người thiết kế và cài đặt hệ quản trị cơ sở dữ liệu, phát triển công cụ, thao tác viên và bảo trì
I.5.1 Người quản trị hệ cơ sở dữ liệu (Database Administrator – DBA)
Trong một tổ chức có nhiều người cùng sử dụng các tài nguyên, cần phải có một người giám sát và quản lý Trong môi trường hệ cơ sở dữ liệu, các tài nguyên là cơ sở dữ liệu, hệ quản trị
cơ sở dữ liệu và các phần mềm liên quan Người quản trị hệ cơ sở dữ liệu là người chịu trách nhiệm quản lý các tài nguyên đó Người này chịu trách nhiệm về việc cho phép truy cập cơ
sở dữ liệu, tổ chức và hướng dẫn việc sử dụng cơ sở dữ liệu, cấp các phần mềm và phần cứng theo yêu cầu
I.5.2 Người thiết kế cơ sở dữ liệu (Database Designer)
Người này chịu trách nhiệm xác định các dữ liệu sẽ được lưu giữ trong cơ sở, chọn các cấu
Trang 19trước khi cơ sở dữ liệu được cài đặt và phổ biến Người thiết kế có trách nhiệm giao thiệp với những người sử dụng tương lai để hiểu được các đòi hỏi của họ và đưa ra một thiết kế thoả mãn các yêu cầu đó Anh ta cũng có nhiệm vụ giao thiệp với các nhóm người sử dụng và có khả năng hỗ trợ các yêu cầu của các nhóm
I.5.3 Những người sử dụng (End User)
Những người sử dụng là những người mà công việc của họ đòi hỏi truy cập đến cơ sở dữ liệu
để truy vấn, cập nhật và sinh ra các thông tin Có thể chia những người sử dụng thành hai nhóm chính: những người sử dụng thụ động (tức là những người sử dụng không có nhiều kiến thức về hệ cơ sở dữ liệu) và những người sử dụng chủ động (là những người có hiểu biết tốt
về hệ cơ sở dữ liệu)
Chức năng công việc của những người sử dụng thụ động (chiếm phần lớn những người sử dụng) gắn liền với việc truy vấn và cập nhật thường xuyên cơ sở dữ liệu bằng cách sử dụng các câu hỏi và các cập nhật chuẩn (gọi là các giao tác định sẵn) đã được lập trình và kiểm tra cẩn thận Những người này chỉ cần học một ít về các phương tiện do hệ quản trị cơ sở dữ liệu cung cấp và hiểu các kiểu giao tác chuẩn đã được thiết kế và cài đặt là đủ
Những người sử dụng chủ động có hiểu biết tốt về hệ cơ sở dữ liệu, họ có thể tự cài đặt các ứng dụng riêng của mình để làm thoả mãn các yêu cầu phức tạp của họ
Người thiết kế và cài đặt hệ quản trị dữ liệu
Đó là những người thiết kế, cài đặt các mô đun, giao diện của hệ quản trị cơ sở dữ liệu thành các phần mềm đóng gói Một hệ quản trị cơ sở dữ liệu là một hệ thống phần mềm phức tạp bao gồm nhiều thành phần (mô đun) Đó là các mô đun cài đặt từ điển dữ liệu, ngôn ngữ truy vấn, bộ xử lý giao diện, truy cập dữ liệu, kiểm tra cạnh tranh, phục hồi và an toàn Hệ quản trị cơ sở dữ liệu phải giao tiếp với các hệ thống phần mềm khác như hệ điều hành và các chương trình dịch cho nhiều ngôn ngữ khác nhau
Những người phát triển công cụ
Là những người thiết kế và cài đặt các công cụ (tool), đó là các phần mềm đóng gói làm dễ việc thiết kế và sử dụng cơ sở dữ liệu
Các thao tác viên và những người bảo trì
Trang 20Là những người chịu trách nhiệm về việc chạy và bảo trì phần cứng và phần mềm của hệ thống
Ngôn ngữ cơ sở dữ liệu và giao diện
Các ngôn ngữ hệ quản trị cơ sở dữ liệu
Một khi việc thiết kế cơ sở dữ liệu đã hoàn thành, cần phải chọn một hệ quản trị cơ sở dữ liệu
để cài đặt cơ sở dữ liệu Trong các hệ quản trị cơ sở dữ liệu hiện nay thường có các ngôn ngữ: ngôn ngữ định nghĩa dữ liệu (data definition language – DDL) và ngôn ngữ thao tác dữ liệu (data manipulation language – DML)
Ngôn ngữ định nghĩa dữ liệu được sử dụng để định nghĩa các lược đồ Hệ quản trị cơ sở dữ liệu có một chương trình dịch ngôn ngữ DDL, nhiệm vụ của nó là xử lý các câu lệnh DDL để xác định mô tả của cấu trúc lược đồ và lưu trữ mô tả lược đồ vào từ điển của hệ quản trị cơ
sở dữ liệu
Ngôn ngữ thao tác cơ sở dữ liệu được sử dụng để thao tác cơ sở dữ liệu Các thao tác chính gồm có lấy ra, chèn vào, loại bỏ và sửa đổi các dữ liệu Có hai kiểu ngôn ngữ thao tác dữ liệu chính: ngôn ngữ thao tác dữ liệu mức cao hoặc ngôn ngữ phi thủ tục hoặc ngôn ngữ thao tác
dữ liệu mức thấp
Ngôn ngữ thao tác dữ liệu mức cao có thể được sử dụng để diễn đạt các phép toán cơ sở dữ liệu một cách ngắn gọn Phần lớn các hệ quản trị cơ sở dữ liệu cho phép nhập các lệnh của ngôn ngữ thao tác dữ liệu mức cao theo cách lặp (nghĩa là sau khi nhập một lệnh, hệ thống sẽ thực hiện lệnh đó rồi mới nhập lệnh tiếp theo) hoặc được nhúng vào một ngôn ngữ lập trình vạn năng Trong trường hợp nhúng vào ngôn ngữ khác, các lệnh của ngôn ngữ thao tác dữ liệu phải được xác định bên trong chương trình sao cho một chương trình tiền dịch có thể nhận ra chúng và được hệ quản trị cơ sở dữ liệu xử lý
Ngôn ngữ thao tác cơ sở dữ liệu mức thấp hoặc ngôn ngữ thủ tục phải được nhúng vào trong một ngôn ngữ lập trình vạn năng Ngôn ngữ thao tác cơ sở dữ liệu kiểu này thường rút ra các bản ghi hoặc các đối tượng riêng rẽ và xử lý chúng một cách riêng rẽ Vì vậy, chúng cần phải
sử dụng các cấu trúc ngôn ngữ lập trình như vòng lặp, điều kiện,… để rút ra từng bản ghi một
từ một tập các bản ghi Ngôn ngữ thao tác dữ liệu mức thấp được gọi là ngôn ngữ “một lần một bản ghi” Các ngôn ngữ thao tác dữ liệu mức cao có thể dùng một lệnh để rút ra một lúc nhiều bản ghi nên chúng được gọi là ngôn ngữ “một lần một tập hợp”
Các loại giao diện hệ quản trị cơ sở dữ liệu
Các hệ quản trị cơ sở dữ liệu cung cấp rất nhiều loại giao diện người dùng thân thiện Các loại giao diện chính gồm có:
Trang 21- Giao diện dựa trên bảng chọn:Các giao diện này cung cấp cho người sử dụng danh sách các lựa chọn, gọi là bảng chọn (menu) và hướng dẫn người sử dụng diễn đạt một yêu cầu từ đầu đến cuối Các bảng chọn làm cho người sử dụng không cần nhớ các lệnh và cú pháp của ngôn ngữ truy vấn Các bảng chọn thả xuống đã trở thành kỹ thuật phổ biến trong các giao diện dựa trên cửa sổ Chúng thường được sử dụng trong các giao diện quét, cho phép người sử dụng nhìn thấy nội dung của một cơ sở dữ liệu theo cách không có cấu trúc
- Giao diện dựa trên mẫu biểu: Các giao diện này hiển thị một mẫu biểu cho người sử dụng Những người sử dụng có thể điền vào tất cả các ô của mẫu biểu để nhập các dữ liệu mới hoặc họ chỉ điền vào một số ô còn hệ quản trị cơ sở dữ liệu sẽ đưa ra các dữ liệu phù hợp cho các ô khác Các mẫu biểu thường được thiết kế và được lập trình cho các người dùng đơn giản Một số hệ thống có các tiện ích giúp người sử dụng từng bước xây dựng một mẫu biểu trên màn hình
- Giao diện đồ hoạ: Một giao diện đồ hoạ (GUI) thường hiển thị một lược đồ cho người
sử dụng dưới dạng biểu đồ Người dùng có thể thực hiện một truy vấn bằng cách thao tác trên biểu đồ Trong nhiều trường hợp, GUI sử dụng cả các bảng chọn và các mẫu biểu Đa số các GUI sử dụng các công cụ trỏ như chuột, phím để kích các phần của sơ
đồ
- Giao diện cho người quản trị hệ thống: Đa số các hệ quản trị cơ sở dữ liệu có các lệnh
ưu tiên, chỉ có những người quản trị hệ thống mới sử dụng các lệnh đó Đó là các lệnh tạo ra các tài khoản (account), đặt các tham số cho hệ thống, cấp các tài khoản, thay đổi lược đồ hoặc tổ chức lại các cấu trúc lưu trữ của cơ sở dữ liệu
I.6 Các khái niệm về bảng dữ liệu
- Bảng (Table): Là thành phần cơ bản trong cơ sở dữ liệu của MS Access Đây là đối
tượng quan trọng nhất, dùng để lưu trữ dữ liệu, mỗi bảng lưu trữ thông tin về một đối tượng đang quản lý Một bảng gồm có nhiều trường (field) và nhiều bản ghi (record):
- Trường (Field): Mỗi field (field hoặc cột) trong một bảng chỉ chứa một loại dữ liệu
duy nhất, nó lưu trữ một thuộc tính của đối tượng Trong một bảng phải có ít nhất một field
Ví dụ: Bảng SINHVIEN, lưu trữ thông tin của đối tượng sinh viên, gồm các field
MASV, HOSV, TENSV, PHAI, NGAYSINH, DIACHI, MALOP
Trang 22- Bản ghi (Record): Là một thể hiện dữ liệu của các field trong bảng Trong một bảng
có thể có không có record nào hoặc có nhiều records Trong một bảng thì dữ liệu trong các record không được trùng lắp
- Khóa chính (Primary key): Khóa chính của một bảng là một hoặc nhiều field kết hợp
mà theo đó Access sẽ xác định một record duy nhất trong bảng Dữ liệu trong field khóa chính không được trùng và không rỗng Thông thường, trong mỗi bảng nên có khóa chính để tạo quan hệ giữa các bảng trong cơ sở dữ liệu và để MS Access tự động kiểm tra ràng buộc dữ liệu khi người dùng nhập liệu
Ví dụ: Trong bảng SINHVIEN, MASV xác định một sinh viên duy nhất
Khi một hoặc nhiều field kết hợp được chỉ định là khóa chính thì Access sẽ tự động tạo chỉ mục cho chúng
Khi nhập dữ liệu, Access sẽ tự động kiểm tra khóa chính và không cho phép trùng lắp, và không rỗng
- Khóa ngoại (Foreign key): Khóa ngoại là một field hay một nhóm các field trong một
record của một bảng, trỏ đến khóa chính của một record khác của một bảng khác Thông thường, khóa ngoại trong một bảng trỏ đến khóa chính của một bảng khác
Dữ liệu trong field khóa ngoại phải tồn tại trong field khóa chính mà nó trỏ tới Khóa ngoại dùng để tạo quan hệ giữa các bảng trong cơ sở dữ liệu
Trang 23II Hệ quản trị cơ sở dữ liệu quan hệ
II.1 Giới thiệu chung về hệ quản trị cơ sở dữ liệu Access
Microsoft Access là hệ quản trị cơ sở dữ liệu trên môi trường Windows, nằm trong bộ Microsoft Office, trong đó có sẵn các công cụ hữu hiệu và tiện lợi để tự động tạo chương trình cho hầu hết các bài toán thường gặp trong quản lý, thống kê, kế toán Với Access, người dùng không phải viết từng câu lệnh cụ thể như trong Pascal, C hay Foxpro mà chỉ cần tổ chức dữ liệu và thiết kế các yêu cầu, công việc cần giải quyết
Access có nhiều phiên bản, từ Access 2.0 trong bộ Microsoft Office 4.3, Access 7.0 for Windows 95, Access 97 trong bộ Microsoft Office 97, Access 2000 trong bộ Microsoft Office
2000, …, Access 2016 trong bộ Microsoft Office 2016
Access cung cấp 6 đối tượng, công cụ: Bảng (Table), Truy vấn (Query), mẫu biểu (Form), báo biểu (Report), Macro và đơn thể (Module)
- Bảng có cấu trúc tương tự như một tệp DBF của Foxpro được dùng để lưu trữ dữ liệu của cơ sở dữ liệu (CSDL) Một CSDL thường gồm nhiều bảng có quan hệ với nhau
- Truy vấn là công cụ mạnh của Access dùng để tổng hợp, sắp xếp, tìm kiếm dữ liệu trên các bảng Khi thực hiện truy vấn sẽ nhận được một tập hợp kết quả thể hiện trên màn hình dưới dạng bảng, gọi là DynaSet DynaSet chỉ là bảng kết quả trung gian, không được ghi lên đó và nó sẽ bị xoá khi kết thúc truy vấn Tuy nhiên có thể sử dụng một DynaSet như một bảng để xây dựng các truy vấn khác Chỉ với truy vấn đã có thể giải quyết khá nhiều dạng toán trong quản trị cơ sở dữ liệu
- Mẫu biểu thường dùng để tổ chức cập nhật dữ liệu cho các bảng và thiết kế giao diện Chương trình Tuy có thể nhập liệu trực tiếp vào các bảng, nhưng mẫu biểu sẽ cung cấp nhiều khả năng nhập liệu tiện lợi nhất Nhận dữ liệu từ một danh sách, nhận các hình ảnh, nhập dữ liệu đồng thời trên nhiều bảng Mẫu biểu còn cho phép nhập các giá trị riêng lẻ (không liên quan đến bảng) từ bàn phím Mẫu biểu còn có một khả năng quan trọng khác là tổ chức giao diện Chương trình dưới dạng một bảng nút lệnh hoặc một hệ thống menu
- Báo biểu là công cụ tuyệt vời phục vụ công việc in ấn, cung cấp các khả năng:
o In dữ liệu dưới dạng bảng
o In dữ liệu dưới dạng biểu bảng
o Sắp xếp dữ liệu trước khi in
o Sắp xếp và phân nhóm dữ liệu tới 10 cấp Cho phép thực hiện các phép toán để nhận dữ liệu tổng hợp trên mỗi nhóm Ngoài ra, dữ liệu tổng hợp nhận được
Trang 24trên các nhóm lại có thể đưa vào các công thức để nhận được sự so sánh, đối chiếu trên các nhóm và trên toàn báo cáo
o In dữ liệu của nhiều bảng có quan hệ trên một báo cáo
Cũng cần nói thêm, việc chọn Font chữ, cỡ chữ, kiểu in và việc trình bầy trên báo cáo được tiến hành rất đơn giản
- Macro bao gồm một dẫy các hành động (Action) dùng đề tự động hoá một loạt các thao tác Macro thường dùng với mẫu biểu để tổ chức giao diện Chương trình
- Đơn thể là nơi chứa các hàm, thủ tục viết bằng ngôn ngữ Access Basic Mặc dù các công cụ mà Access cung cấp khá đầy đủ, nhưng lẽ dĩ nhỉên không thể bao quát được mọi vấn đề đa dạng của thực tế Các hàm, thủ tục của Access Basic sẽ trợ giúp giải quyết những phần việc khó mà công cụ không làm nổi
II.1.1 Bước đầu làm việc với hệ quản trị cơ sở dữ liệu
Tương tự như tất cả chương trình của Office 2016, cách thông dụng nhất để khởi động Access
là từ màn hình khởi động – Start Screen (Windows 8, Windows 10) hoặc thực đơn khởi động – Start menu (Windows 7) hiển thị khi người sử dụng kích chuột vào góc dưới cùng bên trái của thanh tác vụ Windows
Khi khởi động Access nhưng không mở cơ sở dữ liệu thì mà hình khởi tạo của chương trình xuất hiện:
Từ màn hình này, người sử dụng có thể:
- Tạo cơ sở dữ liệu mới: bằng cách kích chuột vào mục Blank database, nhập tên cơ sử
dữ liệu mới trong mục File Name, sau đó nhấn nút Create để tạo ra cơ sở dữ liệu mới
- Mở cơ sở dữ liệu được mở gần nhất trong mục Recent
Trang 25Dù bằng cách nào, cơ sở dữ liệu được hiển thị trên màn hình chương trình có chứa tất cả các công cụ cần thiết để tạo các đối tượng cơ sở dữ liệu, nhập và chỉnh sửa dữ liệu Giao diện của Access được thiết kế phản ánh một cách gần gũi nhất cách mọi người làm việc với cơ sở dữ liệu nói chung Dưới đây là mô tả nhanh các thành phần của cửa sổ chương trình:
Cửa sổ chương trình có chứa các thành phần sau:
- Thanh tiêu đề: thanh này ở trên đầu của cửa sổ chương trình hiển thị tên của cơ sở dữ liệu đang hoạt động và hiển thị mặc định đường dẫn đến thư mục mà nó được lưu trữ
Nó cũng cung cấp các công cụ để quản lý các chương trình và các cửa sổ chương trình
- Giao diện thẻ (Ribbon): Dưới thanh tiêu đề, tất cả các lệnh để làm việc với cơ sở dữ liệu Access được biểu diễn như là các nút ở vị trí trung tâm để người sử dụng có thể làm việc hiệu quả với chương trình
- Vùng điều hướng: nằm ở bên trái của cửa sổ chương trình, vùng điều hướng hiển thị danh sách các đối tượng cơ sở dữ liệu Theo mặc định, vùng điều hướng hiển thị tất cả đối tượng trong cơ sở dữ liệu theo loại đối tượng, nhưng người sử dụng có thể lọc danh sách bằng cách nhấn vào thanh tiêu đề của vùng và sau đó nhấp vào thể loại hoặc nhóm đối tượng muốn hiển thị Người sử dụng có thể thu gọn và mở rộng các nhóm trong danh sách bằng cách nhấn vào biểu tượng chữ V trong vùng tương ứng Nếu vùng điều hướng gây cản trở công việc, người sử dụng có thể kích vào nút lệnh Đóng/Mở ở góc trên bên phải để thu nhỏ Để hiển thị trở lại vùng điều hướng, kích vào nút Đóng/Mở lần nữa Người sử dụng có thể kéo biên phải của vùng qua bên trái hoặc phải để thu hẹp hoặc mở rộng vùng điều hướng
- Thanh trạng thái: nằm ở dưới cùng của cửa sổ chương trình, thanh trạng thái hiển thị thông tin về cơ sở dữ liệu hiện tại và cho phép truy cập một số chức năng nhất định của chương trình Bên phải ngoài cùng của thanh trạng thái là thanh công cụ phím tắt
Trang 26khung nhìn, cung cấp các nút lệnh thuận tiện cho việc chuyển đổi khung nhìn của các đối tượng cơ sở dữ liệu đang hoạt động
Để thoát khỏi Access:
- Nhấn tổ hợp phím ALT+F4
- Nhấn nút biểu tượng hình chữ X trên cùng bên phải trên Thanh tiêu đề
- Vào menu File, chọn Close
Chọn Save (nếu muốn lưu nội dung đã sửa trong file cơ sở dữ liệu) hoặc chọn Don’t Save (nếu không muốn lưu những thay đổi) hoặc Cancel (nếu muốn quay lại làm việc tiếp với cơ
sở dữ liệu)
II.1.2 Thao tác với các đối tượng trong cơ sở dữ liệu
Để làm việc trên đối tượng, ta chọn đối tượng trên thanh Access object, các thành viên của đối tượng sẽ xuất hiện bên dưới tên của đối tượng
- Tạo mới một đối tượng
o Click tab Create trên thanh Ribbon
o Trong nhóm công cụ của từng đối tượng, chọn cách tạo tương ứng
- Thiết kế lại một đối tượng
o Nếu đối tượng đang đóng:
Click phải trên đối tượng cần thiết kế lại
Chọn Design view
o Nếu đối tượng đang mở:
Click nút Design View
- Xem nội dung trình bày của một đối tượng:
o Nếu đối tượng đang mở ở chế độ Design View
Click nút View
o Nếu đối tượng đang đóng:
Click phải trên tên đối tượng cần xem
Chọn Open
- Xóa một đối tượng
o Click phải chuột trên đối tượng cần xóa,
o Chọn mục delete trên Menu Popup
o Hoặc chọn rồi nhấn phím Delete Hoặc nút trên thanh công cụ
- Đổi tên đối tượng
o Click phải chuột trên đối tượng, chọn rename,
o Hoặc nhấn F2
Trang 27- Sao chép một đối tượng
o Click phải chuột lên thành viên cần chép
o Chọn mục copy để chép đối tượng vào Clipboard
o Click nút Paste trên thanh Menu để chép vào cửa sổ database
o Nhập tên cho đối tượng sao chép
o Đối với kiểu đối tượng Table, ta có thể lựa chọn 1 trong 3 kiểu sao chép
Structure only: Sao chép cấu trúc
Structure and data: Sao chép cấu trúc và dữ liệu
Append Data to Exiting Table: Thêm dữ liệu vào một bảng đang tồn tại
- Chép dữ liệu từ Access sang ứng dụng khác (Export): Có thể xuất dữ liệu sang cơ sở
dữ liệu Access khác, hoặc Excel,Word, Pdf … Cách thực hiện:
o Chọn đối tượng muốn xuất sang ứng dụng khác
o Chọn tab External Data
o Trong nhóm công cụ Export, chọn loại ứng dụng mà bạn muốn xuất dữ liệu: Excel, Text file, XML file, Word, Access…
o Click nút Browse… chỉ định vị trí xuất dữ liệu
o Click OK hoàn tất việc export dữ liệu
Trang 28II.2 Tạo bảng
II.2.1 Tạo bảng bằng chức năng Table Design
- Bước 1: Trong cửa sổ làm việc của Access, trên thanh Ribbon, click tab Create, trong nhóm lệnh Table, click nút lệnh Table Design, xuất hiện cửa sổ thiết kế bảng gồm các
thành phần:
o Field Name: định nghĩa các fields trong bảng
o Data Type: chọn kiểu dữ liệu để lưu trữ dữ liệu của field tương ứng
o Description: dùng để chú thích ý nghĩa của field
o Field Properties: thiết lập các thuộc tính của Field, gồm có hai nhóm:
General: là phần định dạng dữ liệu cho field trong cột Field Name
Lookup: là phần quy định dạng hiển thị / nhập dữ liệu cho Field
- Bước 2: Trong cửa sổ thiết kế, thực hiện các công việc sau:
o Nhập tên field trong cột Field Name, độ dài tối đa không quá 64 ký tự gồm ký
tự chữ cái, ký tự số, khoảng trắng, các ký tự đặc biệt để đặt tên cho Field Không được dùng dấu chấm (.), dấu chấm than (!) và dấu ngoặc vuông([])chấp nhận khoảng trắng, không phân biệt chữ hoa, chữ thường Nên nhập tên field theo tiêu chí: Ngắn gọn, dễ nhớ, gợi nghĩa và không có khoảng trắng
o Chọn kiểu dữ liệu cho field trong cột Data Type
o Chú thích cho field trong cột Description
o Chỉ định thuộc tính cho field trong khung Field Properties
Trang 29- Bước 3: Xác định khóa chính cho bảng:
o Đặt trỏ tại field được chọn làm khóa chính (hoặc chọn các field đồng thời làm khóa)
o Click nút Primary key trên thanh công cụ Table (Table Tools), hoặc click phải trên tên field, chọn lệnh Primary key
- Bước 4: Lưu bảng vừa tạo bằng cách:
o Click vào nút trên thanh Quick Access
o Nhập tên cho bảng trong hộp thoại Save as như hình (trong trường hợp Table
mới tạo, chưa đặt tên)
Trang 30Lưu ý: Nếu bảng chưa được đặt khóa chính thì Access sẽ hiển thị một hộp thoại
thông báo:
Nhấn nút Cancel để trở lại cửa sổ thiết kế, đặt khoá chính cho bảng
Nhấn nút No để lưu mà không cần đặt khóa chính, có thể đặt sau
Nhấn nút Yes để Access tự tạo khoá chính có tên là ID, kiểu
Autonumber
II.2.2 Tạo bảng trong chế độ Datasheet View
Có thể tạo bảng bằng cách định nghĩa trực tiếp các cột trong chế độ DataSheet View như sau:
- Trong cửa sổ làm việc của Access, chọn tab Create trên thanh Ribbon, trong nhóm lệnh Table, click nút Table, xuất hiện bảng mới ở chế độ Datasheet View
- Thanh Ribbon chuyển sang tab Field với nhóm lệnh Add & Delete giúp bạn chọn kiểu
dữ liệu cho Field mới khi thêm Field vào bảng
- Đặt trỏ trong ô bên dưới Field mới (Click to Add), sau đó chọn một trong các kiểu dữ
liệu trong nhóm Add & Delete trên thanh Ribbon Hoặc click chuột trên Click to Add, chọn kiểu dữ liệu trong menu Có thể click nút More Fields để chọn các kiểu dữ liệu
khác
- Nhập tên cho Field mới
- Tạo Field tính toán: Khi thiết kết bảng ở chế độ DataSheet View, bạn có thể tạo một
Field mới mà nó là kết quả của một biểu thức tính toán từ các Field trước, bằng cách:
o Click tiêu đề Click to Add của Field mới như hình trên
o Chọn lệnh Calculated Field, xuất hiện cửa sổ Expression Builder
o Nhập biểu thức tính toán
II.3 Các kiểu dữ liệu (Data Type)
Trang 31Kiểu dữ liệu Dữ liệu Kích thước
tự Number
Kiểu số (bao gồm số nguyên và số thực) dùng
để thực hiện tính toán, các định dạng dữ liệu kiểu số được thiết lập trong Control Panel
1, 2, 4, hoặc 8 byte
Date/Time
Dữ liệu kiểu Date và Time Các định dạng của
dữ liệu Date/Time được thiết lập trong Control Panel
4 byte
OLE Object Dữ liệu là các đối tượng được tạo từ các phần
HyperLink Dữ liệu của field là các link
Lookup Wizard
Lookup Wizard không phải là kiểu dữ liệu, mà
là chức năng để tạo một danh sách mà giá trị của nó được nhập bằng tay hoặc được tham chiếu từ một bảng khác trong cơ sở dữ liệu
Attachment
Đính kèm dữ liệu từ các chương trình khác, nhưng bạn không thể nhập văn bản hoặc dữ liệu
số
Để thay đổi những định dạng mặc định của các kiểu dữ liệu trong môi trường Window, chọn
Start Control Panel ->Regional and Language ->Customize
- Tab Numbers để thay đổi định dạng số như dấu thập phân, phân cách hàng ngàn…
- Tab Date/Time để thay đổi định dạng ngày/giờ
- Tab Currency để thay đổi đơn vị tiền tệ
II.4 Các thuộc tính của Field (Field Properties)
II.4.1 Field Size
Quy định kích thước của field, tuỳ thuộc vào kiểu dữ liệu Chỉ có hiệu lực với các Field có kiểu là Text hoặc Number
- Dữ liệu kiểu Text: giới hạn kích thước từ 0- 255 ký tự, mặc định là 50 ký tự
- Dữ liệu kiểu Memo: giới hạn kích thước từ 0- 65.535 ký tự
- Đối với kiểu dữ liệu Number: kiểu Number bao gồm một số kiểu con, giới hạn kích
thước kiểu Number chính là xác định kiểu con
Trang 32Field size Miền giá trị Số lẻ tối đa
II.4.2 Decimal Places
Quy định số chữ số thập phân (chỉ sử dụng trong trường hợp số có dạng single, double) Đối với kiểu Currency, Fixed, Percent luôn luôn decimal places là 2
II.4.3 Format
Quy định dạng hiển thị của dữ liệu trên màn hình hoặc ra máy in, phụ thuộc vào kiểu dữ liệu
Có thể chọn các định dạng do Access cung cấp sẵn hoặc tạo một chuỗi ký tự định dạng riêng
- Định dạng kiểu dữ liệu Text
[Black] [White] [Red] [Green]
[Blue] [Yellow] [Magenta] [Cyan]
Màu (ký hiệu màu theo sau một trong các ký tự định dạng chuỗi phía trên)
- Định dạng dữ liệu kiểu number
Các kiểu định dạng Access cung cấp sẵn:
General Number Hiển thị ñúng như số nhập vào
Currency Có dấu phân cách, dấu thập phân và ký hiệu tiền tệ
Fixed Hiển thị giống như cách ñịnh dạng trong Regional Settings của Control Panel, phần số lẻ thập phân phụ thuộc vào Decimal
Trang 33Percent Hiển thị số dạng phần trăm (%)
Khoảng trắng (blank) Khoảng trắng
- Định dạng dữ liệu kiểu Data/Time:
Các kiểu định dạng Access cung cấp sẵn:
Các ký tự định dạng:
Trang 34- Định dạng dữ liệu kiểu Yes/No:
Định dạng Ý nghĩa
Chuỗi ký tự định dạng kiểu yes/no gồm 3 phần: First; Second; Third
First: bỏ trống, định dạng trong mục này không ảnh hưởng đến dữ liệu kiểu
Yes/No
Second: field hợp nội dung field mang giá trị đúng
Third: field hợp nội dung field mang giá trị sai
Trang 35II.4.4 Input Mask (mặt nạ nhập liệu)
Quy định khuôn định dạng dữ liệu Người sử dụng khi nhập dữ liệu vào bảng bắt buộc phải tuân theo đúng định dạng đó
Chú ý: khi quy định Input Mask cho bảng, các qui định này sẽ được áp dụng cho cả biểu
mẫu (Form), truy vấn (Query), báo cáo (Report) Nếu chỉ muốn áp dụng cho riêng biểu mẫu
hoặc báo cáo thì qui định Input Mask cho riêng biểu mẫu hay báo cáo đó
Những field cùng lúc qui định thuộc tính Format và Input Mask, Access sẽ hiển thị theo dạng qui định trong Format khi hiển thị dữ liệu Tuy nhiên nếu điều chỉnh dữ liệu thông qua biểu mẫu, Access dùng dạng thức qui định trong Input Mask
- Các ký tự dùng định dạng trong Input Mask
0 Vị trí bắt buộc nhập, ký tự số từ 0-9, không cho phép nhập dấu
9 Không bắt buộc nhập, ký tự số hoặc khoảng trắng, không cho phép
, Dấu phân cách thập phân, hàng ngàn Tùy thuộc vào định dạng của Windows
/ : Dấu phân cách ngày, giờ Tùy thuộc vào định dạng của Windows
< Các ký tự bên phải được đổi thành chữ thường
> Các ký tự bên phải được đổi thành chữ hoa
! Dữ liệu ghi từ phải sang trái
\<ký tự> Ký tự theo sau dấu \ sẽ được đưa thẳng vào dữ liệu
Password Nhập dữ liệu kiểu mật khẩu (chỉ hiển thị dấu *)
Ví dụ:
II.4.5 Tạo field Lookup Wizard
Một lookup field cho phép bạn nhập dữ liệu cho field từ một danh sách giá trị Có hai cách
để lookup field có thể nhận giá trị từ một danh sách các giá trị
Trang 36- Lookup từ một danh sách nhập bằng tay
- Lookup từ một Table hoặc một Query trong cơ sở dữ liệu
- Nếu chọn dữ liệu nguồn cho field bằng cách lấy giá trị từ Table hoặc Query khác thì
chọn tùy chọn “I want the lookup field to get the values from another table or query”
và click next
o Chọn bảng hoặc query cung cấp giá trị cho lookup field, click Next
Trang 37o Chọn field chứa danh sách giá trị cho lookup field, click Next
o Chọn field sắp xếp, click next
o Hiệu chỉnh độ rộng của lookup field, click Finish để kết thúc
Trang 38- Nếu tạo dữ liệu nguồn cho lookup field bằng cách nhập bằng tay thì trong cửa sổ
Lookup Wizard, chọn tùy chọn “I will type in the values that I want” Click Next
o Nhập giá trị cho lookup field Click Next
o Nhập nhãn cho lookup field, click Finish
II.4.6 Validation rule (Quy tắc hợp lệ)
Kiểm tra tính hợp lệ của dữ liệu khi nhập liệu Nếu dữ liệu không thỏa điều kiện cho trước, Access xuất hiện trên màn hình một thông báo chứa dòng văn bản quy định ở Validation text Trong validation rule có các phép toán sau:
- Phép toán so sánh: > , < , >=, <=, =, <>
- Phép toán quan hệ: or; and; not
- Phép toán về chuỗi: toán tử Like (giống như).Có thể sử dụng toán tử Like kèm với các
Trang 39II.4.7 Validation text (Thông báo lỗi)
Chuỗi thông báo xuất hiện khi dữ liệu nhập vào không thoả điều kiện của Validation Rule, chuỗi trong validation text có độ dài tối đa 255 ký tự
II.4.8 Required (Yêu cầu)
Có yêu cầu bắt buộc nhập dữ liệu cho một field hay có thể để trống
II.4.9 AllowZeroLength
Quy định field có kiểu text hay Memo có thể có (yes) hoặc không có (no) chuỗi có độ dài Zero Nếu field là field khoá thì thuộc tính này là No
Chú ý: Cần phân biệt field có giá trị null (trống chưa có dữ liệu) và một field chứa chuỗi có
độ dài là zero (đó là chuỗi “”) Khi hiển thị ra màn hình cả hai có hình thức giống nhau
II.4.10 Index ( Chỉ mục/ Sắp xếp)
Quy định thuộc tính Index để tạo chỉ mục đơn (chỉ mục trên một field)
- Nếu chọn No thì không sắp xếp dữ liệu
- Nếu chọn Yes (No Duplicates) thì tạo chỉ mục (sắp xếp) trên field và không cho phép các giá trị trùng nhau
- Nếu chọn Yes (Duplicates Yes) thì tạo chỉ mục (sắp xếp) trên field và cho phép các giá trị trùng nhau
II.4.11 Caption
Qui định nhãn là một chuỗi ký tự xuất hiện tại dòng tên field Chuỗi này cũng xuất hiện tại tiêu đề của các điều khiển trong các biểu mẫu hoặc báo cáo Nếu giá trị này bỏ trống thì Access sẽ lấy tên field làm tiêu đề
II.4.12 Defaut value
Quy định giá trị mặc nhiên cho cột Access sẽ tự động gán giá trị này vào khi thêm mẩu tin mới Người sử dụng có thể gán một biểu thức cho thuộc tính này
II.5 Hiệu chỉnh cấu trúc của bảng
Mở bảng ở chế độ thiết kế (Design View) bằng cách: Trong cửa sổ Database, chọn bảng muốn
thay đổi cấu trúc, click phải, chọn Design View
Thanh Ribbon chuyển sang Tab Design gồm các công cụ cho phép hiệu chỉnh cấu trúc của
bảng
Trang 40- Insert Rows: chèn thêm một field trên field hiện hành
- Delete Rows: xóa các field được đánh dấu chọn
- Di chuyển field: Click chọn tên field muốn di chuyển, drag chuột vào tên field, di chuyển đến vị trí mới
II.6 Cách nhập dữ liệu cho bảng
Để nhập dữ liệu cho bảng, trước hết phải mở bảng ở chế độ Datasheet View
- Trong cửa sổ Database chọn object Table chọn bảng muốn nhập hoặc sửa dữ liệu click phải chọn Open Hoặc double click vào tên bảng muốn mở
- Bảng được mở ở chế độ nhập liệu (Chế độ Data Sheet view)
- Mặc định, luôn có một dòng rỗng để nhập record mới ở cuối bảng
- Khi nhập dữ liệu phải nhập theo từng Record, dữ liệu nhập vào phải thỏa mãn các thuộc tính của bảng và thuộc tính của field khi thiết kế bảng Nếu dữ liệu không thỏa mãn thì Access sẽ thông báo lỗi
- Đối với field có kiểu dữ liệu OLE object:
o Tại vị trí nhập, click chuột phải,
o Chọn Insert - Object
o Chọn Create New nếu muốn tạo đối tượng mới
o Chọn Create from file nếu muốn lấy đối tượng từ tập tin trên đĩa (thường là hình ảnh) chọn file cần sử dụng