1. Trang chủ
  2. » Công Nghệ Thông Tin

Mô hình thực thể quan hệ pps

20 248 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Mô hình thực thể quan hệ
Tác giả Trần Quốc Chiến
Trường học Cao đẳng Công nghệ Thông tin
Chuyên ngành Cơ sở dữ liệu
Thể loại Bài luận
Định dạng
Số trang 20
Dung lượng 205,4 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mô hình thực thể quan hệ được biểu diễn bởi các khái niệm thực thể, quan hệ giữa các thực thể, và thuộc tính của cả thực thể và quan hệ.. Trong mô hình thực thể quan hệ, mỗi kiểu thực t

Trang 1

Chương 2 mô hình thực thể quan hệ

Chương này sẽ giới thiệu chi tiết mô hình thực thể quan hệ Sau nhiều năm sử dụng mô

hình thực thể quan hệ được coi là cách tiếp cận chính xây dựng mô hình dữ liệu khái niệm Hiệu quả của mô hình này bắt nguồn từ sự đơn giản của mô hình, nhiều công cụ trợ giúp, và niềm tin rằng thực thể và quan hệ là các khái niệm mô hình hoá thế giới thực

Mô hình thực thể quan hệ được coi là công cụ giao tiếp giữa người thiết kế cơ sở dữ liệu

và người dùng trong quá trình phân tích thiết kế cơ sở dữ liệu

Mô hình thực thể quan hệ là sự mô tả chi tiết, lôgic dữ liệu của một tổ chứa hoặc một

hoạt động kinh doanh Mô hình thực thể quan hệ được biểu diễn bởi các khái niệm thực thể,

quan hệ giữa các thực thể, và thuộc tính của cả thực thể và quan hệ Mô hình thực thể quan

hệ được biểu diễn đồ hoạ bằng sơ đồ thực thể quan hệ

1 Thực thể và thuộc tính

• Thực thể (entity) là vật thực (chẳng hạn như con người, vị trí, vật thể, sự kiện hoặc khái

niệm, ) tồn tại và phân biệt được, có nghĩa là ta có thể phân biệt được thực thể này với thực thể khác

+ Ví dụ:

• Con người: NHÂN VIÊN, SINH VIÊN, BệNH NHÂN

• Vị trí địa lý: quốc gia, vùng, nông thôn

• Vật thể: Thiết bị, nhà cửa, ô tô

• Sự kiện: bán hàng, ghi danh

• Khái niệm: tài khoản, học phần

• Kiểu thực thể hoặc lớp thực thể (entity type or class) là tập hợp các thực thể tương tự

nhau, có cùng các tính chất đặc trưng Trong mô hình thực thể quan hệ, mỗi kiểu thực thể

được đặt một cái tên duy nhất, có tính gợi nhớ Tên kiểu thực thể được viết bằng chữ cái và trong sơ đồ thực thể quan hệ tên kiểu thực thể đặt trong hình chữ nhật

+ Ví dụ:

• Thuộc tính Kiểu thực thể có các tính chất gọi là thuộc tính Thuộc tính được coi là

tính chất hay đặc trưng của thực thể mà tổ chức quản lý thực thể quan tâm

Tên thuộc tính được viết bằng chữ cái và trong sơ đồ thực thể quan hệ tên kiểu thực thể

đặt trong hình oval và nối với kiểu thực thể tương ứng bằng đường cung

Việc chọn các thuộc tính thích hợp là cung đoạn cực kỳ quan trọng trong quá trình thiết

kế mô hình thế giới thực

nhân viên học phần tài khoản

Trang 2

Các giá trị của mỗi thuộc tính có kiểu giá trị duy nhất như là tập hợp số nguyên, số thực,

hoặc dãy ký tự, nhưng ta cũng không loại trừ những kiểu giá trị khác

Các giá trị thuộc tính cũng có thể được giới hạn trong miền giá trị nào đó

+ Ví dụ: dưới đây là các kiểu thực thể với các thuộc tính đi kèm

• Kiểu thực thể nhân viên( mã nv, họ tên, địa chỉ, ngay sinh, CMND, lương)

• Kiểu thực thể ô tô (số xe, màu sơn, trọng TảI, công suất)

• Kiểu thực thể vật tư (mã vt, tên vt, đvt, đơn giá)

Trong kiểu thực thể NHÂN VIÊN, thuộc tính MANV có kiểu giá trị xâu ký tự, LƯƠNG

có kiểu giá trị số thực với miền giá trị từ 730000 đến 7300000 (đồng)

• Thể hiện thực thể là khái niệm chỉ phần tử cụ thể trong một kiểu thực thể

+ Ví dụ:

Xét kiểu thực thể nhân viên( mã nv, họ tên, địa chỉ, ngay sinh, CMND,lương)

Ta có thể có các thể hiện thực thể sau

(A001, Trần Quốc Tuấn, Đà nẵng, 15/08/1953, 200002496, 1500000)

(B002, Vũ Minh Hương, Hà Nội, 20/10/1960, 112004589, 1000000)

• Khoá dự tuyển và khoá chính

Mỗi kiểu thực thể phải có thuộc tính hoặc tập thuộc tính xác định duy nhất mỗi thể hiện thực thể, phân biệt thực thể này với thực thể khác

Khoá dự tuyển của kiểu thực thể là thuộc tính hoặc tổ hợp các thuộc tính mà giá trị của chúng xác định duy nhất từng thực thể của kiểu thực thể đó

+ Ví dụ:

Xét kiểu thực thể

vật tư (mã vt, tên vt, đvt, đơn giá) Thuộc tính MAVT (mã số vật tư) là khoá dự tuyển, vì mỗi vật tư chỉ có một mã số duy nhất, không thể có hai vật tư trùng mã số Các thuộc tính khác không phải là khoá dự tuyển Xét tiếp kiểu thực thể KETQUA ư kết quả thi học phần của sinh viên

LƯƠNG nhân viên

manv Họ TÊN ĐịA CHỉ NGAY SINH CMnD

Trang 3

KETQUA(MAHP, MASV, ĐIEM) trong đó MAHP là mã số học phần, MASV là mã số sinh viên, DIEM là điểm thi

Ta dễ dàng thấy rằng kiểu thực thể KETQUA không có thuộc tính đơn nào là khoá dự tuyển ở đây hai thuộc tính MAHP và MASV tạo thành khoá dự tuyển của kiểu thực thể KETQUA

Cũng có thể xảy ra trường hợp kiểu thực thể có nhiều khoá dự tuyển Xét kiểu thực thể

NHÂNVIÊN( mã nv, họ tên, địa chỉ, ngay sinh, CMND, lương)

Thuộc tính CMND (số chứng minh nhân dân) là khoá dự tuyển, vì mỗi người chỉ có một

số CMND duy nhất Ngoài ra thuộc tính MANV (mã số nhân viên) cũng là khoá dự tuyển vì mỗi người cũng chỉ có một mã số duy nhất

Trường hợp có nhiều khoá dự tuyển, người thiết kế phải chọn một khoá làm khoá chính

Khoá chính là khoá dự tuyển được chọn làm định danh cho kiểu thực thể

Trong sơ đồ thực thể quan hệ, các thuộc tính khoá chính được gạch dưới

+ Ví dụ:

Kiểu thực thể NHÂNVIÊN có MANV là khoá chính

NHÂNVIÊN( mã nv, họ tên, địa chỉ, ngay sinh, CMND, lương)

Thuộc tính bội Trong thực tế, thuộc tính có thể có nhiều giá trị đối với mỗi thể hiện

thực thể Thuộc tính bội là thuộc tính có thể có nhiều giá trị cho mỗi thể hiện thực thể

Trong sơ đồ thực thể quan hệ, thuộc tính bội được đặt trong hình oval kép

Ví dụ:

Xét kiểu thực thể NHÂNVIÊN có bổ sung thêm thuộc tính NGOạI NGữ

NHÂNVIÊN( mã nv, họ tên, địa chỉ, ngay sinh, CMND, lương, NGOạI NGữ)

Một nhân viên có thể biết nhiều ngoại ngữ (Anh, Pháp, Đức, .), vậy NGOạI NGữ là thuộc tính bội

LƯƠNG nhân viên

manv Họ TÊN ĐịA CHỉ NGAY SINH CMnD

Trang 4

2 Quan hệ

Khái niệm quan hệ là chìa khoá nối các thực thể trong mô hình thực thể quan hệ

Quan hệ (relation) là sự kết hợp giữa các thực thể của một hoặc nhiều kiểu thực thể

Về mặt toán học ta có thể định nghĩa chính xác như sau Quan hệ giữa các kiểu thực thể

E1, E2, , Ek là một tập hợp, mà các phần tử của nó là một bộ k thành phần

e = (e1, e2, , ek), trong đó e1∈E1, e2∈E2, , ek∈Ek Trường hợp thông dụng là k=2, nhưng cũng có quan hệ

giữa ba hoặc nhiều tập thực thể hơn Số tập thực thể trong quan hệ gọi là bậc của quan hệ

Quan hệ bậc n gọi là quan hệ n ngôi

Quan hệ được đặt tên bằng chữ thường và trong sơ đồ thực thể quan hệ được đặt trong

hình thoi nối với kiểu thực thể liên quan

Ví dụ: Quan hệ hai ngôi (binary relation)

Trong một tổ chức có nhiều phòng và mỗi nhân viên thuộc biên chế của một phòng Giữa

kiểu thực thể NHANVIEN và kiểu thực thể PHONG có quan hệ “Biên chế” gồm các cặp (n,p) thoả nhân viên n là biên chế của phòng p Sơ đồ thực thể quan hệ được biểu diễn như

sau:

Ví dụ: Quan hệ một ngôi (unary relation)

Xét kiểu thực thể NGUOI gồm dân cư trong một địa phương nào đó Giữa các cư dân có

quan hệ “Mẹ con” gồm các cặp hai người (a,b) thoả a là mẹ của b Sơ đồ thực thể quan hệ

được biểu diễn như sau:

LƯƠNG

nhân viên

manv Họ TÊN ĐịA CHỉ NGAY SINH CMnv

NGoại ngữ

chế

con

Trang 5

• Lưu ý: Thuéc tÝnh cã thÓ g¸n cho quan hÖ

VÝ dô:

Gi÷a kiÓu thùc thÓ SINHVIEN vµ kiÓu thùc thÓ MONHOC cã quan hÖ “Thi” KÕt qu¶ thi (®iÓm) ph¸t sinh tõ quan hÖ nµy, cho nªn quan hÖ Thi cã thuéc tÝnh DIEM

• Ph©n lo¹i quan hÖ

XÐt quan hÖ R gi÷a kiÓu thùc thÓ E1 vµ kiÓu thùc thÓ E2

Quan hÖ 1-1: Quan hÖ R gäi lµ quan hÖ 1-1, nÕu mçi thùc thÓ cña tËp thùc thÓ nµy chØ

quan hÖ víi nhiÒu nhÊt mét thùc thÓ cña tËp thùc thÓ kia vµ ngưîc l¹i BiÓu diÔn

Quan hÖ n-1: Quan hÖ R gäi lµ quan hÖ n-1, nÕu mçi thùc thÓ cña E2 cã thÓ quan hÖ víi nhiÒu thùc thÓ cña E1, nhưng mçi thùc thÓ cña E1 chØ quan hÖ víi nhiÒu nhÊt mét thùc thÓ cña E2

Quan hÖ 1-n: Quan hÖ R gäi lµ quan hÖ 1-n, nÕu mçi thùc thÓ cña E1 cã thÓ quan hÖ víi nhiÒu thùc thÓ cña E2, nhưng mçi thùc thÓ cña E2 chØ quan hÖ víi nhiÒu nhÊt 1 thùc thÓ cña

E1

®iÓm

Trang 6

Quan hÖ n-n: Quan hÖ R gäi lµ quan hÖ n-n, nÕu mçi thùc thÓ cña tËp thùc thÓ nµy cã thÓ

quan hÖ víi nhiÒu thùc thÓ cña tËp thùc thÓ kia vµ ng−îc l¹i

VÝ dô: Quan hÖ mét ng«i

quan hÖ 1-1 quan hÖ 1-n

VÝ dô: Quan hÖ hai ng«i (binary relation)

quan hÖ 1-1

quan hÖ n-1

con

n

1

chång

1

1

nh©n viªn Tr−ëng phßng phong

chÕ

1

n

Trang 7

quan hệ n-n

Các khái niệm trên có thể mở rộng cho quan hệ giữa nhiều tập thực thể E1, E2, , Ek Ta tách riêng tập thực thể Ei và xét quan hệ của các tập thực thể còn lại đối với nó Chẳng hạn,

nếu với mỗi bộ k-1 thực thể thuộc E1, , Ei-1, Ei+1, , Ek chỉ quan hệ nhiều nhất với một thực thể của Ei thì ta nói quan hệ là n-1 từ E1, , Ei-1, Ei+1, , Ek vào Ei

Ví dụ: Quan hệ ba ngôi (ternary relation)

Đây là quan hệ dạy học giữa thầy, lớp và môn học Mỗi cặp (lớp, môn học) chỉ có một

thầy dạy (1) Mỗi cặp (thầy, môn học) có thể kết hợp với nhiều lớp (n) Mỗi cặp (thầy, lớp)

có thể kết hợp với nhiều môn học (n)

• Thực thể kết hợp (composite entity)

Trong nhiều trường hợp, quan hệ n-n cũng có thuộc tính và có nhiều tính chất giống như thực thể ở đây sự phân biệt giữa thực thể và quan hệ chỉ là vấn đề quan niệm

Thực thể kết hợp là quan hệ n-n, mô tả kiểu thực thể có quan hệ 1-n với một số thực thể

khác

Trong sơ đồ thực thể quan hệ, thực thể kết hợp được biểu diễn bằng hình chữ nhật bao quanh hình thoi

Ví dụ: Quan hệ Thi giữa SINHVIEN và MONHOC là thực thể kết hợp

Giữa thực thể kết hợp và thực thể cũng có thể có quan hệ

điểm

lớp

n

điểm

Trang 8

Ví dụ: Tình huống giáo viên (GIAO VIEN) dạy môn học (MON HOC) và giáo viên dạy

môn học cho lớp (LOP) có thể biểu diễn bằng sơ đồ sau

Để mô tả chính xác hơn các loại quan hệ người ta dùng khái niệm lực lượng cực tiểu và

lực lượng cực đại

• Lực lượng cực tiểu và lực lượng cực đại (minimum and maximum cardinality)

Xét quan hệ R giữa kiểu thực thể E1 và kiểu thực thể E2

Lực lượng cực tiểu của quan hệ R đối với E2 (E1 ) là số cực tiểu các thể hiện của kiểu thực thể E2 (E1 ) có thể kết hợp với mỗi thể hiện của kiểu thực thể E1 (E2 )

Lực lượng cực đại của quan hệ R đối với E2 (E1 ) là số cực đại các thể hiện của kiểu thực thể E2 (E1 ) có thể kết hợp với mỗi thể hiện của kiểu thực thể E1 (E2 )

Giả sử m, n là lực lượng cực tiểu, lực lượng cực đại của quan hệ R đối với E2, khi đó ta biểu diễn trên sơ đồ thực thể quan hệ như sau

Ví dụ:

quan hệ 1-1

quan hệ n-1

nhân viên Trưởng phòng phong

chế

(0,1) (1,1)

(1,1) (1,n)

GIAO VIEN n Dạy n mon hoc

LOP

Học

n

n

Trang 9

quan hệ n-n

• Phụ thuộc tồn tại

Xét quan hệ R giữa kiểu thực thể E1 và kiểu thực thể E2 với lược đồ thực thể quan hệ dạng sau

trong đó m, n là các số nguyên

Ta thấy rằng mỗi thực thể của kiểu thực thể E2 phải quan hệ với duy nhất một thực thể của kiểu thực thể E1 Như vậy, mỗi thực thể trong E2 không thể tồn tại nếu không có thực thể quan hệ tương ứng trong E1 Hiện tượng này gọi là sự phụ thuộc tồn tại (của E2 vào E1) Khi đó E1 gọi là kiểu thực thể cha, E2 gọi là kiểu thực thể con và được coi là thực thể yếu

Ví dụ: Xét quan hệ:

Ta thấy kiểu thực thể NHÂNVIÊN phụ thuộc tồn tại và kiểu thực thể PHONG PHONG

là kiểu thực thể cha, NHÂNVIÊN là kiểu thực thể con (thực thể yếu)

Quan hệ khoá

Thông thường, thực thể yếu thường không có khoá dự tuyển, và khoá chính của thực thể cha được sử dụng như là một bộ phận của thực thể con

Như vậy, thực thể của tập thực thể yếu phân biệt với nhau không phải chỉ bằng các thuộc

tính mà còn bằng quan hệ với các thực thể kiểu khác Quan hệ dạng này gọi là quan hệ khoá

Ví dụ : Xét cơ sở dữ liệu với hai tập thực thể :

- BRANDS có các thuộc tính MAKE và MODEL (ví dụ "Datsun, 280Z")

- AUTOS có thuộc tính SERIAL_NO

Ta có thể giả thiết SERIAL_NO là khoá của tập thực thể AUTOS Nhưng có thể xảy ra tình huống hai MAKE xe khác nhau có cùng SERIAL_NO Để làm cho các thực thể của

điểm (1,n) (1,n)

E1 (1,1) R (m,n) E2

chế (1,1)

(1,n)

Trang 10

AUTOS phân biệt nhau, ta cần có quan hệ giữa AUTOS và BRANDS biểu diễn thực tế là mỗi xe có một nhãn hiệu riêng Khi đó ta có thể coi mỗi thực thể của AUTOS được xác định duy nhất bằng SERIAL_NO của nó và thuộc tính MAKE của thực thể quan hệ tương ứng trong BRANDS

Lưu ý rằng thuộc tính (ảo) MAKE của AUTOS, có được nhờ quan hệ khoá Thuộc với

BRANDS, và thuộc tính SERIAL_NO tạo thành khoá của AUTOS

make (0,n) (1,1)

model make serial_no

Trang 11

3 Mô hình hoá thuộc tính bội

Thuộc tính bội trong mô hình thực thể quan hệ thường gây khó khăn cho việc cài đặt Vì vậy người ta thường khử các thuộc tính bội bằng cách thêm kiểu thực thể gồm các thuộc

tính bội liên quan và quan hệ với thực thể gốc Quá trình này gọi là Mô hình hoá thuộc tính bội

Ví dụ:

Xét kiểu thực thể NHÂNVIÊN có thuộc tính bội NGOạI NGữ

NHÂNVIÊN( mã nv, họ tên, địa chỉ, ngay sinh, CMND, lương, NGOạI NGữ)

Một nhân viên có thể biết nhiều ngoại ngữ (Anh, Pháp, Đức, .), vậy NGOạI NGữ là thuộc tính bội

Để khử thuộc tính bội NGOAINGU, ta thêm kiểu thực thể NGOAINGU với thuộc tính

TEN_NN và quan hệ Biết

• Nhóm lặp

Nhóm lặp là tập thuộc tính bội có quan hệ lôgic với nhau Để khử các nhóm lặp ta cũng

thêm kiểu thực thể gồm các thuộc tính bội liên quan và quan hệ với thực thể gốc

Ví dụ:

Xét kiểu thực thể NHÂNVIÊN có thuộc tính NGOạI NGữ, trình độ (ngoại ngữ)

NHÂNVIÊN( mã nv, họ tên, địa chỉ, ngay sinh, NGOạI NGữ, trình độ )

LƯƠNG

nhân viên

manv Họ TÊN ĐịA CHỉ NGAY SINH CMnD

NGoại ngữ

LƯƠNG

nhân viên

manv Họ TÊN ĐịA CHỉ NGAY SINH CMnD

ten_NN

(0,n) (0,n)

Trang 12

Một nhân viên có thể biết nhiều ngoại ngữ (Anh, Pháp, Đức, ) với các trình độ khác nhau (A, B, C, ), vậy NGOạI NGữ và TRINH ĐÔ là các thuộc tính bội liên quan với nhau

Để khử thuộc tính bội NGOAINGU và TRINHDO, ta thêm kiểu thực thể NGOAINGU

với các thuộc tính TEN_NN, TRINHĐÔ và quan hệ Biết

• Dữ liệu phụ thuộc thời gian

Có những loại dữ liệu thay đổi theo thời gian, chẳng hạn như lương, giá cả hàng hoá, Như vậy các thuộc tính biểu diễn dữ liệu loại này sẽ là thuộc tính bội Đây cũng là dạng

nhóm thuộc tính lặp và ta khử chúng bằng các thực thể với thuộc tính thời gian, gọi là tem

thời gian

Ví dụ:

Xét kiểu thực thể NHÂNVIÊN có thuộc tính bội phụ thuộc thời gian lương, ngày qđ (lên lương)

NHÂNVIÊN( mã nv, họ tên, địa chỉ, ngay sinh, lương, ngày qđ )

Để khử thuộc tính bội LƯƠNG và NGAY QĐ, ta thêm kiểu thực thể QTL (quá trình

lương) với các thuộc tính NGAY QĐ, LƯƠNG và quan hệ Có

nhân viên

manv Họ TÊN ĐịA CHỉ NGAY SINH NGoại ngữ trình độ

nhân viên

manv Họ TÊN ĐịA CHỉ NGAY SINH

ten_NN

trình độ

(0,n) (0,n)

nhân viên

manv Họ TÊN ĐịA CHỉ NGAY SINH lương ngày qđ

Trang 13

nh©n viªn

manv Hä T£N §ÞA CHØ NGAY SINH

ngay q®

l−¬ng (1,n)

(1,1)

Trang 14

4 Tổng quát hoá và đặc biệt hoá

Trong lý thuyết cơ sở dữ liệu tổng quát hoá là khái niệm chỉ rằng một kiểu thực thể E

bao gồm các thuộc tính chung của các kiểu thực thể E1, , Em Ngược lại, các kiểu thực thể

E1, , Em được coi là các kiểu thực thể đặc biệt của thực thể E Trong mối quan hệ này, E gọi là kiểu thực thể trên (supertype) và E1, , Em gọi là kiểu thực thể dưới (subtype)

• Thực thể dưới và thực thể trên (Subtype and Supertype)

Một trong thách thức chính của việc mô hình hoá dữ liệu là nhận biết và biểu diễn rõ ràng rằng một số kiểu thực thể chia sẻ các tính chất chung, và đồng thời có những đặc tính riêng biệt

+ Ví dụ: Một đơn vị có ba loại nhân viên: biên chế, hợp đồng dài hạn, và hợp đồng thời vụ

Các loại nhân viên có các thuộc tính như sau:

(1) Biên chế: MANV, HOTEN, DIACHI, NGAYLV, LUONG_NAM

(2) Hợp đồng dài hạn: MANV, HOTEN, DIACHI, NGAYLV, SOHD, LUONG_NGAY (3) Hợp đồng thời vụ: MANV, HOTEN, DIACHI, NGAYLV, LUONG_GIO

Lưu ý rằng cả ba loại nhân viên có các thuộc tính chung MANV (mã số nhân viên), HOTEN (họ tên), DIACHI (địa chỉ), NGAYLV (ngày bắt đầu làm việc), đồng thời chúng cũng có các thuộc tính riêng biệt Một cách tiếp cận hiệu quả là xây dựng kiểu thực thể NHANVIEN gồm các thuộc tính chung, và các kiểu thực thể dưới BIENCHE, HOPDONG, THOIVU chứa các thuộc tính riêng biệt Các kiểu thực thể được biểu diễn bằng sơ đồ thực thể quan hệ như sau:

nhân viên manv Họ TÊN ĐịA CHỉ NGAY lv

ISA

thoivu

manv lương_gio manv lương_nam manv SOHĐ lương_ngay

Ngày đăng: 14/08/2014, 09:20

HÌNH ẢNH LIÊN QUAN

Hình thoi  nối với kiểu thực thể liên quan. - Mô hình thực thể quan hệ pps
Hình thoi nối với kiểu thực thể liên quan (Trang 4)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w