Professional Documents
Culture Documents
CƠ SỞ DỮ LIỆU
Chương 2
MÔ HÌNH DỮ LIỆU
K H OA CÔ N G N GH Ệ T HÔ N G T I N
Nội dung
2
Mô hình cà i đặ t
Mô hình quan hệ (Relational Data Model)
KETQUA MỨC 3
Mô hình phân cấp (Hierarchical data model)
9
Ưu điểm
Dễ xây dự ng và thao tá c
Tương thích vớ i cá c lĩnh vự c tổ chứ c phâ n cấ p (vd: tổ chứ c nhâ n
sự trong cá c đơn vị, ...)
Ngô n ngữ thao tá c đơn giả n (duyệt cây)
Nhượ c điểm
Sự lặ p lạ i củ a cá c kiểu bả n ghi → dư thừ a dữ liệu và dữ liệu khô ng
nhấ t quá n
Hạ n chế trong biểu diễn ngữ nghĩa củ a cá c mó c nố i giữ a cá c bả n
ghi (chỉ cho phép quan hệ 1-n)
Mô hình dữ liệu mạng
(Network data model)
10
Biểu diễn: bằ ng đồ thị có hướ ng
Cá c khá i niệm cơ bả n
Tậ p bả n ghi (record)
Kiểu bả n ghi (record type)
Cá c trườ ng (field)
Mó c nố i (link)
Tên củ a mó c nố i
chủ (owner) – thà nh viên (member): theo hướ ng củ a mó c nố i
Kiểu mó c nố i: 1-1, 1-n, đệ quy
Cá c phép toá n
Duyệt: FIND, FIND member, FIND owner, FIND NEXT
Thủ tụ c: GET
Mô hình dữ liệu mạng
(Network data model)
11
SINHVIEN MONHOC
MONHOC_SAU
SINHVIEN_DIEM
LOPHOC
MONHOC_TRUOC DIEUKIEN
LOPHOC_DIEM
KETQUA
Mô hình dữ liệu mạng
(Network data model)
12
Ưu điểm
Đơn giả n
Có thể biểu diễn cá c ngữ nghĩa đa dạ ng vớ i kiểu bả n ghi và kiểu
mó c nố i
Truy vấ n thô ng qua phép duyệt đồ thị (navigation)
Nhượ c điểm
Số lượ ng cá c con trỏ lớ n
Hạ n chế trong biểu diễn ngữ nghĩa củ a cá c mó c nố i giữ a cá c bả n
ghi
1.4. Lược đồ CSDL
13
Lược đồ CSDL (Database Schema): Là các mô tả về cấu trúc
và ràng buộc trên CSDL
1.4. Lược đồ CSDL
14
Thể hiện CSDL (Database Instance)
Là dữ liệu được lưu trong CSDL tại một thời điểm xác định
Đây là trạng thái của CSDL
Lược đồ CSDL rất ít thay đổi, còn thể hiện CSDL thay đổi khi CSDL được
cập nhật
2. Quá trình thiết kế và cài đặt CSDL
15
cụ thể hoc
(0,n)
HPhan
(0,n) Nam
mo
Gvien
mhoctruoc
MaSV (1,n) MaMH (1,n)
Ten TenMH
Lop Svien Khoa MHoc
Nganh Tinchi
(0,n)
dieukien
(0,n)
mhocsau
4: CÀ I ĐẶ T
3: THIẾ T KẾ
Mứ c logic
Mô hình dữ liệu vậ t lý
Tin họ c hoá quả n lý
16
2. Quá trình thiết kế và cài đặt CSDL
Thế giớ i 17
thự c
Cá c yêu cầ u về dữ liệu
Phâ n tích chứ c nă ng
Phâ n tích quan niệm
Cá c đặ c tả chứ c nă ng
Lượ c đồ quan niệm
Độ c lậ p HQT
Thiết kế mứ c logic
Phụ thuộ c
Lượ c đồ logic Thiết kế HQT cụ thể
chương trình ứ ng dụ ng
Thiết kế mứ c vậ t lý
Đặ c điểm:
Diễn tả cá c đố i tượ ng trong thự c tế
Có tên gọ i riêng
Có danh sá ch thuộ c tính mô tả đặ c trưng củ a thự c thể
Có khó a thự c thể
Ví dụ : Ứ ng dụ ng quả n lý sinh viên
1 SV 1 thự c thể
1 lớ p 1 thự c thể
Ví dụ “Quả n lý đề á n cô ng ty”
Mộ t nhâ n viên là mộ t thự c thể
Tậ p hợ p cá c nhâ n viên là tậ p thự c thể
Mộ t đề á n là mộ t thự c thể
Tậ p hợ p cá c đề á n là tậ p thự c thể
Tên
3.2. Thuộc tính
23
Điện
Địa chỉ
thoạ i
Thuộ c tính suy diễn: giá trị đượ c tính toá n từ thuộ c tính khá c. Vd:
tuổ i
Tuổ i
3.3. Thuộc tính khóa
24
Khóa chính
Cá c thự c thể trong tậ p thự c thể cầ n phâ n biệt
Ví dụ:
3.4. Mối kết hợp
26
Kí hiệu:
R
Đặ c điểm:
Diễn tả mố i liên kết giữ a ít nhấ t 2 thự c thể khá c nhau
Quan hệ giữ a 2 thự c thể kết hợ p nhị phâ n
Quan hệ nhiều thự c thể kết hợ p đa phâ n
Có tên gọ i riêng
Số ngô i thuộ c mố i kết hợ p: 2 ngô i / n ngô i
Có thuộ c tính riêng củ a mố i kết hợ p
3.4. Mối kết hợp
27
Ví dụ :
1 NV (là m việc) ở 1 phò ng ban nà o đó
1 phò ng ban có 1 NV (là trưở ng phò ng)
3.5. Bản số các mối kết hợp
28
Phân loại:
Mộ t – mộ t (1 – 1)
Mộ t – nhiều (1 – n) hay Nhiều – mộ t (n – 1)
Nhiều – nhiều (n – n)
Mối kết hợp 1 – 1
30
(0,1) (1,1)
Sinh viên Có Tà i khoả n
1 1
Độc giả Sách
1 1
Trưởng phòng Phòng
Lãnh
Trưởng phòng đạo Phòng
0,1 0,1
31
Mối kết hợp 1 – n
32
(1,1) (0,n)
Sinh viên Thuộ c về Khoa
1 n
Khách hàng Hoá đơn
1 n
Phòng Nhân viên
33
Mối kết hợp n – n
34
A R B
X,n Y,n
VD: Mộ t sinh viên có thể họ c (0,n) mô n họ c. Mộ t mô n họ c có
thể đượ c họ c bở i (0,n) sinh viên.
(0,n) (0,n)
Sinh viên Họ c Mô n họ c
Mối kết hợp vòng
35
A R
VD:
La nguoi quan ly
NhanVien 0,n
QuanLy
NGAYHD
TONGTIEN
HOA_DON
(1,n)
HD_CT
(1,1)
SL_HH
CHI_TIET
SOTIEN
(1,1)
HH_CT
(1,n) TENHH
HANG_HOA DGIA
MAHH
37
3.7. Lược đồ ER
38
Là đồ thị biể u diễn cá c tậ p thự c thể, thuộ c tính và mố i quan hệ
Đỉnh
Cạ nh là đườ ng nố i giữ a:
Thự c thể - thuộ c tính
Mố i quan hệ - thuộ c tính
Thự c thể - mố i quan hệ
3.7. Lược đồ ER
39
Relationship
(mối quan hệ) Attribute (Thuộc tính)
a) Quan hệ (Relation)
b) Thuộ c tính (Attribute)
c) Lượ c đồ (Schema)
d) Bộ (Tuple)
e) Miề n giá trị (Domain)
4.1. Các khái niệm của mô hình quan hệ
52
a) Quan hệ:
Quan hệ r gồ m:
Tên
Tậ p hợ p cá c cộ t
Cố định
Đượ c đặ t tên
Có kiểu dữ liệu
Tậ p hợ p cá c dò ng
Thay đổ i theo thờ i gian
Sự thay đổ i phụ thuộ c và o ngườ i sử dụ ng
Mỗ i dò ng ~ Mộ t thự c thể (đố i tượ ng ở thế giớ i thự c)
Quan hệ ~ Tậ p cá c thự c thể
4.1. Các khái niệm của mô hình quan hệ
54
b) Thuộc tính:
Tên cá c cộ t củ a quan hệ
Mô tả ý nghĩa cho cá c giá trị tạ i cộ t đó
Thuộc tính
c) Lược đồ quan hệ
Tên củ a quan hệ
Tên củ a tậ p thuộ c tính
Lược đồ quan hệ
Là tập hợp
4.1. Các khái niệm của mô hình quan hệ
56
Lược đồ CSDL
d) Bộ (Tuple)
Là cá c dò ng củ a quan hệ (trừ dò ng tiêu đề - tên củ a cá c thuộ c tính)
Dữ liệu cụ thể
của thuộc tính
4.1. Các khái niệm của mô hình quan hệ
58
NHANVIEN(MANV:integer,TENNV:string,HONV:string,NGSINH:dat
e, DCHI:string, GT:string, LUONG:integer, DONVI:integer)
Lượ c đồ quan hệ NHANVIEN
Bậ c củ a lượ c đồ là bậc 8
MANV là mộ t thuộ c tính có miền giá trị là số nguyên
TENNV là mộ t thuộ c tính có miền giá trị là chuỗ i ký tự
4.2. Định nghĩa theo toán học: Quan hệ
64
vi
4.2. Định nghĩa theo toán học: Quan hệ
65
Định nghĩa
Gọ i K là mộ t tậ p con khá c rỗ ng cá c thuộ c tính củ a R
K là khó a củ a R nếu thỏ a đồ ng thờ i 2 điề u kiện
K là mộ t siêu khó a củ a R
K’ K
, K’ K , K’ không phải là siêu khóa của R
Nhận xét
Khó a là siêu khó a nhỏ nhấ t (ít thuộ c tính nhấ t).
Giá trị củ a khó a dù ng để phâ n biệt cá c bộ trong quan hệ.
Khó a là thà nh phầ n củ a lượ c đồ quan hệ, khô ng phụ thuộ c và o quan
hệ r.
Khó a có thể có nhiều thuộ c tính
Lượ c đồ quan hệ có thể có nhiều khó a, gọ i là khó a ứ ng viên.
c) Khóa chính
69
Xét quan hệ
NHANVIEN(MANV, TENNV, HONV, NS, DCHI, GT, LUONG, PHG)
Có 2 khó a
MANV
HONV, TENNV, NS
Khi cà i đặ t quan hệ thà nh bả ng (table)
Chọ n 1 khó a là m cơ sở để nhậ n biết cá c bộ
Khó a có ít thuộ c tính hơn
Khó a đượ c chọ n gọ i là khó a chính: (PK - primary key)
Xét quan hệ r:
Khó a
Khó a Chính
Siêu khó a 1
TENPHG MAPHG
Nghien cuu 5
S
Dieu hanh 4
Quan ly 1
Quan hệ bị
Khóa chính
tham chiếu
e) Khóa ngoại
74
MANV
NS LUONG DCHI TENPHG MAPHG
HONV
(1,1) (1,n)
TENNV NHANVIEN Lam_viec PHONGBAN
GT
(1,1) (1,1)
La_truong_phong
PHONGBAN(TENPHG, MAPHG)
MANV
NS LUONG DCHI TENPHG MAPHG
HONV
NG_NHANCHUC
TENNV NHANVIEN PHONGBAN
(1,1) (1,1)
GT La_truong_phong
b) Một-Nhiều
Thêm và o quan-hệ bên ( - , 1) thuộ c tính khó a củ a quan-hệ
bên (- , n )
MANV
NS LUONG DCHI TENPHG MAPHG
HONV
(1,1) (1,n)
TENNV NHANVIEN Lam_viec PHONGBAN
GT
HONV
(1,n)
TENNV NHANVIEN Co_than_nhan QUANHE
NS
GT (1,1)
GT
THANNHAN
TENTN
NhanVien DChi
6. Chuyển đổi ERD sang RDM
83
6.5. Liên kết đa ngôi (n>2)
Chuyển thà nh mộ t quan hệ
Có cù ng tên vớ i tên mố i liên kết đa ngô i
Khó a chính là tổ hợ p cá c khó a củ a tậ p cá c thự c thể tham gia liên kết
SOLUONG TENDA MADA
MANCC
NHACUNGCAP Cung_cap DEAN
NHACUNGCAP(MANCC,…)
THIETBI(MATB,…)
ERD RDM
Loạ i thự c thể Quan hệ thự c thể
Quan hệ 1:1, 1:N Khó a ngoà i
Quan hệ N:M Quan hệ vớ i 2 khó a ngoà i
(0,1)
Mã số NHÂNVIÊN ĐƠNVỊ
(1,1)
(0,N)
(0,1) (1,N) (0,N)
(0,N) Làmviệccho
Giám sát
(1,N)
Có Sốgiờ Kiểm soát
(1,1)
Làmviệc (1,N)
(1,1) trên
DỰÁN
CON
85