You are on page 1of 15

Cơ sở dữ liệu

về các yêu cầu của người sử dụng cũng như của hệ thống. Những yêu cầu của hệ
thống sẽ được đặc tả càng đầy đủ và càng chi tiết càng tốt. Tuy nhiên, song song
với việc tiến hành đặc tả các yêu cầu dữ liệu, cần phải đặc tả các yêu cầu về chức
năng của ứng dụng – hệ thống: xác định được các thao tác cần thực hiện của
người sử dụng đối với cơ sở dữ liệu.
Bước 2: Thiết kế quan niệm
Khi tất cả các yêu cầu của hệ thống được thu thập và phân tích, tiếp theo là
tạo ra lược đồ quan niệm cho cơ sở dữ liệu bằng cách sử dụng mô hình dữ liệu
quan niệm mức cao. Bước này gọi là thiết kế quan niệm. Lược đồ quan niệm là
một mô tả súc tích về các yêu cầu dữ liệu của người người sử dụng trực tiếp với
hệ thống cần xây dựng. Lược đồ bao gồm các mô tả chi tiết của các kiểu thực thể,
kiểu liên kết và các ràng buộc, chúng được biểu diễn bằng các khái niệm do các
mô hình dữ liệu bậc cao cung cấp. Do những khái niệm này không chứa các chi
tiết cài đặt, nên chúng thường dễ hiểu và có thể sử dụng để trao đổi với người
những người sử dụng hệ thống (người không có chuyên môn sâu trong lĩnh vực
công nghệ thông tin). Lược đồ quan niệm mức cao cũng có thể được sử dụng như
là một tài liệu quan trọng để đảm bảo rằng tất cả các đòi hỏi của người sử dụng
đối với hệ thống được thỏa mãn và các đòi hỏi này không mẫu thuẫn. Bằng cách
sử dụng mô hình này cho phép người thiết kế cơ sở dữ liệu chỉ tập trung vào việc
đặc tả các tính chất của cơ sở dữ liệu mà không cần quan tâm chi tiết đến các
thông tin lưu trữ. Một thiết kế cơ sở dữ liệu tốt sẽ làm dễ dàng và không mất thời
gian chỉnh sửa sau này cho công việc của người thiết kế cơ sở dữ liệu trong bài
toán.
Khi thiết kế lược đồ quan niệm, chúng ta có thể sử dụng các phép toán cơ
bản của mô hình dữ liệu để đặc tả các thao tác của người sử dụng được xác định
khi phân tích chức năng. Điều khó khẳng định lược đồ quan niệm thỏa mãn mọi
yêu cầu chức năng được xác định. Trong trường hợp có một số yêu cầu chức
năng không thể nêu ra được trong lược đồ ban đầu thì sau đó chúng ta có thể sửa
đổi lược đồ cho phù hợp.
Bước 3: Thiết kế mức logic
Bước tiếp theo trong thiết kế cơ sở dữ liệu là việc phải cài được một cơ sở
dữ liệu của bài toán bằng một hệ quản trị cơ sở dữ liệu có sẵn. Hầu hết các hệ
quản trị cơ sở dữ liệu hiện này đều sử dụng một mô hình dữ liệu cài đặt cụ thể,
chẳng hạn như mô hình dữ liệu quan hệ hoặc mô hình dữ liệu đối tượng, vì vậy
lúc này ta phải thực hiện chuyển được từ mô hình dữ liệu quan niệm thành mô
hình dữ liệu có thể cài đặt được. Bước này được gọi là thiết kế mức logic hay
ánh xạ mô hình dữ liệu. Kết quả của bước này thu được một lược đồ cơ sở dữ

25
Cơ sở dữ liệu

trong mô hình bằng cách sử dụng tên của kiểu thực thể. Ví dụ: NHÂN VIÊN vừa
dùng để chỉ một kiểu thực thể, vừa để chi tập hợp hiện tại của tất cả các thực thể
nhân viên trong cơ sở dữ liệu. Tương tự, CÔNG TY dùng để chỉ một kiểu thực
thể và cũng chỉ tập hợp của tất cả các thực thể công ty trong cơ sở dữ liệu.
NHÂN VIÊN CÔNG TY
(Mã, Họ tên, Tuổi, Lương) (Mã, Tên, Địa điểm, Giám đốc)
NV1, Lê Thủy, 30, 800000 CT1, Công ty phần mềm, Hà nội, Vũ Hải
NV2, Nguyễn Hải, 32, 820000 CT2, Công ty hoa quả, Hải phòng, Lê Huy
Ký hiệu biểu diễn thực thể: Một kiểu thực thể được biểu diễn trong lược
đồ ER bằng hình chữ nhật có chứa tên kiểu thực thể bên trong.

Cú pháp:

Ví dụ:
Để xác định kiểu thực thể trong hệ thống, chúng ta tiến hành liệt kê các
danh từ riêng dùng để mô tả cho một tập các đối tượng cần được quản lý của hệ
thống.
Trong mô hình ER, kiểu thực thể được chia làm hai loại: kiểu thực thể
mạnh và kiểu thực thể yếu. Kiểu thực thể mạnh được dùng để mô tả những thực
thể có thể tồn tại độc lập trong hệ thống mà không cần phải có sự tồn tại của một
thực thể khác. Ví dụ: thực thể NHÂN VIÊN, CÔNG TY. Kiểu thực thể yếu là
kiểu thực thể mà sự tồn tại của nó phải phụ thuộc vào sự tồn tại của một thực thể
khác hay thực thể yếu chỉ tồn tại trong hệ thống khi có sự tồn tại của một thực thể
khác trong hệ thống. Ví dụ: thực thể THÂN NHÂN trong hệ thống quản lý nhân
viên, một thân nhân chỉ được quản lý nếu thân nhân đó đi kèm với một nhân viên
cụ thể, ngược lại nếu không có nhân viên trong hệ thống thì không có thân nhân
nào được quản lý.
Các thực thể yếu của một kiểu thực thể yếu được xác định bằng cách liên
kết với các với thực thể cụ thể của một kiểu thực thể mạnh khác bằng cách phối
hợp thông qua một số thông tin (thuộc tính) của thực thể mạnh. Ta gọi kiểu thực
thể mạnh khác đó là kiểu thực thể xác định hoặc kiểu thực thể chủ. Giữa kiểu
thực thể mạnh và kiểu thực thể yếu có một liên kết và liên kết được gọi là liên kết
xác định. Ví dụ: Trong công ty, thân nhân của nhân viên có thể được hưởng bảo
hiểm theo nhân viên. Vì vậy, sẽ có một liên kết dạng NHÂN VIÊN – có – THÂN
NHÂN.

27
Cơ sở dữ liệu

Các giá trị lưu trong thuộc tính của từng thực thể phải nhận những giá trị
nguyên tố hoặc đơn như: kiểu chuỗi, kiểu số nguyên, kiểu số thực, kiểu ngày
tháng, …
Để xác định thuộc tính, chúng ta xác định các danh từ mô tả đặc tính, đặc
trưng gắn liền với các tên kiểu thực thể đã xác định.
Biểu diễn thuộc tính: Trong mô hình ER, thuộc tính được biểu diễn bằng
hình elip nét đơn với tên thuộc tính chứa bên trong và gắn liền với thực thể cần
mô tả.
Ký hiệu: Tên thuộc tính

Ví dụ: kiểu thực thể NHÂN VIÊN có các thuộc tính: mã nhân viên, họ tên,
ngày sinh, quê quán.

Trong mô hình ER, có nhiều kiểu thuộc tính khác nhau:


Thuộc tính đơn và thuộc tính phức hợp,
Thuộc tính đơn trị và thuộc tính đa trị,
Thuộc tính lưu trữ và thuộc tính suy dẫn,
Thuộc tính khóa và thuộc tính định danh
Thuộc tính đơn là thuộc tính không thể phân chia ra được thành các thành
phần riêng biệt nhỏ hơn. Ví dụ: thuộc tính Tuổi của một nhân viên là thuộc tính
đơn, thuộc tính Điểm của sinh viên là một thuộc tính đơn.
Thuộc tính phức hợp là thuộc tính mà có thể phân chia thành các thành
phần nhỏ hơn, biểu diễn các thuộc tính cơ bản hơn với các ý nghĩa độc lập. Ví
dụ: thuộc tính Họ tên của nhân viên có thể tác thành thuộc tính Họ chỉ chứa họ,
thuộc tính Tên chỉ chứa tên. Tương tự, thuộc tính Ngày sinh có thể tách thành các
thuộc tính Ngày, Tháng và Năm riêng biệt. Giá trị cuối cùng của thuộc tính phức
hợp là sự kết hợp các giá trị của các thuộc tính thành phần tạo nên thuộc tính
phức hợp. Việc phân chia một thuộc tính phức hợp thành các thuộc tính đơn tùy
thuộc vào hoàn cảnh và yêu cầu của bài toán cụ thể.
Thuộc tính đơn trị là thuộc tính mà mỗi thực thể xác định chỉ nhận một giá
trị duy nhất ứng với thuộc tính đó. Ví dụ: thuộc tính Họ tên là thuộc tính đơn trị
của thực thể nhân viên vì mỗi nhân viên chỉ có một họ tên duy nhất, thuộc tính

29
Cơ sở dữ liệu

để thỏa mãn tính chất duy nhất. Trong mô hình ER, thuộc tính khóa được biểu
diễn bằng hình elip và cách gạch chân dưới tên của thuộc tính.

Ví dụ
Đối với mỗi thực thể trong hệ thống, chúng ta có thể tham khảo một số gợi
ý sau để xác định thuộc tính khóa:
Giá trị của thuộc tính không bị thay đổi theo thời gian,
Giá trị của thuộc tính không được phép bỏ trống,
Tránh sử dụng những thuộc tính mà giá trị của nó thể hiện thông tin, hay
cấu trúc của nó thể hiện sự phân loại, vị trí, …
Nên chọn những thuộc tính đơn làm định danh thay vì sử dụng kết hợp một
số thuộc tính.
Ví dụ:

2.2.3 Liên kết


Kiểu liên kết (Relationship Types): Kiểu liên kết R giữa n kiểu thực thể E1,
E2,...,En được định nghĩa là tập các mối liên hệ giữa các thực thể từ những kiểu
thực thể đã cho. Theo toán học, R là tập các liên kết thực ri, trong đó mỗi liên kết
ri liên hệ giữa n thực thể (e1, e2, ..., en), mỗi thực thể ej trong liên kết ri là một
thành viên của kiểu thực thể EJ (i£ j £n). Liên kết R là tập con của tích De-cac
giữa tập các thực thể của n kiểu thực thể: E1x E2x...xEn. Mỗi kiểu thực thể E1, E2,
…, En được gọi là tham gia vào liên kết R, và tương tự, mỗi thực thể riêng biệt
e1, e2, …, en được gọi là tham gia vào thể hiện liên kết ri.
Một cách không hình thức, mỗi thể hiện liên kết ri trong R là một sự kết hợp
của các thực thể, mỗi thực thể thuộc về một kiểu thực thể tham gia vào liên kết.
Mỗi liên kết ri như vậy diễn đạt một sự kiện rằng các thực thể tham gia trong ri có
mối quan hệ với nhau theo một cách nào đó ở trong thế giới thực. Ví dụ, trong
thực tế, các nhân viên phải làm cho một đơn vị nào đó, như vậy, có một liên kết
làm việc cho, liên kết giữa kiểu thực thể NHÂN VIÊN và kiểu thực thể ĐƠN VỊ,
hoặc mỗi sinh viên trong khoa sẽ học một môn học nào đó vì thế có mối liên kết
học giữa kiểu thực thể SINH VIÊN và kiểu thực thể MÔN HỌC.

31
Cơ sở dữ liệu

bậc 2 (binary).
Ràng buộc trong kiểu liên kết ( Constraints on Relationship types): Ràng
buộc của kiểu liên kết là giới hạn số các thực thể của một kiểu thực thể tham gia
vào liên kết. Tỷ lệ liên kết (ratio) là số lượng các liên kết thực mà một thực thể
có thể tham gia. Đối với liên kết bậc hai (binary) thường có các loại tỷ lệ sau: 1:
1, 1: N, N: N.
Các kiểu liên kết giữa các kiểu thực thể được chia thành các kiểu: liên kết
một – một, liên kết một – nhiều, liên kết nhiều – nhiều.
Liên kết một – một (1-1) là kiểu liên kết giữa kiểu thực thể A với kiểu thực
thể B nếu một thực thể trong kiểu A liên kết, có quan hệ với duy nhất một thực
thể trong kiểu B và ngược lại. Kiểu liên kết một – một được biểu diễn bằng cách
thêm số 1 ở hai đầu của kiểu thực thẻ.
Ví dụ:

Liên kết một – nhiều (1-n) là kiểu liên kết giữa kiểu thực thể A với kiểu
thực thể B nếu mà một thực thể trong kiểu A liên kết – có quan hệ với nhiều thực
thể trong kiểu B và một thực thể trong kiểu B chỉ liên kết duy nhất với một thực
thể kiểu A. Kiểu liên kết một – nhiều được biểu diễn bằng cách thêm số 1 ở đầu
bên phía một và thêm n ở đầu bên phía nhiều.
Ví dụ:

Liên kết nhiều – nhiều (m-n) là kiểu liên kết giữa kiểu thực thể A với kiểu
thực thể B nếu mà một thực thể trong kiểu A liên kết với nhiều thực thể trong
kiểu B và một thực thể trong kiểu B cũng liên kết với nhiều thực thể kiểu A. Kiểu
liên kết nhiều – nhiều được biểu diễn bằng cách thêm số m và n ở hai đầu của
liên kết.
Ví dụ:

Các liên kết giữa các thực thể không phải lúc nào cũng liên kết giữa 2 kiểu
thực thể mà có thể thay đổi. Số lượng thực thể tham gia vào một mối liên kết
được gọi là bậc của liên kết. Bậc của liên kết thường gặp các dạng sau: Đệ quy,
bậc 2, bậc 3, …

33
Cơ sở dữ liệu

Mục đích của mô hình ER:


- Làm thống nhất quan điểm về dữ liệu của những người tham gia hệ thống:
người quản lý, người dùng cuối và người thiết kế hệ thống,
- Xác định các xử lý về dữ liệu cũng như các ràng buộc trên các dữ liệu,
- Giúp đỡ việc thể hiện cơ sở dữ liệu về mặt cấu trúc: Sử dụng thực thể và
các mối liên kết giữa các thực thể. Biểu diễn mô hình quan niệm thực thể bằng
một sơ đồ.
Tập hợp các ký hiệu được dùng trong mô hình ER:

35
Cơ sở dữ liệu

Dùng các hình vẽ quy ước và đặt vào các vị trí. Sau đó, nối các thành phần
trong mô hình lại với nhau. Sau khi vẽ sơ đồ có thể chuẩn hóa theo nguyên tắc
sau: nếu trong sơ đồ còn chứa: các thuộc tính lặp, nhóm lặp và các thuộc tính
phụ thuộc thời gian, khi đó sơ đồ chỉ còn các thực thể đơn và các thuộc tính đơn.

2.3 Ví dụ về mô hình liên kết thực thể (mô hình ER)


Trong phần này, chúng ta xem xét ví dụ về việc xây dựng mô hình ER cho
cơ sở dữ liệu quản lý đề án công ty. Trước tiên trong việc xây dựng và thiết kế
CSDL là xác định đầy đủ và phân tích các yêu cầu của bài toán. Kết quả này là
một tập hợp các ghi chép súc tích về các yêu cầu người sử dụng cũng như tình
trạng của nơi ta cần xây dựng cơ sở dữ liệu.
Giả sử rằng sau khi tập hợp các yêu cầu và phân tích, hoạt động của công ty
được ghi chép lại như sau:
Công ty được tổ chức thành các đơn vị. Mỗi đơn vị có một tên duy nhất,
một mã số duy nhất, một nhân viên cụ thể quản lý đơn vị. Việc nhân viên quản lý
đơn vị được ghi lại bằng ngày nhân viên đó bắt đầu quản lý. Một đơn vị có thể có
nhiều địa điểm. Nhân viên quản lý đơn vị là một người thuộc công ty.
Mỗi đơn vị thực hiện một số dự án. Một dự án có một tên duy nhất, một mã
số duy nhất, một địa điểm thực hiện và thời gian bắt đầu thực hiện dự án.
Với mỗi nhân viên trong công ty, ta lưu giữ lại thông tin như: Họ tên, Mã
số, địa chỉ, hệ số lương, lương (được tính dựa vào hệ số lương và mức lương cơ
bản hiện tại), giới tính, ngày sinh, ngoại ngữ (mỗi nhân viên có thể biết nhiều
ngoại ngữ). Một nhân viên chỉ làm việc cho một đơn vị nhưng có thể làm việc
trên nhiều dự án do nhiều đơn vị đó kiểm soát – thực hiện. Trong một đơn vị chỉ
cho phép tối đa 10 nhân viên dưới quyền quản lý của đơn vị đó. Chúng ta cần lưu
giữ lại số giờ làm việc của mỗi nhân viên trên một dự án nào đó. Mỗi nhân viên
có thể có một người giám sát trực tiếp, người đó cũng là một nhân viên.
Mỗi nhân viên có những người thân kèm theo. Những người này được
hưởng bảo hiểm theo nhân viên. Với mỗi người thân của nhân viên, chúng ta lưu
giữ Họ tên, giới tính, ngày sinh, tuổi, quan hệ với nhân viên.
2.3.1. Xác định các kiểu thực thể
Theo ghi chép ở trên, chúng ta xác định được các kiểu thực thể như sau:
- CÔNG TY không phải là một kiểu thực thể vì ở đây ta có một công ty duy
nhất.
- ĐƠN VỊ là một kiểu thực thể để mô tả các đơn vị - phòng ban cần quản lý
trong công ty.

37
Cơ sở dữ liệu

nào đó. Thuộc tính nhân viên là thuộc tính liên kết để chỉ ra thân nhân đó là của
nhân viên nào. Thuộc tính nhân viên là thuộc tính liên kết thể hiện sự ràng buộc
của một thân nhân tương ứng với một nhân viên.
2.3.3 Xác định các liên kết và kiểu liên kết
Giữa thực thể ĐƠN VỊ và DỰ ÁN có liên kết “kiểm soát” vì mỗi đơn vị
kiểm soát một số dự án, kiểu liên kết là liên kết một – nhiều.
Giữa thực thể NHÂN VIÊN và ĐƠN VỊ có liên kết “làm việc cho” vì mỗi
nhân viên chỉ làm cho một đơn vị, kiểu liên kết là nhiều – một.
Giữa thực thể NHÂN VIÊN và ĐƠN VỊ còn có kiểu liên kết một – một với
tên là “quản lý” vì một nhân viên thực hiện quản lý một đơn vị và một đơn vị có
một nhân viên quản lý. Liên kết “quản lý” có một thuộc tính là “ngày bắt đầu” vì
cần ghi lại ngày bắt đầu nhận quản lý đơn vị của một nhân viên.
Giữa thực thể NHÂN VIÊN và DỰ ÁN có mối liên kết “làm việc trên” và
kiểu liên kết là nhiều – nhiều vì một nhân viên là cho nhiều dự án và một dự án
được làm bởi nhiều nhân viên. Liên kết “làm việc trên” có một thuọc tính đi kèm
là “số giờ làm” vì cần phải ghi lại số giờ làm việc của một nhân viên trên một dự
án.
Giữa thực thể NHÂN VIÊN với thực thể NHÂN VIÊN có mối liên kết
“giám sát” và có kiểu là một – nhiều vì một nhân viên có thể giám sát một số
nhân viên khác nhau. Kiểu thực thể NHÂN VIÊN ở đây đóng hai vai trò khác
nhau: vai trò người giám sát và vai trò người bị giám sát.
Giữa thực thể NHÂN VIÊN và thực thể THÂN NHÂN có mỗi quan hệ một
– nhiều với tên là “có” và kiểu liên kết là liên kết phụ thuộc .
2.3.4 Xác định số lượng thực thể tham gia liên kết
Các mối liên kết giữa các thực thể trong bài toán không có sự ràng buộc về
số lượng tham gia trừ mối liên kết “làm việc cho” giữa NHÂN VIÊN và ĐƠN có
giới hạn số nhân viên tối đa tham gia vào đơn vị là 10 nhân viên.
2.3.5 Vẽ mô hình ER
Kết quả từ các phân tích trên ta thu được mô hình ER của bài toán Quản lý
đề án công ty như sau:

39
Cơ sở dữ liệu

Tập các thực thể trong các nhóm đó là một tập con của các thực thể trong tập
thực thể nhân viên, nghĩa là mỗi thực thể là thành viên của một trong những
nhóm này cũng là một nhân viên. Chúng ta gọi mỗi nhóm này là một lớp con của
kiểu thực thể NHÂNVIÊN. Kiểu thực thể NHÂNVIÊN được gọi là lớp cha của
các lớp con đó. Ta gọi quan hệ giữa lớp cha và một trong những lớp con của nó
là kiểu liên kết lớp cha/ lớp con. Kiểu liên kết lớp cha/ lớp con thường được gọi
là kiểu liên kết là một (IS_A). Chúng ta thường nói rằng một kỹ sư là một nhân
viên, một kỹ thuật viên là một nhân viên.
Chú ý rằng một thực thể thành viên trong lớp con cùng biểu diễn một thực
thể thực tại như một thành viên trong lớp cha, vì vậy, các thực thể thành viên
trong lớp con và các thực thể thành viên trong lớp cha là giống nhau, nhưng vai
trò của chúng hoàn toàn khác nhau. Khi chúng ta tạo một kiểu liên kết lớp cha/
lớp con trong hệ thống cơ sở dữ liệu, chúng ta có thể trình bày một thành viên
của lớp con như như là một đối tượng riêng biệt, một bản ghi riêng biệt kết hợp
với các thực thể của lớp cha của nó qua thuộc tính khoá. Kiểu liên kết lớp cha/
lớp con là một kiểu liên kết có tỷ số lực lượng 1: 1.
Một khái niệm quan trọng gắn với các lớp con là sự thừa kế kiểu. Kiểu của
một thực thể được xác định bằng các thuộc tính và các kiểu liên kết mà nó tham
gia. Vì mỗi thực thể thành viên trong lớp con cùng biểu diễn một thực thể thực
tại như thực thể trong lớp cha nên các giá trị của thuộc tính của nó trong lớp con
cũng phải giống như là giá trị của các thuộc tính của nó khi nó đóng vai trò là
một thành viên trong lớp cha. Thực thể này cũng được thừa kế các liên kết trong
lớp cha. Một lớp con với các thuộc tính riêng của nó cùng với tất cả các thuộc
tính và kiểu liên kết kế thừa được từ lớp cha có quyền được coi như là một kiểu
thực thể.
2.4.2 Chuyên biệt hóa
Chuyên biệt hóa là quá trình xác định tập hợp các lớp con của một kiểu
thực thể. Kiểu thực thể này được gọi là lớp cha trong chuyên biệt hoá. Tập các
lớp con tạo nên một chuyên biệt hoá được xác định dựa trên cơ sở một đặc trưng
phân biệt nào đó của các thực thể trong lớp cha. Ví dụ, tập các lớp con {THƯ
KÝ, KỸ SƯ, KỸ THUẬT VIÊN} là một chuyên biệt hoá của lớp cha NHÂN
VIÊN được xác định dựa trên kiểu công việc của các thực thể. Một kiểu thực thể
có thể có một số chuyên biệt hoá dựa trên các đặc trưng khác nhau. Ví dụ, một
chuyên biệt hoá khác của kiểu thực thể NHÂN VIÊN sinh ra tập các lớp con
{NHÂN VIÊN_BIÊN CHẾ, NHÂN VIÊN_HỢP ĐỒNG}. Trong chuyên biệt
hoá này, các thực thể được phân biệt dựa trên cơ sở hình thức trả tiền.
Biểu diễn chuyên biệt hóa: Một chuyên biệt hoá được biểu diễn trong sơ
đồ EER như sau: Các lớp con xác định một chuyên biệt hoá được nối bằng các

41
Cơ sở dữ liệu

• Thiết lập các kiểu liên kết riêng giữa mỗi lớp con và các kiểu thực thể
khác hoặc các lớp con khác.
2.4.3 Tổng quát hóa
Là quá trình đảo ngược của chuyên biệt hoá, trong đó ta bỏ qua sự khác
nhau giữa một số kiểu thực thể, xác định các đặc tính chung của chúng và tổng
quát hoá chúng thành một lớp cha của các kiểu thực thể đó. Ví dụ, ta có kiểu thực
thể XE CON với các thuộc tính (Mã_số, Số_giấy_phép, Giá, Tốc_độ_tối_đa,
Số_chỗ_ngồi) và kiểu thực thể XE TẢI với các thuộc tính (Mã_số,
Số_giấy_phép, Giá, Trọng_tải, Số_các_trục), các kiểu thực thể này có một số
thuộc tính chung, chúng có thể được tổng quát hoá thành kiểu thực thể với các
thuộc tính (Mã_số, Số_giấy_phép, Giá). Các kiểu thực thể XE CON và XE TẢI
trở thành các lớp con của lớp cha XE ÔTÔ. Như vậy, tổng quát hoá là quá trình
tổng quát một kiểu thực thể từ các kiểu thực thể cho trước.
Một tổng quát hoá được biểu diễn trong sơ đồ EER giống như là một
chuyên biệt hoá. Tổng quát là lớp cha còn chuyên biệt là các lớp con được sử
dụng để tạo nên lớp cha (hình dưới)

2.4.4 Mô hình EER


Mô hình EER có biểu diễn đồ hoạ giống như mô hình ER, nghĩa là các kiểu
thực thể (các lớp) được biểu diễn bằng các hình chữ nhật có ghi tên ở giữa, các
thuộc tính của chúng được biểu diễn bằng các hình ô van nối với hình chữ nhật.
Các kiểu liên kết được biểu diễn bằng các hình thoi và được nối với các kiểu thực
thể tham gia liên kết. Tại các hình thoi có ghi rõ các tỷ số lực lượng tham gia của
các kiểu thực thể tham gia vào kiểu liên kết. Ngoài ra, kiểu liên kết lớp cha/lớp
con được biểu diễn bằng một đường nối có thêm một ký hiệu tập con “⊂“ ở giữa
đường nối. Các lớp con trong một chuyên biệt được nối với một vòng tròn và

43
Cơ sở dữ liệu

12. Trình bày cách biểu diễn đồ hoạ của các mô hình ER và EER.
2.6 Một số câu hỏi trắc nghiệm ôn tập
Câu 1. Đâu là ký hiệu được dùng để biểu diễn thuộc tính suy dẫn trong mô
hình ER?
A. Hình elip nét đơn
B. Hình elip có nét đứt đơn
C. Hình elip nét đôi
D. Hình elip có nét đứt đôi
Câu 2. Mô hình liên kết thực thể mô tả chi tiết các thành phần gì?
A. Quan hệ giữa các thực thể
B. Tập thực thể
C. Tất cả các lựa chọn đều đúng
D. Thuộc tính của thực thể
Câu 3. Loại thực thể nào không tồn tại độc lập được mà phải phụ thuộc
vào một kiểu thực thể khác
A. Tập thực thể yếu
B. Cả hai loại trên đều sai
C. Tập thực thể mạnh
D. Cả hai loại trên đều đúng
Câu 4. Các bước thực hiện thiết kế CSDL làm gì?
A. Xác định thực thể và thuộc tính -> Liệt kê và lựa chọn thông tin -> xác
định mối quan hệ và thuộc tính quan hệ -> vẽ sơ đồ ER và xác định lực lượng
tham gia -> chuẩn hóa và rút gọn sơ đồ
B. Liệt kê và lựa chọn thông tin -> xác định thực thể và thuộc tính -> vẽ
sơ đồ ER và xác định lực lượng tham gia -> xác định mối quan hệ và thuộc tính
quan hệ -> chuẩn hóa và rút gọn sơ đồ
C. Liệt kê và lựa chọn thông tin -> xác định thực thể và thuộc tính -> xác
định mối quan hệ và thuộc tính quan hệ -> vẽ sơ đồ ER và xác định lực lượng
tham gia -> chuẩn hóa và rút gọn sơ đồ
D. Liệt kê và lựa chọn thông tin -> vẽ sơ đồ ER và xác định lực lượng
tham gia -> xác định thực thể và thuộc tính -> xác định mối quan hệ và thuộc
tính quan hệ -> chuẩn hóa và rút gọn sơ đồ
Câu 5. Đâu là phát biểu của thuộc tính đa trị của thực thể trong mô hình
liên kết thực thể?
A. Là thuộc tính có chứa một hoặc một vài giá trị cho một thực thể cụ thể
B. Là thuộc tính không thể chia nhỏ thành các phần riêng biệt nhỏ hơn

45
Cơ sở dữ liệu

B. Là thuộc tính xác định giá trị của thực thể


C. Là thuộc tính được nhập trực tiếp từ khi tạo ra thực thể
D. Là thuộc tính có giá trị duy nhất giúp phân biệt thực thể này với thực
thể khác
Câu 12. Ký hiệu được dùng để mô tả thuộc tính của thực thể
A. Hình elip nét đôi đơn với tên của thuộc tính
B. Hình elip nét đậm với tên của thuộc tính
C. Hình elip nét đơn với tên của thuộc tính
D. Hình elio nét đôi đậm với tên của thuộc tính
Câu 13. Thuộc tính của thực thể là gì?
A. Là sự liên kết giữa hai hay nhiều thực thể với nhau
B. Là mô hình mô tả về yêu cầu dữ liệu
C. Là những đặc tính riêng biệt mô tả đối tượng
D. Lất cả các phát biểu đều đúng
Câu 14. Các loại thực thể gồm?
A. Thực thể cụ thể
B. Cả hai loại đều đúng
C. Thực thể trừu tượng
D. Cả hai loại đều sai
Câu 15. Chọn phát biểu thuộc tính đơn của thực thể trong mô hình liên kết
thực thể?
A. Là thuộc tính không thể chia nhỏ thành các phần riêng biệt nhỏ hơn
B. Là thuộc tính có thể phân chia được thành các thành phần nhỏ hơn, mỗi
thành phần mang ý nghĩa độc lập
C. Là thuộc tính chỉ có thể nhận một giá trị duy nhất cho một thực thể cụ
thể
D. Là thuộc tính có chứa một hoặc một vài giá trị cho một thực thể cụ thể
Câu 16. Các kiểu liên kết giữa các thực thể trong mô hình ER?
A. Liên kết 1 - 1, M - N
B. Liên kết 1 - 1, 1 - N
C. Liên kết 1 - N, M - N
D. Liên kết 1 - 1, 1 - N, M - N
Câu 17. Ký hiệu được sử dụng cho tập thực thể mạnh là?
A. Hình chữ nhật nét đôi chứa tên thực thể
B. Hình chữ nhật nét đơn chứa tên thực thể

47
Cơ sở dữ liệu

D. Chọn đúng kiểu thực thể và mối quan hệ


Câu 24. Đâu là phát biểu của thuộc tính đơn trị của thực thể trong mô hình
liên kết thực thể?
A. Là thuộc tính có chứa một hoặc một vài giá trị cho một thực thể cụ thể
B. Là thuộc tính chỉ có thể nhận một giá trị duy nhất cho một thực thể cụ
thể
C. Là thuộc tính không thể chia nhỏ thành các phần riêng biệt nhỏ hơn
D. Là thuộc tính có thể phân chia được thành các thành phần nhỏ hơn, mỗi
thành phần mang ý nghĩa độc lập
Câu 25. Đâu là phát biểu của thuộc tính phức hợp của thực thể trong mô
hình liên kết thực thể?
A. Là thuộc tính có thể phân chia được thành các thành phần nhỏ hơn, mỗi
thành phần mang ý nghĩa độc lập
B. Là thuộc tính có chứa một hoặc một vài giá trị cho một thực thể cụ thể
C. Là thuộc tính chỉ có thể nhận một giá trị duy nhất cho một thực thể cụ
thể
D. Là thuộc tính không thể chia nhỏ thành các phần riêng biệt nhỏ hơn
Câu 26. Ký hiệu để mô tả thuộc tính đa trị là gì?
A. Hình elip nét đôi
B. Hình elip tô màu nét đôi
C. Hình elip nét đơn
D. Hình elip tô màu nét đơn
Câu 27. Thực thể là gì trong mô hình liên kết thực thể?
A. Là tập các thuộc tính để xác định đối tượng
B. Là một "vật" (cụ thể hay trừu tượng) trong thế giới thực, có sự tồn tại
độc lập và phân biệt với các đối tượng khác
C. Là các mối liên hệ giữa đối tượng này với đối tượng khác trong thực tế
D. Lất cả các phát biểu đều sai
Câu 28. Ký hiệu được dùng để mô tả quan hệ giữa các thực thể trong mô
hình ER?
A. Hình thoi nét đứt
B. Hình thoi nét đơn
C. Hình thoi nét đậm
D. Hình thoi nét đôi
Câu 29. Kiểu liên kết giữa thực thể mạnh và thực thể yếu là?

49
Cơ sở dữ liệu

Mỗi nhân viên của cửa hàng được quản lý các thông tin gồm mã nhân viên,
họ tên, ngày sinh, điện thoại, lương. Mỗi nhân viên được phân biệt nhau bởi mã
số nhân viên. Mỗi nhân viên có thể có nhiều số điện thoại.
Mỗi sản phẩm có mã sản phẩm, tên sản phẩm, đơn vị tính, hãng sản xuất,
giá và thuế của sản phẩm đó. Trong đó thuế phải nộp theo quy định nhà nước là
10%.
Mỗi lần khách hàng mua hàng sẽ có một hoá đơn. Mỗi hoá đơn có các
thông tin gồm số hoá đơn, ngày lập hoá đơn, tổng trị giá của hoá đơn đó. Mỗi
hoá đơn phải do nhân viên bán hàng của cửa hàng lập và có thể bán nhiều sản
phẩm cùng lúc.
Mỗi hoá đơn có thể mua nhiều mặt hàng, được kê chi tiết trong bảng chi tiết
hoá đơn trong đó có ghi rõ số lượng và thành tiền cụ thể của từng mặt hàng.
Bài số 2: Khảo sát hệ thống quản lý lịch dạy của các giáo viên và lịch học
của các lớp trong một trường đại học thu được thông tin cần quản lý như sau:
Mỗi giáo viên có thông tin họ và tên giáo viên, số điện thoại, địa chỉ, trình
độ, hệ số lương, lương, ngoại ngữ. Mỗi giáo viên chỉ thuộc sự quản lý hành chính
của một khoa nào đó và được phân biệt với nhau thông qua mã giáo viên. Một
giáo viên có thể biết nhiều ngoại ngữ.
Trong trường có nhiều khoa khác nhau. Mỗi khoa có một mã khoa, tên
khoa, số điện thoại, địa chỉ khoa. Các khoa có mã và tên duy nhất.
Mỗi môn học có một mã môn học, tên môn học, số đơn vị học trình và học
kỳ.
Mỗi lớp có một mã lớp, tên lớp, sĩ số lớp. Mỗi lớp có thể học nhiều môn
nhưng chỉ thuộc sự quản lý hành chính của một khoa nào đó. Mỗi lớp học được
phân công học tại một phòng nào đó, nhưng trong một phòng có thể có nhiều lớp
học ở các ca khác nhau.
Các phòng học có thông tin về số phòng, chức năng của phòng (lý thuyết,
thực hành hay thí nghiệm) và khả năng chứa (số sinh viên tối đa học trong
phòng).
Ứng với mỗi lớp thì mỗi môn học chỉ được phân cho một giáo viên. Một
giáo viên có thể dạy nhiều môn học và dạy nhiều lớp. Tuỳ theo từng lớp và từng
môn học mà mỗi lớp sẽ học ở các phòng khác nhau.
Bài số 3: Khảo sát hệ thông hệ thống tiêu thụ và sản xuất dược phẩm, người
ta thu được các thông tin sau:
Với mỗi bệnh nhân cần quản lý tên bệnh nhân, tuổi bệnh nhân, địa chỉ. Mỗi
bệnh nhân được phân biệt với nhau bởi mã bệnh nhân.

51
Cơ sở dữ liệu

cần thông tin: Tên, địa chỉ , SĐT, học vị, chuyên ngành. Mỗi giáo viên được xác
định thông qua mã giáo viên.
Mỗi đề tài có thể do 1, 2, 3 sinh viên cùng thực hiện. SV có điểm TB<5 sẽ
phải bảo vệ lại với khóa sau và chỉ được bảo vệ tối đa 2 lần.
Bài số 5: Khảo sát hệ thống quản lý “trường học”, thu được các thông tin
sau:
Trường được chia thành các trường con, như: Trường Khoa học tự nhiên,
Trường khoa học xã hội, Trường công nghệ, …. Mỗi trường có một hiệu trưởng
quản lý, mỗi hiệu trưởng quản lý một trường. Các trường được phân biệt với
nhau thông qua mã trường và cần xác định các thông tin như địa chỉ, năm thành
lập, email và điện thoại liên lạc. Với mỗi trường có nhiều đường điện thoại sử
dụng được.
Mỗi trường có nhiều khoa khác nhau. Mỗi khoa chỉ thuộc về một trường.
Thông tin về Khoa gồm mã khoa, tên khoa, địa chỉ, số điện thoại.
Mỗi khoa cung cấp nhiều môn học, mỗi môn học gồm có tên môn học, mã
số, số đơn vị học trình, trình độ.
Mỗi môn học có thể có nhiều học phần. Mỗi học phần được lưu giữ bằng
các thông tin: mã học phần, tên môn học, tên giáo viên dạy, học kỳ. Mỗi sinh
viên phải học nhiều học phân. Mỗi giáo viên có thể dạy nhiều nhất là 4 học phần
và cũng có thể không dạy học phần nào.
Mỗi khoa có nhiều giáo viên làm việc, nhưng mỗi giáo viên chỉ làm việc
cho một khoa. Mỗi một khoa có một chủ nhiệm khoa, đó là một giáo viên.
Mỗi một khoa có nhiều sinh viên, mỗi sinh viên chỉ thuộc về một khoa.
Thông tin về mỗi sinh viên gồm: mã sinh viên, họ tên, địa chỉ, ngày sinh, giới
tính, lớp, tên khoa và chế độ đào tạo.
Sau mỗi học kỳ sẽ có một danh sách điểm để phân loại, nó gồm các thông
tin: mã sinh viên, mã học phần, điểm bằng chữ, điểm bằng số.
Bài số 6: Yêu cầu sinh viên tự tìm các yêu cầu của bài toán quản lý thư
viện, quản lý nhà hàng ăn uống.

53

You might also like