HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
MỤC ĐÍCH
Cung cấp kiến thức cơ bản về tổ chức, xây dựng bài toán quản lý
Nắm được các nguyên lý cơ bản của hệ QTCSDL
Bước đầu biết tổ chức dữ liệu quan hệ, khai thác các chức năng cơ bản của hệ QTCSDL quan hệ thông qua MSAccess
NỘI DUNG
Chương 1: Dẫn nhập Hệ quản trị cơ sở dữ liệu
Chương 2: Ngôn ngữ con dữ liệu bậc cao: Mô tả, cập nhật, tim kiếm dữ liệu
Chương 3: Hệ quản trị CSDL Access
Chương 1
DẪN NHẬP HỆ QUẢN TRỊ CSDL
I. Ví dụ về bài toán quản lý
1. Bài toán quản lí cán bộ
- Khi chưa có máy tính:
Tổ chức : mẫu
Lưu trữ: cặp, hộp...
Thao tác: thủ công:
Ví dụ về bài toán quản lý(tiếp)
- Khi Có máy tính:
Tổ chức:mẫu có các qui định
Lưu trữ:trên giá mang tin
Thao tác: tự động
Ví dụ về bài toán quản lý(tiếp)
2. Bài toán quản lí điểm ở trường PT
Xây dựng mẫu sổ điểm
Làm sổ điểm trên giấy:
Bảng trong sổ điểm
Làm sổ điểm bằng máy tính:
Sổ điểm chia nhiều bảng
Bảng Họ tên và SBD
Bảng điểm môn Toán
Ví dụ về bài toán quản lý(tiếp)
3. Nhận xét:
Giống nhau:
Công việc
Khác nhau:
Cấu trúc thông tin
Thực hiện tự động
II. Các khái niệm cơ bản
1. Cơ sở dữ liệu (DataBase-DB)
Tập hợp dữ liệu của một bài toán quản lý được lưu trữ trên các vật mang tin dưới dạng các tập tin và là đối tượng tác nghiệp của người quản lý.
Các khái niệm cơ bản(tiếp)
2. Hệ quản trị CSDL
Chương trình máy tính giúp con người quản lý và khai thác cơ sở dữ liệu được gọi là hệ quản trị cơ sở dữ liệu (DataBase Managment System - DBMS).
Các khái niệm cơ bản(tiếp)
3. Các tính năng của HQTCSDL
Khả năng lưu trữ dữ liệu lâu dài.
Truy nhập số lượng lớn thông tin một cách hiệu quả.
Được xây dựng trên mô hình dữ liệu (quan hệ).
Ngôn ngữ cấp cao để định nghĩa và thao tác dữ liệu.
Đồng bộ các truy nhập cạnh tranh.
Kiểm tra tính đúng đắn của dữ liệu và thẩm quyền truy nhập.
Phục hồi.
Các khái niệm cơ bản(tiếp)
4. Các hệ quản trị CSDL thông dụng:
FOXPRO
ACCESS
Visual FOXPRO
ORACLE
SQL Server
III. Mô hình dữ liệu
Mô hình phân cấp
Mô hình mạng
Mô hình quan hệ
Mô hình dữ liệu (tiếp)
1. Mô hình phân cấp:
Quan hệ cha-con
Cây phân cấp
Cha
Con
Mô hình dữ liệu (tiếp)
2. Mô hình mạng:
Quan hệ chủ nhân-thành viên
Đồ thị có hướng
Mô hình dữ liệu (tiếp)
3. Mô hình quan hệ
Tập các k-bộ
Bảng k cột, hàng là 1 k-bộ
IV. Mô hình dữ liệu quan hệ
1. Khái niệm “quan hệ”
Cho R={A1,A2,...,An}
Mỗi Ai có miền giá trị là Dom(Ai)
Quan hệ r Dom (A1) x Dom (A2) x... x Dom (An)
phần tử (bộ) t=(t1,t2,...,tn)
Mô hình dữ liệu quan hệ (tiếp)
Ví dụ1:
R={SBD, Họ, Đệm, Tên, Giới tính}
Dom(SBD)={SP1,SP2,SP3,... }
Dom(Họ)={Nguyễn, Trần, Lê, Đỗ,...}
Dom(Đệm)={Văn, Thị,...}
Dom(Tên) tập các tên người
Dom(Giới tính)={Nam, Nữ}
Mô hình dữ liệu quan hệ (tiếp)
Ví dụ 2:
P={SBD, Điểm}
Dom(SBD)={SP1,SP2,SP3,...}
Dom(Điểm) tập giá trị từ 0 đến 10
Mô hình dữ liệu quan hệ (tiếp)
2. Khái niệm “Khóa”
Một thuộc tính hoặc tập thuộc tính
Dùng để phân biệt các bộ
Đảm bảo không có cặp bộ nào giống nhau
Ví dụ: thuộc tính SBD
Mô hình dữ liệu quan hệ (tiếp)
3. Khái niệm “Khóa kết nối:”
Có nhiều hơn 1 quan hệ
Xác định sự liên quan giữa các quan hệ
Ví dụ: thuộc tính SBD là khoá kết nối của quan hệ r và q
V. Các phép tính trên quan hệ
1. Phép thêm bộ
Tác dụng: Dùng để thêm 1 bộ vào quan hệ
Cú pháp:
Insert (r; A1=a1,A2=a2,...,An=an)
Insert (r; a1,a2,...,an)
Các phép tính trên quan hệ(tiếp)
Ví dụ: Cho quan hệ r như trong ví dụ1
Insert (r; SốBD=SP4, Họ=Nguyễn, Đệm=Văn, Tên=C, Giới tính=Nam)
Các phép tính trên quan hệ(tiếp)
2. Phép xóa bộ:
Tác dụng: Xoá bộ đã có
Cú pháp:
Delete (r; A1=a1, A2=a2, ..., An=an)
Delete (r; a1, a2, ..., an)
Delete (r; Ak=ak)
Các phép tính trên quan hệ(tiếp)
Vi dụ:
Delete (r; SốBD=SP2, Họ=Lê, Đệm=Thị, Tên=B, Giới tính=Nữ)
hoặc Delete (r; SốBD=SP2)
Các phép tính trên quan hệ(tiếp)
3. Phép cập nhật
Tác dụng: Thay đổi một số giá trị thuộc tính
Cú pháp:
Update (r; A1=a1, A2=a2, ..., An=an; Ai=ai, Aj=aj, ..., Am=am)
Update (r; Ak=ak;Ai=ai, Aj=aj, ..., Am=am)
Các phép tính trên quan hệ(tiếp)
Ví dụ:
Update (r; SốBD=SP3, Họ=Trần, Đệm=Văn, Tên=A, Giới tính=Nam; Đệm=Thị, Giới tính=Nữ)
Update (r; SốBD=SP3; Đệm=Thị, Giới tính=Nữ)
Chương 2
NGÔN NGỮ CON DỮ LIỆU BẬC CAO-
NGÔN NGỮ SQL
I. Các kiểu miền trong SQL (Structure Query Language)
CHAR(n):xâu kí tự có độ dài cố định n
VARCHAR(n): xâu kí tự có độ dài thayđổi từ 0 đến n
INT: số nguyên
NUMBER(p,d): số thập phân gồm p chữ số bên trái, 1 dâu chấm và d chữ số bên phải
DATE: kiểu ngày tháng năm
TIME: kiểu giờ
II. Định nghĩa lược đồ quan hệ
Dạng đơn giản nhất của câu lệnh tạo bảng là:
Cú pháp: CREAT TABLE
((),
(),
... ())
Ví dụ: CREAT TABLE PHONG (MAPHONG CHAR(3), TENPHONG VARCHAR(10), TEL NUMBER (8))
III. Tìm kiếm thông tin
1).Cú pháp
Cú pháp đơn giản nhất của SQL là:
SELECT
FROM
WHERE
Hiểu là: đưa ra cái gì từ đâu thỏa mãn điều kiện gì
Tìm kiếm thông tin(tiếp)
2).Tìm kiếm không điều kiện
Cú pháp:
SELECT
FROM
Ví dụ 1: Cho biết thông tin về các nhân viên
select MANV, HOTEN, GTINH, LUONG, MAPHONG
From NHANVIEN
Dấu * thay cho việc liệt kê tất cả các cột của bảng
select *
From NHANVIEN
Tìm kiếm thông tin(tiếp)
3).Tìm kiếm với điều kiện đơn giản
Cú pháp:
SELECT
FROM
WHERE
Trong đó thường chứa:
Toán tử so sánh: >,>=,<,<=,=,<>
Toán tử logic: NOT, AND, OR
Tìm kiếm thông tin (tiếp)
Ví dụ 2: Cho biết MANV, họ tên của các nhân viên nữ
select MANV, HOTEN
From NHANVIEN
Where GTINH=False
Ví dụ 3: Cho biết thông tin của những nhân viên có lương >1.000.000
select *
From NHANVIEN
Where LUONG> 1.000.000
Ví dụ 3’: Nhân viên hoặc là nữ hoặc là có lương từ 1.000.000 đến 2.000.000
Select *
From NHANVIEN
Where (GTINH=False) OR (LUONG>=1.000.000 AND LUONG <=2.000.000)
Tìm kiếm thông tin(tiếp)
4).Tìm kiếm với BETWEEN
Cú pháp:
SELECT
FROM
WHERE BETWEEN AND
Tìm kiếm thông tin(tiếp)
Ví dụ 4 : Đưa ra thông tin của các nhân viên có lương từ 200.000 đến 700.000
Select *
From NHANVIEN
Where LUONG Between 200.000 and 700.000
Tìm kiếm thông tin(tiếp)
5).Tìm kiếm với IN
Cú pháp:
SELECT
FROM
WHERE IN (,…, )
Ví dụ 5: Đưa ra thông tin về các nhân viên có mã phòng là “PTV”, “PDT”, “PKH”
Select *
From NHANVIEN
Where MAPHONG in (“PTV”, “PHC”, “PDT”)
Tìm kiếm thông tin(tiếp)
6).Tìm kiếm với LIKE
Cú pháp:
SELECT
FROM
WHERE LIKE
Trong đó:
phải có kiểu xâu
thường chứa kí hiệu % dùng để thay cho 1 xâu con; kí hiệu _ dùng để thay cho 1 kí tự.
Tìm kiếm thông tin(tiếp)
Ví dụ 6: Tìm những nhân viên có họ “Nguyễn”
Select *
From NHANVIEN
Where HOTEN Like “Nguyễn%”
Tìm kiếm thông tin (tiếp)
7). Sử dụng phép toán số học
Ta có thể sử dụng các biểu thức số học trong mệnh đề SELECT hoặc WHERE của câu lệnh SQL.
Các phép toán số học là +, -, *, /
Ví dụ 7: Cho biết Họ tên và lương mới của các nhân viên nữ nếu lương của họ được tăng thêm 10%
Select HOTEN, LUONG+ LUONG*0.1
From NHANVIEN
Where GTINH=False
Tìm kiếm thông tin (tiếp)
Ví dụ 8: Đưa ra thông tin của các nhân viên mà nếu lương của họ được tăng 10% thì >2.000.000
Select *
From NHANVIEN
Where LUONG+0.1*LUONG>2.000.000
Tìm kiếm thông tin (tiếp)
8). Các hàm trong SQL:
COUNT: đếm số các giá trị trong cột
SUM: tính tổng các giá trị trong cột (số)
AVG: tính trung bình cộng các giá trị trong cột (số)
MIN: tìm giá trị nhỏ nhất
MAX: tìm giá trị lớn nhất
Tìm kiếm thông tin (tiếp)
Ví dụ 9: Cho biết số người của phòng có mã phòng là “PDT”
Select COUNT (MANV)
From NHANVIEN
Where MAPHONG=“PDT”
Ví dụ 10: Cho biết mức lương cao nhất của các nhân viên
Select MAX (LUONG)
From NHANVIEN
Tìm kiếm thông tin (tiếp)
9). Sử dụng mệnh đề GROUP BY và HAVING
SQL sử dụng mệnh đề GROUP BY để tìm kiếm theo nhóm các bản ghi có cùng giá trị . Kết quả tìm kiếm là danh sách các bản ghi được liệt kê theo nhóm, hết nhóm này đến nhóm khác
Mệnh đề HAVING luôn đi sau GROUP BY và miền tác động của nó là từng nhóm của GROUP BY chứ không phải là toàn bảng.
Tìm kiếm thông tin (tiếp)
SELECT
FROM
WHERE
GROUP BY
HAVING
Tìm kiếm thông tin (tiếp)
Ví dụ 11: Cho biết số người của từng phòng co luong>1.000.000
SElect MAPHONG, COUNT (MANV)
From NHANVIEN
Where LUONG>1.000.000
Group by MAPHONG
Ví dụ 12: Cho biết lương cao nhất trong từng phòng và tổng lương của từng phòng
Select MAPHONG,MAX(LUONG) AS LUONGMAX , SUM(LUONG) AS tong_luong
From NHANVIEN
Group by MAPHONG
Tìm kiếm thông tin (tiếp)
Ví dụ 13 : Đưa ra mã phòng và tổng lương của các phòng có tổng lương >4.000.000
Select MAPHONG, sum(LUONG)
From NHANVIEN
Group by MAPHONG
Having SUM (LUONG)>4.000.000
Tìm kiếm thông tin (tiếp)
Ví dụ 13’ : Đưa ra mã phòng của các phòng có tổng lương của các nhân viên nữ >4.000.000
Select MAPHONG
From NHANVIEN
Where GTINH=False
Group by MAPHONG
Having SUM (LUONG)>4.000.000
Tìm kiếm thông tin (tiếp)
10). Kết nối các bảng:
- Trong trường hợp câu hỏi liên quan đến nhiều bảng, ta phải kết nối các bảng với nhau.
- Khi sử dụng nhiều bảng với những thuộc tính chung, ta phải xác định rõ thuộc tính đó ở bảng nào bằng cách viết: .
- Cú pháp:
SELECT
FROM ,
WHERE .=.
Tìm kiếm thông tin (tiếp)
Ví dụ 14: Cho biết mã nhân viên, họ tên, lương của các nhân viên phòng DAOTAO
Select MANV, HOTEN, LUONG
From NHANVIEN, PHONG
Where NHANVIEN.MAPHONG=PHONG.MAPHONG And TENPHONG=“DAOTAO”
Ví dụ 15: Cho biết mã nhân viên, họ tên của các nhân viên phòng DAOTAO và có trình độ ngoại ngữ C
Select NHANVIEN.MANV, HOTEN
From NHANVIEN, PHONG, TDNN
Where NHANVIEN.MAPHONG=PHONG.MAPHONG
And NHANVIEN.MANV=TDNN.MANV
And TENPHONG=“DAOTAO”
And TDO=“C”
Cho biết thông tin về phòng của nhân viên có mã nhân viên là “SP005”
Select PHONG.*
From NHANVIEN, PHONG
Where NHANVIEN.MAPHONG=PHONG.MAPHONG and MANV=“SP005”
Tìm kiếm thông tin (tiếp)
11).Truy vấn lồng nhau:
Trong nhiều bài toán, kết quả của 1 câu tìm kiếm lại được tham gia vào 1 câu tìm kiếm khác. Khi đó ta phải dùng cấu trúc truy vấn lồng nhau, tức là nhiều cấu trúc SELECT...FROM...WHERE lồng nhau.
Ví dụ 16: Đưa ra danh sách nhân viên phòng TAIVU
Select *
From NHANVIEN
Where MAPHONG = ( Select MAPHONG
From PHONG
Where TENPHONG=“TAIVU”)
Select *
From NHANVIEN, PHONG
Where NHANVIEN.MAPHONG=PHONG.MAPHONG and TENPHONG=“TAIVU”
Tìm kiếm thông tin (tiếp)
Ví dụ 17: Đưa ra thông tin về người có lương cao nhất
Select *
From NHANVIEN
Where LUONG= ( Select MAX(LUONG)
From NHANVIEN)
Tìm kiếm thông tin (tiếp)
8). Các lượng từ:
Lượng từ Tồn tại-EXISTS:
Cấu trúc: EXISTS trả về giá trị đúng nếu tập hợp này khác rỗng
Ví dụ 18: Cho biết thông tin về những nhân viên biết ngoại ngữ
Select *
From NHANVIEN
Where Exists (Select *
From TDNN, NHANVIEN
Where NHANVIEN.MANV=TDNN.MANV)
Tìm kiếm thông tin (tiếp)
Lượng từ Với mọi-ALL:
ALL
Ví dụ 19: Cho biết những nhân viên có lương cao hơn lương của mọi nhân viên phòng PTV
Select *
From NHANVIEN
Where LUONG> ALL ( Select LUONG
From NHANVIEN
Where MAPHONG=‘PTV’)
Bài tập
Đưa ra danh sách các phòng
Đưa ra MANV, HOTEN, LUONG của những nhân viên sinh trước năm 1975
Đưa ra tổng lương của phòng KHOAHOC
Đưa ra danh sách nhân viên có lương thấp nhất
Đưa ra tên của phòng có số nhân viên lớn hơn 4
Đưa ra hoten, luong, tenphong của nhân viên có mã nhân viên “SP009”
Đưa ra Mã phòng của phòng có lương trung bình>2.000.000
Đưa ra thông tin về các nhân viên có mã nhân viên là “SP002”, “SP004”, “SP007”
Tính phụ cấp cho các nhân viên sinh trước năm 1970 theo công thức phụ cấp= 15% lương.
1. Đưa ra thông tin về các phòng
Select *
From PHONG
2. Đưa ra MANV, HOTEN, LUONG của những nhân viên sinh trước năm 1975
Select MANV, HOTEN, LUONG
From NHANVIEN
Where NGAYSINH <#01/01/1975#
3. Đưa ra tổng lương của phòng KHOAHOC
Select SUM(LUONG)
From NHANVIEN, PHONG
Where NHANVIEN.MAPHONG=PHONG.MAPHONG and TENPHONG=“KHOAHOC”
Select sum (LUONG)
From NHANVIEN
Where MAPHONG=
(Select MAPHONG
From PHONG
Where TENPHONG=“KHOAHOC”)
4. Đưa ra danh sách nhân viên có lương thấp nhất
Select *
From NHANVIEN
Where LUONG= (Select MIN(LUONG)
From NHANVIEN)
5. Đưa ra tên của phòng có số nhân viên lớn hơn 10
Select TENPHONG
From PHONG
Where MAPHONG =(Select MAPHONG
From NHANVIEN
Group by MAPHONG
Having COUNT(MANV)>10)
6. Đưa ra MANV, hoten, luong, tenphong của nhân viên có mã nhân viên “SP009”
Select MANV, HOTEN, LUONG, TENPHONG
From NHANVIEN, PHONG
Where NHANVIEN.MAPHONG=PHONG.MAPHONG and MANV=“SP009”
7. Đưa ra thông tin về phòng có lương trung bình>2.000.000
Select *
From PHONG
Where MAPHONG in ( Select MAPHONG
From NHANVIEN
Group by MAPHONG
Having AVG(LUONG)>2.000.000)
8. Đưa ra thông tin về các nhân viên có mã nhân viên là “SP002”, “SP004”, “SP007”
Select *
From NHANVIEN
Where MANV in (“SP002”,”SP004”, “SP007”)
9. Tính phụ cấp cho các nhân viên sinh trước năm 1950 theo công thức phụ cấp= 15% lương.
Select 0.15*LUONG as PHUCAP
From NHANVIEN
Where NGAYSINH <#01/01/1950#
Chương 3:
HỆ QUẢN TRỊ CSDL ACCESS
Giới thiệu
I. Hệ quản trị CSDL Access
1. Một số khái niệm.
Một trường (field) là một mục dữ liệu của đối tượng cần quản lí, ví dụ như họ tên, ngày sinh, ...Trường được biểu diễn bằng cột trong bảng.
Một bản ghi (record) là một bộ dữ liệu chứa thông tin về một đối tượng cụ thể. Bản ghi được biểu diễn là một hàng trong bảng.
Một Bảng (table) là tập hợp các bản ghi- nơi các thông tin được sắp xếp theo hàng và theo cột. Bảng là một thành phần căn bản nhất của một cơ sở dữ liệu.
Một CSDL (Database) là tập hợp bao gồm 1 hay nhiều bảng. Có thể xem là một tập các thông tin liên quan đến chủ để hay mục đích nhất định. Chẳng hạn CSDL về tuyển sinh, CSDL về quản lí nhân khẩu, CSDL quản lí vật tư,….
Hệ quản trị CSDL Access (tiếp)
2. Chế độ làm việc của Access
Chế độ sử dụng công cụ có sẵn: Giúp cho người sử dụng không chuyên có thể xây dựng chương trình quản lý.
Chế độ lập trình: Dùng ngôn ngữ VBA (Visual Basic for Application), người sử dụng chuyên nghiệp có thể phát triển ứng dụng, kiểm soát chặt chẽ dữ liệu, phân quyền truy nhập.
Hệ quản trị CSDL Access (tiếp)
3. Ngôn ngữ định nghĩa và thao tác dữ liệu
Ngôn ngữ QBE (Query By Example)
Ngôn ngữ SQL (Structured Query Language)
II. Giao diện và hệ thống menu chính của Access.
III. Các thành phần của CSDL Access
Bảng (tables): Là thành phần căn bản nhất của CSDL. Bảng là nơi trực tiếp chứa dữ liệu.
Truy vấn (Queries): Thực hiện chức năng tìm kiếm, Tạo nguồn dữ liệu cho các biểu mẫu (Form), các báo cáo (Report), …
Biểu mẫu (Form): Hiển thị dữ liệu có trong các bảng hay truy vấn và cho phép bổ sung các dữ liệu mới, đồng thời hiệu chỉnh hay xóa dữ liệu hiện có.
Báo cáo (Report): In dữ liệu từ các bảng hoặc các truy vấn.
Các thành phần của CSDL Access(tiếp)
Macro: là một hình thức lập trình đơn giản. Nó được dùng để gắn kết các đối tượng chính trong chương trình như liên hệ giữa các form, tạo menu.
Module: Là chương trình viết bằng VBA.
Trang Web (2000): Chứa các trang web xây dựng từ các đối tượng của CSDL.
IV. Công cụ Wizard và Builder
1. Wizard
Wizard: cung cấp các dịch vụ đơn giản hóa việc tạo các đối tượng cơ sở dữ liệu mới. Wizard dẫn ta qua một loạt các bước để xác định các đặc tính đối tượng mà ta muốn tạo ra.
Wizard có thể sử dụng ở nhiều nơi khác nhau:
+ Tạo lập toàn bộ một CSDL (Database Wizard).
+ Trên Bảng, Truy vấn, Form, Report.
+ Trên các điều khiển.
+ …
Công cụ Wizard và Builder (tiếp)
2. Expresion Builder
Là công cụ thuận tiện nhất để tạo các biểu thức, đặc biệt là các biểu thức có chứa các điều khiển liên quan tới biểu mẫu hoặc báo cáo.
B . Cơ sở dữ liệu
I. Tạo cơ sở dữ liệu-Database
B1: Trên menu File, chọn New, xuất hiện thanh tác vụ New File
B2: Kích chọn Blank Database,
xuất hiện hộp thoại File New Database
Tạo cơ sở dữ liệu-Database (tiếp)
B3: Đặt tên cho Database vào mục File name
B4: Kích chọn Creat
II. Làm việc với cơ sở dữ liệu đã có
1. Nếu thanh tác vụ đã được mở:
B1: Kích chọn tên CSDL cần mở trong mục Open a file hoặc kích vào More file… , trên màn hình xuất hiện hộp thoại Open
B2: Chọn tên CSDL cần mở trong danh sách hoặc gõ tên CSDL cần mở vào ô File name.
B3: Kích Open
Làm việc với cơ sở dữ liệu đã có (tiếp)
2. Nếu thanh tác vụ chưa mở:
B1: Trên menu File, kích Open , xuất hiện hộp thoại Open
B2: Chọn tên CSDL cần mở (Giống như ở mục 1.)
C. Bảng dữ liệu
I. Một số thuật ngữ
1. Bảng (Table):
- Bảng là cấu trúc cơ bản nhất của CSDL quan hệ.
- Mỗi bảng trong một CSDL phải chứa những thông tin thích hợp cho một đối tượng.
- Mỗi dòng trong bảng (hay còn gọi là bản ghi- record) tượng trưng cho đối tượng được lưu trữ trong bảng. Ví dụ mỗi dòng trong bảng HOCSINH biểu thị cho một học sinh.
- Mỗi cột trong bảng (hay còn gọi là trường-field) chứa một mục dữ liệu cần quản lí về đối tượng. Ví dụ mỗi học sinh có các mục dữ liệu càn lưu trữ là: Số báo danh, Họ tên,…
Một số thuật ngữ (tiếp)
2. Tên trường (Field name): được dùng để mô tả mục dữ liệu cần lưu trữ. Mỗi bảng không thể có hai tên cột trùng nhau
3. Kiểu dữ liệu (Data type): kiểu được dùng để gán cho dữ liệu chứa trong cột
4. Thuộc tính trường (Field Property): là tập hợp các đặc điểm được kết hợp vào mỗi trường. Ví dụ: SBD là xâu 3 kí tự, HOCBONG co giá trị > 200.000,…
5. Thuộc tính bảng (Table Property): là tập hợp các đặc điểm liên quan đến nhiều trường được kết hợp vào bảng. Ví dụ: LUONG/2>=PHUCAP
Một số thuật ngữ (tiếp)
6. Khoá chính (Primary key): Một hoặc nhiều trường dùng để nhận dạng duy nhất từng dòng trong bảng dữ liệu gọi là khoá chính.
Mỗi bảng có một khoá chính. Dữ liệu trong khoá chính phải là duy nhất cho mỗi bản ghi.
Khoá chính còn được dùng để tạo các liên kết giữa các bảng trong một CSDL.
7. Khóa kết nối: Trong 1 CSDL thường có nhiều bảng, các bảng này có mối liên kết với nhau. Để xác định mối liên kết này, ta dùng khóa kết nối.
Thông thường khóa kết nối của 2 bảng là cột có cùng tên nằm ở 2 bảng đó.
II. Qui ước tên trường
Tên trường dài tối đa 64 ký tự và có thể chứa các kí tự chữ cái, chữ số, khoảng trắng và các kí tự đặc biệt khác.
Tên trường không được phép chứa dấu chấm (.), chấm than (!), dấu huyền (`), dấu móc vuông ([])
Tên trường không được bắt đầu bằng khoảng trắng
Tên trường không phân biệt chữ hoa, chữ thường.
Ví dụ: Số báo danh, Họ tên, Toan, Ly,…
III. Các loại dữ liệu
1). Text: các từ hoặc số không được sử dụng trong các phép tính. Chiều dài tối đa cho kiểu text là 255 kí tự
2). Memo: một trường mở sử dụng cho các lời ghi chú
3). Number: Các số âm hoặc dương
4). Date/Time: Ngày tháng, thời gian
5). Currency: tiền tệ
6). AutoNumber: một trường số được tự động nhập vào
7). Yes/No: logic
8). OLE Object: một đối tượng như ảnh,...
9). Hyperlink: các địa chỉ Web
IV. Tạo bảng
1. Bước 1: Mở cửa sổ thiết kế bảng (Table Design)
Cách 1: Từ cửa sổ Database, trong mục Object chọn Tables/ Create table in Design view/Design
Tạo bảng (tiếp)
Cách 2: Từ cửa sổ Database, trong mục Object, chọn Tables/ kích biểu tượng New, cửa sổ New Table xuất hiện
Tạo bảng (tiếp)
Chọn Design view/OK
Kết thúc bước 1, ta có cửa số thiết kế bảng(Table Design)
Tạo bảng (tiếp)
2. Bước 2: Thiết kế các trường (cột ) của bảng
Trong cửa sổ như trong hình trên, chúng ta lần lượt thực hiện các công việc sau:
Nhập tên trường trong mục Field name:
Đặt trỏ chuột vào dòng bất kì của cột Field name
Gõ tên trường
Chọn kiểu dữ liệu của trường trong mục Data Type
Kích vào dấu mũi tên xuống, xuất hiện danh sách kiểu dữ liệu
Kích chọn kiểu cần dùng
Ghi mô tả của trường trong mục Description (không bắt buộc)
Tạo bảng (tiếp)
Nhập các thuộc tính của trường trong phần General và phần Lookup (trình bày ở phần sau)
Nhập thuộc tính của bảng trong phần Table Properties (trình bày trong phần sau)
Xác định khoá chính:
Đánh dấu các trường trong khoá chính
Kích hoạt biểu tượng chìa khóa hoặc chọn menu Edit/Primary key, khi đó xuất hiện biểu tượng chìa khoá ở phía trước của trường được chọn làm khoá chính.
Tạo bảng (tiếp)
3. Bước 3: Ghi lại cấu trúc bảng vừa tạo
Chọn biểu tượng đĩa mềm trên thanh công cụ. Hộp thoại Save As xuất hiện
Nhập tên bảng trong phần Table Name/OK
V. Thuộc tính trường (Field Properties)
1. Field size: số kí tự tối đa để lưu trữ dữ liệu trong trường.
2. Format: khuôn dạng của dữ liệu khi hiển thị
3. Decimal Places: dùng cho các trường Number và Currency để xác định số chữ số được hiển thị và số chữ số sau dấu thập phân
4. Input mask: Khuôn dạng của dữ liệu nhập. Đó là xâu kí tự chứa những kí tự sau:
0: Các chữ số. Bắt buộc nhập
9: các chữ số hoặc dấu cách. Không bắt buộc nhập
#: các chữ số, dấu +, - hoặc dấu cách. Không bắt buộc nhập
L: Chữ cái. Bắt buộc nhập
Thuộc tính trường (tiếp)
?: chữ cái. Không bắt buộc nhập
A: Chữ cái hoặc chữ số. Bắt buộc nhập
a: chữ cái hoặc chữ số. Không bắt buộc nhập
&: Ký tự bất kì hoặc khoảng trống. Bắt buộc nhập
.,:-/: các dấu phân cách dùng cho kiểu số và ngày giờ
5. Caption:Chú thích
6. Default Value: xác định 1 giá trị cho các mục nhập mới. Ta sẽ nhập giá trị thường được nhập nhất cho các trường
Thuộc tính trường (tiếp)
7. Validation Rule : qui định ràng buộc về dữ liệu nhập vào. Điều kiện ràng buộc có thể dùng:
Các hằng: phải dùng các dấu phân cách: cặp”” cho kiểu xâu, cặp ## cho ngày giờ
Các phép so sánh: =,>,<,>=,<=,<>
Các phép toán logic: NOT, AND, OR,...
Các toán tử đặc biệt: Between, In, Like,...
8. Validation Text: Thông báo khi dữ liệu nhập vào không thỏa mãn ràng buộc
Thuộc tính trường (tiếp)
9. Lookup: Khi muốn ràng buộc để dữ liệu của trường này chỉ nhận các giá trị của một trường nào đó trong 1 bảng khác, ta khai báo trong Lookup.
Trong trang Lookup cần khai báo các thông số sau:
Display Control: Chọn Listbox hoặc Combobox
Row Source Type: Kiểu nguồn dữ liệu
Row Source: Nguồn dữ liệu, tên bảng truy vấn
Bound Column: Số thứ tự của cột được tham chiếu đến(cột cho giá trị trong bảng gốc)
Column Count: Tổng số cột hiển thị trong hộp
Column width: Độ rộng cột
VI. Thuộc tính bảng (Table Properties)
Khi các ràng buộc dữ liệu liên quan đến nhiều trường trong bảng, ta phải xác định tại Table Properties.
Từ cửa sổ Table Design, kích phải chuột, chọn Properties
Xuất hiện cửa sổ Table Properties cho phép đặt ràng buộc (tương tự như Fields Properties)
VII. Các thao tác trên bảng
Chỉnh sửa bảng:
Mở bảng cần chỉnh sửa trong Design View
Chọn bảng và kích nút Design
Chèn trường:
Chọn hàng bên dưới vị trí ta muốn chèn
Kích Insert Rows
Xóa trường
Chọn trường cần xóa
Kích Delete Rows (không xóa trường khóa)
Các thao tác trên bảng(tiếp)
Đổi tên trường:
Chọn tên trường cần đổi
Nhập tên mới cho trường
Thay đổi kiểu dữ liệu:
Kích vào cột DataType của trường cần đổi
Kích mũi tên xổ xuống
Chọn kiểu
Lưu bảng
Các thao tác trên bảng(tiếp)
Di chuyển trường:
Kích chọn trường cần di chuyển
Rê kéo đến vị trí mới rồi nhả chuột
Chỉnh kích cỡ hàng
Vào menu Format/Row Height, xuất hiện hộp thoại Row Height
Nhập độ cao mới cho hàng vào hộp Row height
Các hàng đồng loạt được thay đổi độ cao
Các thao tác trên bảng (tiếp)
Dấu cột:
Ta có thể tạm dấu những cột không muốn xem bằng cách
Kích chọn cột muốn dấu
Vào menu Format/Hide Columns
Hiện cột:
Vào menu Format/Unhide Columns
Kích bỏ chọn vào những trường không muốn ẩn
Close
Các thao tác trên bảng(tiếp)
Xóa bản ghi:
Kích chọn bản ghi cần xóa
Kích nút Delete Record hoặc nhấn phím Delete
Kích chọn Yes
Thay đổi độ rộng cột
Kích chọn cột cần thay đổi
Vào menu Format/Column Width, xuất hiện hộp thoại Column Width
Nhập độ rộng mới cho cột
VIII. Nhập, sửa dữ liệu
Nhập dữ liệu sử dụng Edit Mode:
Mở bảng trong Datasheet View
Nhập dữ liệu
Sửa đổi dữ liệu:
Mở bảng trong Datasheet View
Làm các thao tác sửa đổi
Nhập, sửa dữ liệu (tiếp)
Chỉnh sửa toàn bộ nội dung của một trường:
Đặt trỏ chuột tại cạnh trái trường, con trỏ biến thành dấu cộng
Kích lên trường, toàn bộ trường được chọn
Nhập thông tin mới
Chỉnh sửa một phần nội dung trường:
Kích trên trường ta muốn chỉnh sửa, dấu nhắc sẽ xuất hiện trong trường
Thay thế phần dữ liệu cần sửa bằng thông tin mới
IX. Tìm kiếm và thay thế
Tìm kiếm
Kích trên trường cần tìm kiếm
Kích nút Edit/ Find. hộp thoại Find and Replace xuất hiện
Nhập dữ liệu cần tìm vào ô Find What
Kích nút Find next để tìm tiếp. Nếu không còn bản ghi nào thỏa mãn nữa thì Access sẽ Đưa ra thông báo
Tìm kiếm và thay thế (tiếp)
Thay thế dữ liệu:
Kích vào trường ta muốn thay thế dữ liệu
Kích menu Edit/Replace, hộp thoại Find and Replace xuất hiện
Nhập dữ liệu sẽ được thay thế trong hộp Find What
Nhập dữ liệu thay thế trong hộp Replace with
Chọn kiểu duyệt trên toàn bảng hay chỉ trong cột ban đầu trong hộp Look in
Chọn kiểu duyệt lên xuống hoặc toàn bộ trong khung Search
Kích vào hộp Match Case để chỉ định chỉ những dữ liệu nào chính xác với điều kiện duyệt
Kích vào Search Fields As Formatted để chỉ định chỉ những phần nào chính xác với kiểu định dạng của điều kiện duyệt
Kích nút Replace All để thay thế tất cả các dữ liệu tìm được
X. Sắp xếp dữ liệu
Sắp xếp dữ liệu
Một cách mặc định, các bản ghi được sắp xếp theo thứ tự khi nhập vào. ta có thể sắp xếp lại :
Kích chọn trường cần sắp xếp
Kích nút Record/ Sort Ascending để sắp tăng dần hoặc Sort Descending để sắp xếp giàm dần
Hủy bỏ việc sắp xếp:
Vào menu Record/Remove Filter/Sort. Thứ tự sắp xếp mặc định cũ sẽ được lưu lại
XI. Lọc dữ liệu
Lọc bằng sự lựa chọn-Filter by Selection:
Kích lên trường cần lọc
Kích lên nút Record/Filter by Selection. Sau khi lọc, chỉ những bản ghi đã lọc mới được hiển thị.
Để xóa lọc, kích nút Record/Remove Filter. Nút này sẽ trở thành Apply Filter
Lọc dữ liệu(tiếp)
Lọc bằng Form-Filter by Form: Lọc dữ liệu bằng Form cho phép lọc dựa trên nhiều hơn 1 điều kiện:
Kích nút Record/Filter by Form.
Kích lên trường ta muốn lọc
Chọn điều kiện lọc
Kích chọn AND hoặc OR nếu cần sử dụng
Kích nút Record/Apply Filter. Kết quả lọc sẽ xuất hiện trong bảng
Đóng và lưu bảng
XII. Tạo quan hệ giữa các bảng
Đưa bảng vào cửa sổ Relationship:
Trên thanh công cụ của cửa sổ Access, kích Tools/Relationship, xuất hiện hộp thoại Show Table
Kích chọn tên các bảng cần thiết lập quan hệ, kích Add
Kích Close để đóng hộp thoại
Tạo quan hệ:
Kích chọn trường muốn tạo kết nối trong bảng 1(Bảng ở đầu 1) rồi rê thả sang trường tương ứng trong bảng 2 (bảng ở đầu nhiều). Hộp thoại Edit Relationship xuất hiện
Kích Creat
Xuất hiện đường liên kết nối 2 bảng
Tạo quan hệ giữa các bảng(tiếp)
Loại bỏ quan hệ:
Kích chọn đường liên kết
Nhấn phím Delete, xuất hiện hộp thoại Delete
Kích chọn Yes
Các ý kiến mới nhất (VỀ TRANG CỦA ĐẶNG TUẤN)