Tải bản đầy đủ (.ppt) (21 trang)

Chương 3 MÔ HÌNH QUAN HỆ doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (198.55 KB, 21 trang )

Chương 3
Chương 3
MÔ HÌNH QUAN HỆ
MÔ HÌNH QUAN HỆ
2
Nội dung
Nội dung
I. Quan hệ - Lược đồ quan hệ
II. Khoá của quan hệ
III. Chuyển mô hình E-R sang mô
hình quan hệ
3
1 cột là 1 thuộc tính của nhân viên
1 dòng là 1 nhân viên (Hay là một bộ)
I. Quan hệ - Lược đồ quan hệ
I. Quan hệ - Lược đồ quan hệ

Là bảng mà không có dòng nào giống nhau, mỗi
dòng của bảng được gọi là bộ (tuple) và mỗi cột của
bảng được ký hiệu bằng một tên được gọi là thuộc
tính của quan hệ.
TENNV HONV NGSINH DCHI PHAI LUONG PHG
Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 5
Hang Bui 07/19/1968 332 NTH Q1 Nu 25000 4
Nhu Le 06/20/1951 291 HVH QPN Nu 43000 4
Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 5
Ví dụ: Xét quan hệ có tên là NHANVIEN
1. Quan hệ (Relation)
Nếu gọi Dom(A
i
) là tập các giá trị có thể có của A


i
(miền trị của
A
i
), i=1 n. Thì quan hệ r trên tập thuộc tính {A
1
, A
2
, …, A
n
}:
r⊆Dom(A
1
) x Dom(A
2
) x … x Dom(A
n
)
4
2. Lược đồ quan hệ (Relational Schema)
2. Lược đồ quan hệ (Relational Schema)

Tập tất cả các thuộc tính cần quản lý của một đối
tượng cùng mối liên hệ giữa chúng được gọi là lược
đồ quan hệ.

Lược đồ quan hệ R với tập thuộc tính U={A1,A2,
…,An} và tập ràng buộc SC⊆U được viết là
R=<U,SC> hay viết tắt là R(A1,A2, ,An)
Ví dụ:

Sinhvien = <U, SC>
U = {MaSV, Hoten, Ngaysinh}
SC: MaSV xác định duy nhất (khoá của Sinhvien)
5
2. Lược đồ quan hệ…
2. Lược đồ quan hệ…

Một tập các lược đồ quan hệ trong một hệ thống
thông tin thì được gọi là một mô hình cơ sở dữ liệu
quan hệ (có thể được gọi tắt là mô hình quan hệ,
hay: lược đồ cơ sở dữ liệu quan hệ).
Ví dụ:
GiaoVien
#MaGV
HoTen
SDT
ThuocKhoa
Day
MaGV
#MaLop
#MaMH
MH
#MaMH
TenMH
Lop
#MaLop
TenLop
SiSo
MaKhoa
Khoa

#MaKhoa
TenKhoa
SDT
MaTrK
SinhVien
#MaSV
HoTen
NgSinh
QueQuan
MaLop
DiemHP
#MaSV
#MaMH
Diem
6
2. Lược đồ quan hệ…
2. Lược đồ quan hệ…

Tập hợp các quan hệ (hiện hành) của các lược đồ
quan hệ trong một mô hình quan hệ thì được gọi là
cơ sở dữ liệu quan hệ.
Ví dụ:
MaPhong TenPhong
4 Phòng Kế Toán
5 Phòng Hành Chính
7
II. Khoá của quan hệ
II. Khoá của quan hệ
1. Định nghĩa


Cho quan hệ r của lược đồ quan hệ R với tập thuộc
tính U = {A
1
, A
2
, …, A
n
}.

Tập K ⊆ U (K≠∅) được gọi là khoá của r nếu nó
thoả mãn cả 2 điều kiện:
-
Với mọi bộ t∈r đều có giá trị khác nhau trên K, khi đó K
được gọi là siêu khoá của r.
-
∃K’ ⊂ K (tập con thực sự của K): K’ là siêu khoá của r.
Ví dụ: Cho r= A B C r có 2 khoá là: {A}
a b b và {B,C}
b b a
c a a
8
II. Khoá của quan hệ…
II. Khoá của quan hệ…

Nhận xét:
-
X được gọi là khoá của lược đồ quan hệ R nếu X là khoá
của mọi quan hệ r trên lược đồ quan hệ R.
-
Giá trị của khóa dùng để nhận biết một bộ trong quan hệ

-
Khóa được xây dựng dựa vào ý nghĩa của một số thuộc tính
trong quan hệ
-
Lược đồ quan hệ có thể có nhiều khóa
9
II. Khoá của quan hệ…
II. Khoá của quan hệ…
2. Khoá chính (Primary key) của một lược đồ
quan hệ:

Một lược đồ quan hệ phải có đúng một khóa chính
do người thiết kế cơ sở dữ liệu quy ước.

Khóa chính của một lược đồ quan hệ thường được
sử dụng cho việc tham chiếu dữ liệu.

Các thuộc tính khóa chính phải có giá trị khác null

Ta ký hiệu # ở ngay trước tên các thuộc tính của
khóa chính
Ví dụ:
Lop
#MaLop
TenLop
II. Khoá của quan hệ…
II. Khoá của quan hệ…
3. Khóa ngoài (foreign key) của một lược đồ
quan hệ:


Cho 2 lược đồ quan hệ R,S. Gọi PK là khoá chính
của S. Xét FK là tập các thuộc tính khác rỗng của R.
Khi đó, ta gọi FK là khoá ngoài của lược đồ quan hệ
R tham chiếu đến S nếu cơ sở dữ liệu luôn thỏa
mãn 2 điều kiện sau:
-
Miền trị của FK là trùng với miền trị của PK.
-
Giá trị của FK hoặc là NULL hoặc phải bằng một giá trị
hiện có nào đó của PK.
Ví dụ:
10
Khóa chính
Khóa ngoài
SinhVien
#MaSV
HoTen
NgaySinh
HocTai
Lop
#MaLop
TenLop
11
III.Chuyển
III.Chuyển
đ
đ
ổi mô hình E-R sang mô hình quan hệ
ổi mô hình E-R sang mô hình quan hệ
Bước 1: Chuyển đổi các tập thực thể thành các

lược đồ quan hệ

Mỗi tập thực thể E được chuyển thành lược đồ
quan hệ R có cùng tên và cùng tập thuộc tính.
Sinhvien
MaSV
HoTen
Ngaysinh
SinhVien
#MaSV
HoTen
Ngaysinh
12
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …

Lưu ý: Nếu E có thuộc tính đa trị A thì trong lược đồ
quan hệ, phải tạo thêm lược đồ quan hệ mới S để
biểu diễn thuộc tính đa trị này. Trong đó:
-
U
S
= {PK
R
, A}
-

S có khoá ngoài là PK
S
tham chiếu đến PK
R
của R.
Sinhvien
MaSV
HoTen
Sothich
SinhVien
#MaSV
HoTen
SoThich
#MaSV
#SoThich
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …
Bước 2: Chuyển đổi mối quan hệ Is – a
13
C1: Không sử dụng lược đồ quan hệ biễu diễn lớp cha
Nguoi
SinhVien
GiaoVien
DTB
HB
Luong

BienChe
IdNguoi
HoTen
NgaySinh
SinhVien
#MaSV
HoTen
NgaySinh
DTB
HB
GiaoVien
#MaGV
HoTen
NgaySinh
Luong
BienChe
Có 2 cách chuyển đổi:
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …
Bước 2: Chuyển đổi mối quan hệ Is – a
14
C2: Bổ sung khoá ngoài cho các lược đồ quan hệ biễu diễn lớp con
Nguoi
SinhVien
GiaoVien
DTB

HB
Luong
BienChe
IdNguoi
HoTen
NgaySinh
Có 2 cách chuyển đổi:
SinhVien
#MaSV
DTB
HB
Nguoi
#IdNguoi
HoTen
NgaySinh
GiaoVien
#MaGV
Luong
BienChe
15
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …
Bước 3: Chuyển đổi mối quan hệ nhị nguyên 1-1

Bổ sung khoá ngoài cho một trong hai lược đồ quan
hệ

GiaoVien
Lop
ChuNhiem
MaGV
HT
NS
MaLop
TenLop
(0,1)
(1,1)
GiaoVien
#MaGV
HT
NS
Lop
#MaLop
TenLop
MaGVCN
16
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …
Bước 4: Chuyển đổi mối quan hệ nhị nguyên 1-n

Bổ sung khoá ngoài cho lược đồ quan hệ tương ứng
với “phía nhiều”.
SinhVien

Lop
HocTai
MaSV
HT
NS
MaLop
TenLop
(1,1)
(n, n)
SinhVien
#MaSV
HT
NS
MaLop
Lop
#MaLop
TenLop
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …
Bước 5: Chuyển đổi mối quan hệ nhị nguyên n-n

Tạo một quan hệ mới có:
-
Tên quan hệ là tên của mối quan hệ
-
Thuộc tính là những thuộc tính khóa của các tập thực

thể liên quan và thuộc tính của mối quan hệ
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …
Bước 6: Chuyển đổi mối quan hệ phản xạ

Được thực hiện tương tự như việc chuyển đổi mối
quan hệ nhị nguyên 1-1, 1-n, n-n
18
Nguoi
KetHon
Vo(0,1)
Chong(0,1)
Id_Nguoi
HT
NS
Nguoi
#Id_Nguoi
HT
NS
Id_VoChong
1-1
III. Chuyển
III. Chuyển
đ
đ
ổi …

ổi …
Bước 6: Chuyển đổi mối quan hệ phản xạ
19
Nguoi
Lacha
Con(0,1)
Bo(0,1)
Id_Nguoi
HT
NS
Nguoi
#Id_Nguoi
HT
NS
Id_Bo
1-n
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …
Bước 6: Chuyển đổi mối quan hệ phản xạ
20
n-n
Nguoi
Yeu
YeuAi(0,1)
AiYeu(0,1)
Id_Nguoi

HT
NS
TG
Nguoi
#Id_Nguoi
HT
NS
Yeu
#Id_YeuAi
#Id_AiYeu
TG
III. Chuyển
III. Chuyển
đ
đ
ổi …
ổi …
Bước 7: Chuyển đổi mối quan hệ đa nguyên

Tương tự như phương pháp chuyển đổi mối quan
hệ nhị nguyên n-n.
GiaoVien
MH
Day
MaGV
HT
NS
MaMH
TenMH
(n,n)

(n,n)
NamHoc
Lop
MaLop
TenLop
(n,n)
GiaoVien
#MaGV
HT
NS
Day
MaGV
#MaLop
#MaMH
NamHoc
MH
#MaMH
TenMH
Lop
#MaLop
TenLop
21

×