Giáo trình Tin học ứng dụng trong kinh doanh có nội dung gồm 6 chương, trang bị cho sinh viên những kiến thức về: Một số khái niệm về hệ quản trị cơ sở dữ liệu microsoft access, bảng dữ liệu (table), truy vấn (query), biểu mẫu (form), report (biểu báo), macro (tập lệnh). Mời các bạn cùng tham khảo.
Trang 1MỤC LỤC
CHƯƠNG 1: MỘT SỐ KHÁI NIỆM VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
MICROSOFT ACCESS 2
1 Hệ quản trị cơ sở dữ liệu 2
2 Cơ sở dữ liệu quan hệ 2
3 Khái niệm về Microsoft Access 2
4 Khởi động và thoát khỏi Access 3
5 Các thành phần trong tập tin CSDL 5
6 CHUẨN BỊ MÔI TRƯỜNG LÀM VIỆC BAN ĐẦU Error! Bookmark not defined CHƯƠNG 2: BẢNG DỮ LIỆU (TABLE) 8
1 Khái niệm về bảng dữ liệu 8
2 Tạo bảng dữ liệu 9
3 Các chế độ hiển thị của bảng dữ liệu 16
4 Sửa đổi cấu trúc bảng 17
5 Thiết lập quan hệ giữa các bảng 18
6 Các lỗi thường gặp trong khi cập nhật dữ liệu cho bảng 21
7 Trình bày cửa sổ nhập liệu 22
8 Xử lý dữ liệu trên bảng 26
CHƯƠNG 3: TRUY VẤN (QUERY) 36
1 Khái niệm 50
2 Các phép toán: 51
3 Tạo truy vấn bằng lưới QBE 52
4 Tạo truy vấn bằng ngôn ngữ SQL 72
5 Một số lỗi thường gặp trong quá trình thực hiện truy vấn 78
CHƯƠNG 4: BIỂU MẪU (FORM) 82
1 Một số khái niệm 82
2 Các thành phần của biểu mẫu 85
3 Thiết kế một biểu mẫu bằng chế độ Wizard 86
4 Thuộc tính của biểu mẫu và một số thao tác cơ bản trên biểu mẫu ở cửa sổ thiết kế 89
5 Thiết kế một biểu mẫu bằng chế độ Design 92
6 Tạo các đối tượng điều khiển 92
7 Tạo Main Form/Sub Form 100
CHƯƠNG 5: REPORT (BIỂU BÁO) 107
CHƯƠNG 6: MACRO (TẬP LỆNH) 136
Trang 2BÀI 1: MỘT SỐ KHÁI NIỆM VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MICROSOFT ACCESS
Giới thiệu:
Với sự phát triển của công nghệ thông tin hiện nay, sử dụng hệ quản trị cơ
sở dữ liệu, tin học ứng dụng đã trở nên thông dụng và cần thiết với các doanh nghiệp, công ty, trường học vì tính tiện dụng rất lớn khi ứng dụng tin học ứng dụng vào việc quản lý Tuy nhiên để để thực hiện được các công việc trên trước
tiên chúng ta phải hiểu được các khái niệm về hệ quản trị cơ sở dữ liệu
Mục tiêu:
- Xác định được xuất xứ phần mềm acces, khả năng của access, vì sao phải dùng access;
- Khởi động và thoát được access;
- Trình bày được các khái niệm cơ bản về hệ quản trị CSDL;
- Thực hành được trên cửa sổ database;
- Vận dụng được cơ sở dữ liệu
Nội dung chính:
1.1.Hệ quản trị cơ sở dữ liệu
Hệ quản trị cơ sở dữ liệu (Relational Data Management System) là hệ thống chương trình hỗ trợ cho chức năng quản lý, khai thác dữ liệu theo mô hình cơ sở dữ liệu quan hệ
1.2.Cơ sở dữ liệu quan hệ
- Cơ sở dữ liệu là một kho chứa thông tin về một đối tượng cụ thể
- Cơ sở dữ liệu quan hệ là những bảng 2 chiều chứa dữ liệu, được cấu
tạo bởi các dòng và các cột Tên cột gọi là trường (field), các dòng gọi
là mẫu tin (record)
- Cơ sở dữ liệu quan hệ cho phép trích ra các tập hợp dữ liệu con từ các
bảng
- Cơ sở dữ liệu quan hệ cho phép nối các bảng với nhau
1.3.Khái niệm về Microsoft Access
1.3.1Khái niệm
Microsoft Access là một hệ quản trị cơ sở dữ liệu (Data Management System gọi tắt là DBMS) chạy trên môi trường Windows do hãng phần mềm Microsoft sản xuất (1989-1996)
Trang 3Đây là một phần mềm chuyên dùng, giúp chúng ta quản lý, bảo trì và khai thác dữ liệu được lưu giữ một cách có tổ chức bên trong máy tính (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ữ.)
1.3.2.Đặc điểm của Microsoft Access
1.2.Khởi động và thoát khỏi Access
1.2.1.1.Khởi động MS Access
Có nhiều cách để khởi động chương trình Microsoft Access, dưới đây
là một số cách thông dụng nhất:
- Nhấp đúp chuột vào biểu tượng shortcut của MS Access trên desktop
- Nhấp chuột vào Start -> chọn Program -> chọn MS Access
- Nếu trên desktop có thanh Office shortcut, nhấp chuột vào nút có biểu
tượng của MS Access
- Biểu tượng của chương trình: Microsoft Access
1.2.1.2.Thoát khỏi MS Access
- Chọn nút Close trên cửa sổ chương trình
- Hoặc vào menu File Exit
1.2.1.3.Các thành phần trong cửa sổ MS Access
Thanh tiêu đề
- Nằm ở trên cùng cửa sổ
- Thể hiện tên chương trình
- Chứa các lệnh và các nút lệnh quản lý cửa sổ
Thanh menu (thanh trình đơn)
- Nằm dưới thanh tiêu đề
- Chứa các nhóm lệnh
Thanh công cụ
- Nằm dưới thanh menu
- Chứa các biểu tượng, mỗi biểu tượng đại diện cho một hành
động
Thanh trạng thái
- Nằm ở dưới cùng của cửa sổ
- Thể hiện tình trạng hiện hành của ứng dụng
Trang 4Hình 1.1 – Thanh công cụ ứng dụng Tạo tập tin cơ sở dữ liệu
- Trong cửa sổ chương trình MS Access vào menu File New Xuất hiện Task Panel trong mục New chọn Blank Database xuất hiện hộp thoại File New Database
Hình 1.2 Cửa sổ File New Database
- Cửa sổ cơ sở dữ liệu Quan ly Sinh Vien
tin csdl
Trang 5Hình 1.3
Mở tập tin cơ sở dữ liệu đã tồn tại
- Vào File > chọn Open hoặc nhấn tổ hợp Ctrl + O
- Chọn vị trí và tên tập tin muốn mở > chọn Open
Hoặc:
- Khi khởi động chương trình, trong Task Panel, tại mục Open a File chọn tên tập tin csdl đang hiện hữu hoặc chọn More File để mở hộp thoại Open
1.3.Các thành phần trong tập tin CSDL
1.3.1.Cửa sổ Database
Là nơi lưu giữ tất cả các đối tượng của tập tin cơ sở dữ liệu
1.3.2.Table (Bảng)
Là thành phần cơ bản của một cơ sở dữ liệu trong Access Tổ chức cơ
sở dữ liệu theo mô hình quan hệ thực thể có dạng bảng
Hình 1.4
Trang 6Hàng đầu tiên cho biết tên các trường (cột) Field1, Field2,…
Các dòng phía dưới là các vùng thuộc tính của các mẩu tin (Record) Trong bảng phải có ít nhất một khóa (primary key) của cơ sở dữ liệu Khóa gồm một hay nhiều vùng thuộc tính làm cơ sở để phân biệt hai mẩu tin bất kỳ trong bảng Dữ liệu trong vùng khóa không được trùng với nhau (no duplicated) và không nên thay đổi dữ liệu trong vùng khóa, dễ dẫn đến lỗi nghiêm trọng trong hệ thống dữ liệu
1.3.3.Query (Truy vấn)
Query là công cụ để truy vấn thông tin và thực hiện các thao tác trên
số liệu Người ta sẽ sử dụng Query để thực hiện việc liên kết dữ liệu từ các table và lấy ra thông tin cần quang tâm (Select Query) Ngoài ra, Query còn là công cụ cần thiết để sửa đổi số liệu (Update Query), để tạo ra table mới (Make Table Query), để nối thêm các mẩu tin vào table (Append Query), để xóa số liệu (Delete Query), tổng hợp số liệu (Crosstab Query),
và nhiều công dụng khác nữa
Để thực hiện truy vấn ta có thể sử dụng ngôn ngữ truy vấn có cấu trúc SQL (Structure Query Language) hoặc công cụ truy vấn bằng ví dụ QBE (Query By Example)
1.3.4.Form (Biểu mẫu)
Form là công cụ cho phép tạo các màn hình dùng để cập nhật hoặc xem dữ liệu lưu trong các bảng Nó còn cho phép tạo ra các hộp thoại hỏi đáp giữa người sử dụng & hệ thống ứng dụng
1.3.5.Report (Biểu báo)
Là kết quả đầu ra sau cùng của quá trình xử lý, dùng để in ấn hay thể hiện các báo cáo có nguồn gốc từ các bảng (Table) hay từ kết quả của các truy vấn (Query) Biểu báo (Report) có nhiều hình thức trình bày phong phú, đẹp mắt, không những gồm chữ nghĩa mà còn gồm cả hình ảnh, đồ thị.v.v
Trang 71.3.7.Module (Bộ mã lệnh)
Một dạng tự động hóa cao cấp và chuyên sâu hơn Macro Đó là những hàm riêng của người dùng được soạn thảo bằng ngôn ngữ Access Basic, dành cho các thảo chương viên chuyên nghiệp
BÀI TẬP THỰC HÀNH
Bài 1: Hãy mở chương trình MS Access, tạo CSDL quanlysinhvien
Bài 2: Ở cửa sổ Object, lần lượt chọn các mục:Table, Query, Form, Report và quan sát
Bài 3: Tạo mới thêm CSDL quanlynhanvien
Bài 4: Ở thanh menu, nhấn vào Create và lần lượt nhấn vào Table Design, Query Design, Form Design, Report Design và quan sát
Bài 5: Ở thanh menu, nhấn vào Create và lần lượt nhấn vào Query Wizard, Form Wizard, Report Wizard và quan sát Sau đó đóng chương trình
Trang 8BÀI 2: BẢNG DỮ LIỆU (TABLE)
Giới thiệu:
Bảng là các đối tượng thiết yếu trong một cơ sở dữ liệu vì chúng chứa toàn bộ thông tin hoặc dữ liệu Trước khi tạo bảng, hãy cân nhắc yêu cầu và xác định toàn bộ các bảng mà có thể cần
Mục tiêu:
- Trình bày được các khái niệm về bảng;
- Tạo lập được bảng;
- Thiết lập được các trường, thuộc tính;
- Thao tác được với dữ liệu ở dạng datasheet
Nội dung chính:
2.1 Khái niệm về bảng dữ liệu
2.1.1 Khái niệm
Là thành phần cơ bản của một cơ sở dữ liệu trong Access Tổ chức cơ
sở dữ liệu theo mô hình quan hệ
Bảng dữ liệu là một bảng 2 chiều dùng để lưu trữ thông tin dữ liệu Trong bảng dữ liệu có:
- Các cột (trường): trong một bảng phải có ít nhất là một cột Trên cùng
một cột chỉ được phép chứa một loại dữ liệu duy nhất Mỗi cột có các đặc trưng cơ bản:
- Tên cột (field name)
- Kiểu dữ liệu mà cột sẽ lưu trữ (data type)
- Chiều dài tối đa của dữ liệu được lưu trữ trên một cột (field size)
- Giá trị mặc định ban đầu (default value)
- Các dòng hoặc các mẫu tin: là những thể hiện dữ liệu các cột trong
bảng
- Khóa chính: gồm một hoặc nhiều trường trong một bảng mà qua một
bộ giá trị cho trước của các trường đó, ta chỉ tìm thấy trong bảng một
và chỉ một mẫu tin (duy nhất)
Nhận xét:
- Các trường là khóa chính phải luôn luôn có dữ liệu (không được
rỗng)
- Dữ liệu trong các trường là khóa chính không được phép trùng lặp
- Khóa ngoại: là các trường trong bảng, đồng thời các trường này lại là
khóa chính của một bảng khác
Trang 92.2 Cấu trúc của bảng dữ liệu
Hình 2.1
2.3 Tạo bảng dữ liệu
2.3.1 Một số giới hạn không thể vượt qua của một Table
Tổng số ký tự tối đa cho tên trường (Field name) 64
Kích thước tối đa một field kiểu OLE Object 1 gigabyte
Tổng số ký tự tối đa trong một thông báo kiểm chính – validation
Text
255
Tổng số ký tự tối đa trong quy luật kiểm chính –validation Rule 2048
Tổng số ký tự tối đa trong phần mô tả table hay field 255
Tổng số ký tự tối đa trong một Record (không kể field Memo và
OLE)
2000 Tổng số ký tự trong một qui đinh thuộc tính – property Setting 255
Trang 10Hình 2.2
Có thể tạo lập một table mới theo các cách thức sau:
2.3.3 Tạo mới Table bằng Datasheet View
- Trong hộp thoại New Table chọn Datasheet View rồi chọn OK
- Access đưa ra một mẫu Table gồm 21 hàng và 10 cột Các cột có
tên là Field1,Field2,… đến Field10
Để thay đổi tên vùng thuộc tính , chọn một trong hai cách thao tác sau:
- Rà chuột vào đỉnh cột muốn sửa tên , kích chuột phải (right
click), xuất hiện menu lệnh, chọn Rename Column
- Vào menu Format Rename Column 2.3.4 Theo sự hướng dẫn của Access (nhưng thường chẳng thích hợp với tổ
chức theo yêu cầu của bạn.)
- Trong hộp thoại New Table chọn Table Wizard rồi chọn OK 2.3.5 Tạo mới Table bằng Design View
Đây là biện pháp hữu hiệu nhất , tuy mất công nhưng chủ động
và phù hợp với việc tạo cấu trúc cơ sở dữ liệu
- Trong hộp thoại New Table, chọn Design View rồi chọn OK
xuất hiện cửa sổ thiết kế như sau:
Hình 2.3
Trang 11- Ta cũng có thể tạo mới một bảng bằng cách trong cửa sổ cơ sở
dữ liệu chọn lệnh Create Table in Design View xuất hiện cửa
sổ thiết kế
+ Field name (Tên trường): Đặt tên trường
- Bắt đầu bằng ký tự chữ (A-Z,a-z)hoặc số
- Trong tên có thể có khoảng trắng ,nhưng không được chứa các
dấu chấm câu , dấu nháy
- Chiều dài tối đa 64 ký tự
- Thường đặt tên ngắn gọn , mang tính gợi nhớ
+ Data type: Cài đặt kiểu dữ liệu cho trường
Text Kiểu chuỗi có độ dài tối đa 255 kí tự Memo Kiểu chuỗi có độ dài tối đa 65,535 kí tự
Date / Time Kiểu ngày / giờ Currency Kiểu số có định dạng theo loại tiền tệ AutoNumber
Kiểu số nhưng tự động tăng do MS Access cung cấp và quản lý, người sử dụng không thể cập nhật
Yes / No Kiểu logic OLE Object Kiểu đối tượng kết nhúng: Word, Excel Hyperlink Kiểu chuỗi chỉ đường của một địa chỉ hồ sơ
hoặc một trang Web Lookup Wizard Tạo một cột để chọn giá trị và tìm kiếm từ
một bảng khác
+ Description (Mô tả trường):
- Dùng để ghi chú ý nghĩa của trường dữ liệu
- Có thể nhập kí tự hoặc kí số vào ô này Các ghi chú này sẽ
được hiển thị trên thanh trạng thái bên dưới màn hình khi mở
rộng bảng ở chế độ cập nhật dữ liệu (Datasheet View)
+ Field properties (Các thuộc tính):
Trang 12- Vùng Field properties để khai báo các thuộc tính của một trường
- Ý nghĩa các thuộc tính có thể thay đổi tùy theo kiểu dữ liệu của trường
- Ví dụ: Cửa sổ thiết kế bảng dữ liệu MONHOC
Hình 2.4 2.4 Một số thuộc tính cơ bản của Field (Field Properties)
Kiểu dữ liệu Number
5,368.05 (2 số lẻ) 5,368.0 (1 số lẻ) Standard Có dấu phân cách phần ngàn và số 1,899.03
Trang 13lẻ Percent Dữ liệu nhập vào được nhân (x) với
Kiểu dữ liệu Text
> Đổi dữ liệu nhập vào thành chữ in
hoa
“tin học” “TIN HỌC”
< Đổi dữ liệu nhập vào thành chữ in
thường
“internet”
@ Dữ liệu bắt buộc nhập
& Dữ liệu không bắt buộc nhập
Kiểu dữ liệu Data / Time
General Date Ngày giờ đầy đủ 2/5/02, 08:42:00 PM Long Date Thứ, tháng, ngày, năm Sunday, March 16,
2002 Medium
Date
Ngày – tháng – năm 12 – Apr – 02
Short Date Ngày – tháng – năm 5/8/02
Long Time Giờ: phút: giây AM/PM 3:24:53 PM
Medium
Time
Các ký tự định dạng biểu diển filed theo ngàygiờ
: Dấu cách giờ phát giây Định nghĩa bởi International(Control
Panel)
/ Dấu cách Ngày tháng năm
c Ngày chuẩn theo Standard General Date
d Ngày trong tháng, 1 hoặc 2 cột tùy theo cần thiết (1-31)
dd Ngày trong tháng, luôn luôn 2 cột số (01-31)
ddd Tên tắt của ngày trong tuần (Sun-Sat)
Trang 14dddd Tên đầy đủ của ngày trong tuần (Sunday-Saturday)
ddddd Ngày theo chuẩn Standard Sort Date
dddddd Ngày theo chuẩn Standard Long Date
m Tháng trong năm,1 hay 2 cột số tùy theo cần thiết
mm Tháng trong năm (01-12)
mmm Tên tắt của tháng trong năm (Jan-Dec)
mmmm Tên đầy đủ của tháng trong năm(January-December)
dd/mm/yyyy Dạng đầy dủ của ngày tháng năm
q Quý trong năm (1-4)
y Ngày trong năm (1-366)
yy Năm không có phần thế kỷ (01-99)
yyyy Năm có phần thế kỷ (0100-9999)
h Giờ trong ngày, 1 hay 2 cột số tùy theo yêu cầu (0 – 23)
hh Giờ trong ngày (00 – 23)
n Phút, 1 hay 2 cột số tùy theo yêu cầu (0 – 59)
Trang 15? Kí tự A Z , không bắt buộc nhập
A Kí tự hoặc kí số, bắt buộc nhập
a Kí tự hoặc kí số, không bắt buộc nhập
& Bất kì một kí tự nào hoặc khoảng trắng, bắt buộc nhập
C Bất kì một kí tự nào hoặc khoảng trắng, không bắt buộc
nhập
,: ; - /
Các dấu phân cách: số lẻ, phần ngàn, ngày, giờ (các dấu phân cách này còn phụ thuộc vào bên trong thuộc tính Regional Settings của Control Panel trên Windows)
< Chuyển đổi các dữ liệu chuỗi sang thường
> Chuyển đổi các dữ liệu chuỗi sang chữ IN
+ Decimal Place: qui định số chữ số thập phân
+ Caption: đặt tiêu đề cho trường, tiêu đề này được thể hiện trong bảng
ở chế độ cập nhật dữ liệu Nếu không khai báo tiêu đề thì MS Access
sẽ lấy tên trường làm tiêu đề
+ Default Value: cài đặt giá trị mặc định ban đầu của trường khi thêm một mẫu tin mới
+ Validation Rule: cài đặt quy tắc kiểm tra dữ liệu nhập vào bảng có hợp
Trang 16+ Bound Column: số thứ tự của trường trong dữ liệu nguồn được tham chiếu đến
+ Column Count: số trường (cột) hiển thị trong danh sách
+ Column Heads: xác định có thể hiện tiêu đề các trường trong danh sách hay không
+ Column Widths: độ rộng của các trường trong danh sách
+ List Rows: số dòng tối đa hiển thị trong danh sách
+ List Width: độ rộng của cả danh sách
+ Limit To List: xác định chỉ cho phép chọn các giá trị trong danh sách (Yes) hoặc không bắt buộc phải chọn giá trị trong danh sách (No)
2.2.5 Tạo khoá chính
Các bước thực hiện:
Bước 1: Mở bảng ở chế độ thiết kế
Bước 2: Chọn các trường làm nên khóa chính
Bước 3: Vào Edit -> chọn Primary Key (hoặc nhấp chuột vào nút
Primary Key trên thanh công cụ)
Chúng ta cũng có thể đặt lại khóa chính cho bảng hoặc xóa khóa chính của bảng bằng cách chọn các trường làm khóa cần xóa rồi thực hiện bước 3
2.2.6 Lưu cấu trúc bảng
Để lưu lại cấu trúc bảng vừa thiết kế, ta thực hiện:
Vào File chọn Save
2.3 Các chế độ hiển thị của bảng dữ liệu
2.3.1 Mở bảng ở chế độ thiết kế (Design View)
Khi muốn sửa đổi cấu trúc của bảng Thực hiện như sau:
Để chuyển đỗi qua lại giữa các chế độ hiển thị khi bảng biểu đang mở
ta vào menu View Design View/ Datasheet View (hoặc kích chọn nút View tương ứng / trên thanh công cụ)
Trang 172.4 Sửa đổi cấu trúc bảng
2.4.1 Chọn một hoặc nhiều trường
Chọn một trường: Kích chuột vào đầu thanh chọn (trước tên trường)
của trường cần chọn
Chọn nhiều trường liên tục:
- Tại vị trí đầu thanh chọn, Drap chuột từ trường đầu tiên kéo đến
trường cuối cùng trong danh sách cần chọn
- Hoặc nhấn giữ phím Shift, sau đó kích chuột chọn trường đầu
tiên và trường cuối cùng trong danh sách các trường cần chọn
Chọn nhhiều trường không liên tục: nhấn giữ phím Ctrl, sau đó kích
chuột chọnlần lược các trường
2.4.2 Chèn một hoặc nhiều trường
Chèn một trường:
- Chọn vị trí muốn chèn thêm trường
- Vào Insert chọn Rows (Hoặc kích chuột phải, chọn Insert
Rows) nếu ở chế độ thiết kế Design View
Vào Insert chọn Column (Hoặc kích chuột phải, chọn Insert
Column) nếu ở chế độ nhập dữ liệu Datasheet View
Chèn nhiều trường:
- Mở bảng biểu ở chế độ thiết kế Design
- Chọn vị trí chèn thêm trường
- Chọn số lượng dòng đúng bằng số lượng trường cần chèn thêm
- Vào Insert chọn Rows (Hoặc kích chuột phải, chọn Insert
Rows)
2.4.3 Xóa một hoặc nhiều trường
- Chọn các trường muốn xóa
- Vào Edit chọn Delete (Hoặc kích chuột phải, chọn Delete
Rows) nếu ở chế độ thiết kế Design View
Vào Edit chọn Delete Column (Hoặc kích chuột phải, chọn
Delete Column) nếu ở chế độ nhập dữ liệu Datasheet View
2.4.4 Sao chép, di chuyển trường
- Chọn trường muốn sao chép/ di chuyển
- Vào Edit chọn Copy/Cut (hoặc nhấn tổ hợp phím
Ctrl+C/Ctrl+X)
- Chọn nơi muốn xuất hiện trường đã sao chép/di chuyển đến
Trang 18- Vào Edit chọn Paste hoặc nhấn tổ hợp phím Ctrl + V
Ta có thể di chuyển vị trí các trường bằng cách chọn các trường cần di chuyển Di chuyển chuột đến vị trí đầu các trường vừa chọn sao cho con chuột hiện thành hình mũi tên màu trắng ( ) Drap chuột tới vị trí mới
2.4.5 Đổi tên trường
Ở chế độ thiết kế Design View: ta chỉ cần xóa tên cũ sau đó đặt lại tên
mới
Ở chế độ nhập dữ liệu Datasheet View: Chọn các trường muốn đỗi
tên Vào menu Format chọn (Hoặc kích chuột phải, chọn Rename Column)
* Sau khi thực hiện các thao tác sửa đổi cấu trúc bảng, ta phải thực hiện
thao tác lưu cấu trúc bảng để giữ lại những gì ta vừa sửa đổi cho bảng
2.5 Thiết lập quan hệ giữa các bảng
2.5.1 Tầm quan trọng của quan hệ giữa các bảng
Các bảng trong cơ sở dữ liệu theo mô hình quan hệ thực thể kết hợp, thường ngay sau khi thiết kế xong cấu trúc bạn phải tạo mối quan hệ (Relationships) giữa các bảng này Khi thiết lập mối quan hệ, tính chất nhất quán của dữ liệu sẽ được đảm bảo tốt hơn
Thí dụ: Trong hệ thống quản lý hồ sơ sinh viên ở một trường đại học
có một bảng SINHVIEN lưu trữ thông tin về cac sinh viên, một bảng KHOA lưu trữ thông tin về các khoa, một bảng MONHOC lưu trữ thông tin về các môn học, một bảng KETQUA lưu trữ thông tin về kết quả thi của các sinh viên ta thấy để phát hiện việc nhập sai mã sinh viên ở bảng kết quả (trường hợp mã nhập sai không thuộc của sinh viên nào trong trường) thì bảng này cần có mối liên hệ vớ mã sinh viên ở bảng SINHVIEN để khi nhập sai trong trường hợp trên thì sẽ đưa ra thông báo lỗi
- Tùy theo tính chất của vùng liên kết trong bảng sẽ cho tính nối kết
tương ứng của mối liên kết hai ngôi (hai bảng tham gia liên kết)
+ Nếu là khóa (primary key) của bảng: nối kết 1(one)
Trang 19- Quan hệ một – một (one to one): dùng để mô tả mối quan hệ 1 – 1 của
2 bảng, trong đó, ứng với giá trị của một trường khóa của bảng này chỉ
tìm thấy duy nhất 1 giá trị tương ứng của trường có quan hệ trong
bảng kia
Ví dụ: Trong một năm học, một giáo viên chỉ được phân công chủ
nhiệm một lớp
- Quan hệ một – nhiều (one to many): dùng để mô tả mối quan hệ
1 - ∞ (hoặc ∞ -1) của 2 bảng, trong đó, ứng với 1 giá trị của trường
khóa của bảng này cho phép tìm thấy nhiều giá trị trong trường tương
ứng
Ví dụ: Một sinh viên thì có thể học nhiều môn học
- Trong thực tế còn có mối quan hệ nhiều – nhiều: không dùng trong
cơ sở dữ liệu quan hệ
2.5.3 Các bước tạo quan hệ
Để tạo mối liên kết ta thực hiện theo các bước sau:
Bước 1: Mở cửa sổ quan hệ:
- Vào Tool chọn Relationships (Hoặc hắp biểu tượng trên thanh
Toolbar) Cửa sổ Relationships hiện ra cùng với hộp thoại Show Table
Hình 2.5 Bước 2: Đưa các bảng vào cửa sổ quan hệ:
Trang 20- Chọn thẻ Table chọn bảng muốn tạo quan hệ, nhấp chuột vào nút Add để chèn bảng đã chọn vào cửa sổ quan hệ (hoặc kích
đúp chuột vào tên bảng)
* Trường hợp hộp thoại Show Table đã bị đóng, muốn hiển thị hộp
thoại này ta vào menu Relationships chọn Shows table (Hoặc nhấp phải chuột tại vùng trống trên màn hình chọn Shows table)
Bước 3: Thiết lập quan hệ giữa các bảng
- Chọn trường cần tạo quan hệ ở bảng mà trường đó làm khóa
chính, sau đó kéo lê chuột và thả vào trường muốn tạo quan hệ ở bảng mà trường đó làm khóa ngoại
Hình 2.6
- Xác định các qui tắc ràng buộc cho mối quan hệ: chọn ô kiểm tra hiệu lực của ràng buộc toàn vẹn (Enforce Referential Integrity)
+ Việc chọn ⌧⌧⌧Enforce Referential Integrity buộc Access
phải kiểm tra gía trị tên vùng liên kết của mẩu tin bên Many phải ứng với bên One Từ đó không cho phép có một mẩu tin có giá trị trên vùng liên kết bên many mà không có bên One
+ Việc chọn ⌧⌧⌧ Cascade Update Related Field sẽ cho phép
khi bạn sửa nội dung giá trị trên vùng nối kết bên One dẩn đến Access sẽ xóa tất cả các mẩu tin liên hệ ở bên many Điều này có thể dẩn đến nguy hiểm trầm trọng Thí dụ, khi xóa mã sản phẩm(MSP)trong table SANPHAM dẩn đến các mẩu tin cũng mã này trong tập HOADON sẽ bị xóa sạch
Trang 21- Nếu muốn biết tính chất kết nối ,chọn nút ấn Join Type …xuất
hiện hộp thoại có 3 mục và mặc định là chọn mục thứ nhất Chọn tính chất phù hợp xong chọn OK
Hình 2.7
- Sau khi Create, một nối liên kết trên vùng chỉ định giữa hai table
sẽ xuất hiện các mối liên kết: One to Many(một – nhiều ), One to One (một – một)
- Sau cùng chọn File, Close và chọn Yes để lưu lại mối liên kết
vừa tạo
2.5.4 Sửa đỗi, xóa mối quan hệ
Muốn sửa đổi mối quan hệ: chọn mối nối kết giữa hai bảng Vào menu Relationships Edit Relationships (hoặc bấm nút phải chuột ngay tại vị trí của mối nối kết, xuất hiện thực đơn kéo xuống, chọn Edit Relationships)
Muốn xóa mối nối kết: bấm nút phải chuột tại mối nối kết giữa hai bảng xuất hiện thực đơn kéo xuống, chọn Delete (hoặc chọn nút Delete trên thanh công cụ hoặc vào menu Edit chọn Delete)
2.6 Các lỗi thường gặp trong khi cập nhật dữ liệu cho bảng
2.6.1 Trùng khóa chính
Hình 2.8
Trang 222.6.2 Dữ liệu bắt buộc nhập
Hình 2.9 2.6.3 Khóa ngoại không tồn tại
Hình 2.10 2.6.4 Vi phạm nguyên tắc kiểm tra dữ liệu
Hình 2.11 2.6.5 Sai kiểu dữ liệu của trường
Hình 2.12 2.7 Trình bày cửa sổ nhập liệu
2.7.1 Cài đặt cách trình bày cửa sổ nhập dữ liệu cho hệ thống
Để cài đặt cách trình bày cửa sổ nhập dữ liệu cho hệ thống ta thực hiện như sau:
Trang 23- Tại cử sổ csdl vào menu Tools chọn Options… xuất hiện hộp
thoại Options
- Chọn thẻ Datasheet để cài đặt các thông số về Font chữ (Default
Font), màu sắc mặc định (Default Colors), hiển thị lưới (Default gridlines showing) và hiệu ứng hiển thị của bảng (Default cell effect)
Hình 2.13
2.7.2 Font chữ cho bảng dữ liệu
- Để cài đặt Font chữ cho bảng dữ liệu ta thực hiện như sau:
+ Mở bảng dữ liệu ở chế độ Datasheet View + Vào menu Format chọn Font… xuất hiện hộp thoại Font, tại đây ta cài đặt Font chữ cho bảng tính Việc cài đặt này chỉ ảnh hưởng lên bảng dữ liệu hiện hành mà thôi
Hình 2.14
Trang 242.7.3 Màu nền, kiểu khung
- Mở bảng dữ liệu ở chế độ Datasheet View
- Vào menu Format chọn Datasheet … xuất hiện hộp thoại
- Mở bảng dữ liệu ở chế độ Datasheet View
- Vào menu Format Unhide Columns… xuất hiện hộp thoại, ví dụ
Chọn màu
nền
Chọn hiển thị lưới
Chọn đường
lưới
Chọn dạng nét lưới
Chọn vị trí hiển thị dữ
liệu trong cửa sổ bảng
dữ liệu
Trang 25- Hộp thoại trên hiển thị danh sách các trường trong bảng dữ liệu, muốn
hiển thị trường nào thì ta đánh dấu tick vào trường đó chọn Close
để đóng hộp thoại
2.7.5 Kích thước hàng, cột
- Mở bảng dữ liệu ở chế độ Datasheet View
- Chọn các cột/dòng muốn định dạng kích thước
- Vào menu Format (hoặc kích chuột phải tại vị trí chọn) chọn lệnh
Column Width/Row Height Nhập kích thước vào hộp thoại
Hình 2.17
Hình 2.18
* Trong trường hợp định dạng cho dòng thì sẽ áp dụng luôn cho tất cả
các dòng trong bảng; trường hợp định dạng cho cột thì chỉ ảnh hưởng lên các cột được chọn
2.7.6 Di chuyển cột
Chọn các cột cần di chuyển, di chuyển chuột tới tiêu đề của các cột vừa chọn xuất hiện chuột hình mũi tên màu trắng Drap chuột di chuyển các cột đến vị trí mới
Trang 26- Vào menu Format (hoặc kích chuột phải tại tên trường) chọn lệnh
Freeze All Columns
2.8 Xử lý dữ liệu trên bảng
2.8.1 Tìm kiếm, thay thế dữ liệu
MS Access cung cấp cho người dùng công cụ tìm kiếm, thay thế nhanh dữ liệu trong các bảng để có thể tra cứu nhanh các thông tin đã lưu trữ
+ Trong hộp Find What, nhập vào giá trị cần tìm
+ Trong hộp Look in chọn vùng sẽ tìm kiếm + Trong hộp Match chọn cách thức tìm kiếm:
Hình 2.20
+ Trong hộp Search chọn hướng tìm: All (Tìm trong cả vùng mà hộp Look in đã chọn), Up (Tìm từ vị trí chuột hiện hành trở về đầu vùng), Down (Tìm từ vị trí chuột hiện hành trở về cuối vùng)
+ Match Case: có phân biệt chữ hoa và chữ thường + Nút Find Next: Yêu cầu ìm tiếp
+ Nút Cancle: Yêu cầu hủy lệnh tìm
Giá trị tìm là thành phần của trường Giá trị tìm phải giống cả trường
Giá trị tìm phải là giá trị bắt đầu của trường
Trang 27Tìm kiếm và thay thế dữ liệu:
- Vào Edit > chọn Replace… (hoặc nhấn Ctrl + H) xuất hiện hộp
+ Trong hộp Replace With: nhập vào giá trị cần thay thế
+ Nút Find Next: Yêu cầu ìm tiếp
+ Nút Cancle: Yêu cầu hủy lệnh tìm
+ Nút Replace: Yêu cầu thay thế tại vị trí vừa tìm thấy
+ Nút Replace All: Yêu cầu thay thế tất cả các giá trị tìm thấy
Đặc biệt, chúng ta còn có thể dò tìm dữ liệu một cách gần đúng bằng
cách sử dụng các ký tự đại diện khi nhập vào giá trị cần tìm MS Access cung cấp một số các ký tự đại diện tìm kiếm sau:
? Đại diện một ký tự Nhà? > Nhàn, Nhài…
* Đại diện một chuỗi các
Trang 28- Chọn trường làm tiêu chuẩn sắp xếp
- Vào Record > Chọn Sort > chọn một trong 2 chức năng:
+ Sort Ascending : sắp xếp tăng dần + Sort Descending: sắp xếp giảm dần
- Mở bảng ở chế độ cập nhật dữ liệu
- Vào Records chọn Filter
- Chọn một trong bốn chức năng lọc dữ liệu Thực hiện theo yêu cầu
của từng loại chức năng
Trang 29Hình 2.23
- Xem kết quả lọc: Vào menu Filter Apply Filter/Sort (hoặc nhấp
chuột vào nút Apply Filter trên thanh công cụ)
- Khi cần hiển thị lại tất cả các mẫu tin thì chúng ta sẽ xóa bộ lọc dữ liệu bằng cách: vào Record > chọn Remove Filter / Sort (hoặc
nhấp chuột vào nút Remove Filter trên thanh công cụ)
- Bước 3: Lần lược chọn các giá trị điều kiện lọc trong hộp kéo
xuống tại mỗi trường trên form
- Bước 4: Vào menu Filter Apply Filter/Sort (hoặc nhấp
chuột vào nút Apply Filter trên thanh công cụ) dữ liệu lọc được thể hiện
Ví dụ: Trong bảng SINHVIEN hiển thị danh sách các sinh viên
khoa CNTT và học năm 1
- Sau khi thực hiện bước 3 ta có màn hình lọc dữ liệu như sau:
Hình 2.24
Trang 30- Sau khi thực hiện bước 4 ta có màn hình kết quả lọc dữ liệu như
sau:
Hình 2.25 2.8.5 Filter By Selection:
Chức năng này cho phép chúng ta lọc các dòng dữ liệu đúng với giá trị mà chúng ta đã chọn trên cửa sổ Datasheet của bảng
Thực hiện:
- Bước 1: Mở bảng ở chế độ cập nhật dữ liệu
- Bước 2: Chọn các giá trị cần lọc trong bảng dữ liệu, nếu có
nhiều giá trị điều kiện lọc thì các điều kiện này phải nằm liên tục nhau theo dòng hoặc cột
- Bước 3: Vào menu Records chọn Filter Filter by
Selection dữ liệu lọc được thể hiện
Ví dụ: Trong bảng SINHVIEN hiển thị danh sách các sinh viên
khoa AV và học năm 2
- Sau khi thực hiện bước 2 ta có màn hình như sau:
Hình 2.26
Trang 31- Sau khi thực hiện bước 3 ta có màn hình kết quả lọc dữ liệu như
sau:
Hình 2.27 2.8.6 Filter Excluding Selection
Chức năng này cho phép chúng ta chỉ lọc được các dòng dữ liệu khác với giá trị đã chọn trong bảng ở chế độ Datasheet
Thực hiện:
- Bước 1: Mở bảng ở chế độ cập nhật dữ liệu
- Bước 2: Chọn các giá trị cần ẩn trong bảng kết quả lọc, nếu có
nhiều giá trị điều kiện lọc thì các điều kiện này phải nằm liên tục nhau theo dòng hoặc cột
- Bước 3: Vào menu Records chọn Filter Filter Excluding
Selection dữ liệu lọc được thể hiện
Ví dụ: Trong bảng SINHVIEN hiển thị danh sách các sinh viên
không thuộc khoa AV và không đang theo học năm 2
- Sau khi thực hiện bước 2 ta có màn hình như sau:
Hình 2.28
- Sau khi thực hiện bước 3 ta có màn hình kết quả lọc dữ liệu như
sau:
Trang 32Hình 2.29 2.8.7 Advanced Filter / Sort
Chức năng này cho phép chúng ta lọc dữ liệu theo các điều kiện phức tạp, các hàm tính toán và các phép toán logic AND, OR bằng cách thể hiện trên màn hình Filter Ngoài ra trong cơ chế lọc này còn cho phép sắp sếp dữ liệu trong bảng kết quả lọc
Thực hiện:
- Bước 1: Mở bảng ở chế độ cập nhật dữ liệu
- Bước 2: Vào menu Records chọn Filter Advanced
Filter/Sort xuất hiện cửa sổ Filter
Hình 2.30
- Bước 3: Cài đặt các thông số trong cửa sổ Filter
+ Field: Chọn tên trường chứa điều kiện lọc dữ liệu + Sort: Trong kết quả lọc dữ liệu có muốn sắp xếp dữ liệu hay không, nếu có thì chon Ascending (tăng dần) hoặc Descending (giảm dần), nếu không thì chọn Not sorted (mặc định là không sắp xếp)
+ Criteria: Cài đặt điều kiện lọc dữ liệu ứng với các trường Các điều kiện ghi trên cùng một cột dùng thể hiện phép toán
Trang 33logic OR, và trên cùng một dòng dùng để thể hiện phép toán logic AND
- Bước 4: Vào menu Filter Apply Filter/Sort (hoặc nhấp
chuột vào nút Apply Filter trên thanh công cụ) dữ liệu lọc được thể hiện
Ví dụ 1: Trong bảng SINHVIEN hiển thị danh sách các sinh viên
thuộc khoa AV và đang theo học năm 2, sắp xếp dữ liệu tăng dần theo TENSV
- Sau khi thực hiện bước 3 ta có màn hình thiết kế lọc dữ liệu như
Trang 34Ví dụ 2: Trong bảng SINHVIEN hiển thị danh sách các sinh viên
thuộc khoa AV hoặc các sinh viên đang theo học năm 2, sắp xếp dữ liệu tăng dần theo tên sinh viên
- Sau khi thực hiện bước 3 ta có màn hình thiết kế lọc dữ liệu như
Trang 35(>=), nhỏ hơn hoặc bằng (<=), khác (<>), bằng (=), trong một đoạn (Between), trong một danh sách (In), giá trị Null (Is Null), không là giá trị Null (Is Not Null), giống như (Like)
Logic Và (And), hoặc (Or), phủ định (Not)
Tính toán
Cộng (+), trừ (-), nhân (*), chia (/), chia lấy phần nguyên (\), lũy thừa (^), chia lấy phần dư (Mod), cộng 2 chuỗi (&)
Trang 36BÀI TẬP THỰC HÀNH
Bài 1: Thiết kế CSDL Quanlybansach với các yêu cầu sau:
Thiết kế các bảng sau:
LOAISACH (maloaisach (Text – 10), tenloaisach (Text – 100))
DOCGIA (madocgia (Text – 10), tendocgia (Text – 100), diachi
(Text – 200), sodienthoai (Text – 12))
SACH (masach (Text – 10), tensach (Text – 100), madocgia (Text
– 10), dongia (Number – Single), mota (Text – 200), soluong (Number – Integer), maloaisach (Text – 10))
Trang 37Bài 2: Thiết kế CSDL Quanlybannuochoa với các yêu cầu sau:
SP (MANH (Text – 4), MANH (Text – 4), MAKH (Text – 4),
TENNH (Text – 200), SOLUONG (Number – Integer), DONGIA(Number – Single))
Trang 38Bài 3: Thiết kế CSDL Quanlybangiaydep với các yêu cầu sau:
Thiết kế các bảng sau:
HANGGIAYDEP (MAHANG (Text – 10), TENHANG (Text –
100), DIACHI (Text – 200), SDT(Text – 12))
KHACHHANG (MAKH (Text – 10), TENKH (Text – 100), SDT
(Text – 12), DIACHI (Text – 12))
SANPHAMGIAYDEP (MASP (Text 10), MAHANG(Text – 10),
MAKH (Text – 10), TENSP (Text – 100), SOLUONG (Number – Integer), DONGIA (Number – Single), MOTA (Text – 200))
Trang 39Bảng SANPHAMGIAYDEP
Bài 4: Thiết kế CSDL QUANLYXE:
Thiết kế các bảng sau:
BANGXE(Maxe Text(10) , Tenxe Text(30), Loaixe Text(30),
Soghe Number(Long Integer))
DIEMDULICH(Madl Text(10), Tendiemdl text(30), Sokm
Number (Long Integer),Giave Number(Single))
KHACHHANG(Makh Text(10), Tenkh Text(50), Sodt Text(10))
DSDANGKY(Maxe Text(10), Madl Text(10), Makh Text(10),
Soluong Number (Longinteger), Thanhtien Number (Double))
Trang 40Bảng khachhang
Bảng diemdulich
Bảng dsdangky