Tài liệu môn Hệ quản Trị CSDL
Trang 1CHƯƠNG 2
Mô hình quan hệ thực thể
(Entity Relationship Model – ER Model)
Trang 2Quá trình thiết kế CSDL
Trang 3Mô hình liên kết
Mô hình liên kết – – thực thực thể thể ER ER
(Entity
(Entity Relationship Relationship Model) Model)
niệm
Biểu diễn trừu tượng cấu trúc của CSDL
Lược đồ liên kết thực thể
(Entity-Relationship Diagram) có 3 phần tử cơ
Relationship Diagram) có 3 phần tử cơ
bản
Tập thực thể (Entity Set)
Tập thực thể (Entity Set) Thuộc tính (Attribute)
Trang 4Mô
Mô hình hình ER ER
Mô hình ER như 1 công cụ để trao đổi ý
tưởng giữa nhà thiết kế và người dùng
cuối trong giai đoạn phân tích Nó độc lập với DBMS và quá trình hiện thực database
Trang 5Ví dụ
Trang 6Thực thể Thực thể Entity Entity
Thực thể là loại đối tượng mà ta có thông tin
về chúng, phân biệt giữa chúng và những
loại đối tượng khác, chúng thường có một
Trang 7Cách đặt tên và ký hiệu
Mỗi kiểu thực thể phải có một tên gọi,
nên là danh từ số ít và viết chữ hoa
Thể hiện (instance) là một trường hợp cụ ệ ( ) ộ g ợp ụthể của thực thể: Nguyễn văn A
Ký hiệu của các kiểu thực thể
Ký hiệu của các kiểu thực thể
Trang 8Ví dụ thực thể mạnh/yếu
Dependent_Name Employee_ID Employee_Name
BirthDate
Trang 9Thuộc tính Thuộc tính attribute attribute
Mỗi kiểu thực thể có 1 số thuộc tính
Thuộc tính là đặc tính của 1 kiểu thực thể
hay 1 mối liên kết
Ví dụ: kiểu thực thể STUDENT có các thuộc tính như Student_ID, Student_Name, _ , _ ,
Address, Major
STUDENT Student_ID, Student_Name,…
Trang 10Các kiểu thuộc tính
Thuộc tính đơn (simple attribute): là thuộc tính không thể phân nhỏ được
Ví dụ: Color, Weight, HorsePower
Ví dụ: Color, Weight, HorsePower
Thuộc tính phức hợp (composite
attribute): là thuộc tính có thể phân thành
attribute): là thuộc tính có thể phân thành nhiều thành phần
Ví dụ: Thuộc tính Address bao gồm các
Ví dụ: Thuộc tính Address bao gồm các
thành phần Street, District, City
Trang 11Các kiểu thuộc tính (tt)
Thuộc tính đơn trị (single valued
attribute)
Thuộc tính đa trịThuộc tính đa trị (multivalued attribute):(multivalued attribute):
có thể có nhiều hơn một trị cho một thể
hiện của thực thểệ của t ực t ể
Ví dụ: Thực thể COURSE có thuộc tính
Teacher đa trị một môn học có thể được
Teacher đa trị, một môn học có thể được dạy bởi nhiều hơn 1 thầy cô
Trang 12Các kiểu thuộc tính (tt)
Thuộc tính khóa: là 1 thuộc tính hoặc 1 tổ
hợp các thuộc tính xác định được các thể hiện (instance) riêng biệt của 1 kiểu thực ể
thể
Ví dụ: Student_ID là thuộc tính xác định
của kiểu thực thể STUDENT
Trang 14Thuộc tính xác định
Thuộc tính dẫn xuất Years_Employed
Thuộc tính đa trị
Trang 15Giá trị của thuộc tính
Kiểu dữ liệu (data type) và Miền giá trị
của thuộc tính (domain)
Kiểu chuỗi (string)
ể
Kiểu số nguyên (integer)
Kiểu số thực …
Ví dụ thực thể NHANVIEN có các thuộc tính
Họ tên (hoten: string[20]) ọ ( g[ ])
Ngày sinh (ns: date)
Trang 16Mối liên kết Mối liên kết Relationship Relationship
liên quan giữa một hay nhiều kiểu thực
thể với nhau Tên liên kết là một động từ
Trang 17Liên kết một ngôi (Unary relationship)
Là mối liên kết giữa các thể hiện của cùng
Trang 18Vai trò (Role)
Đôi khi một thực thể xuất hiện nhiều hơn
1 lần trong mối quan hệ
Để phân biệt, nên tạo role (nhãn) trên cácĐể phân biệt, nên tạo role (nhãn) trên các cạnh nối giữa mối quan hệ và thực thể
EMPLOYEE
Nhân viên
EMPLOYEE Manages
Trang 19Liên kết hai ngôi (Binary relationship)
Là mối liên kết giữa hai kiểu thực thể
STUDENT Registers for COURSE
Trang 20Liên kết ba ngôi (Ternary relationship)
Là mối liên kết giữa 3 kiểu thực thể
PART
Trang 21Lượng số của mối liên kết (Cardinality)
Lượng số là số thể hiện thực thể tham gia
vào liên kết
Lượng số tối thiểu (minimum cardinality)
Lượng số tối thiểu (minimum cardinality)
Lượng số tối đa (maximum cardinality)
Trang 22Lượng số của mối liên kết (Cardinality)
Nếu lượng số tối thiểu là 0 được gọi là lượng số
Trang 23Ký hiệu của lượng số
Trang 26Dữ liệu phụ thuộc thời gian (Time
(Time dependent dependent Data) Data)
Đơn giá (Unit price) là 1 trong những thuộc tính
ẩ của sản phẩm (Product)
Nếu chỉ quan tâm đến giá cả hiện thời thì q g ệ Price
là 1 thuộc tính đơn trị
Nếu giá cả ảnh hưởng đến kế toán hóa đơn
Nếu giá cả ảnh hưởng đến kế toán, hóa đơn,…
thì cần biết 1 chuỗi giá cả kèm theo ngày giờ bị ảnh hưởng bởi giá cả đó Æ Price là 1 thuộc tính
ảnh hưởng bởi giá cả đó Æ Price là 1 thuộc tính
đa trị
Trang 27Dữ liệu phụ thuộc thời gian
Price Effective_Date
PRODUCT
Trang 28Xây dựng kiểu thực thể từ các quy tắc nghiệp vụ g ệp ụ
Xét quy tắc nghiệp vụ (business rule) sau:q y g ệp ụ ( )
“Mỗi kỹ sư dùng chỉ 1 sổ ghi chép cho 1
đề án Những kỹ sư khác nhau sẽ dùng
đề án Những kỹ sư khác nhau sẽ dùng
những sổ ghi chép khác nhau khi làm việc cho cùng một đề án Không có kỹ sư nào
cho cùng một đề án Không có kỹ sư nào
dùng cùng một sổ ghi chép cho nhiều đề
án khác nhau”
án khác nhau
Trang 29Ràng buộc lượng số của liên kết ba ngôi g
Trường hợp liên kết 1-1-1g ợp
ENGINEER
Trang 30Quá trình thiết kế mô hình dữ liệu ý niệm
Bước 1: Nhận dạng các kiểu thực thể
Bước 2: Nhận dạng các kiểu liên kết (một số
liên kết liên quan tới thực thể)
Bước 3: Nhận dạng các thuộc tính của các kiểu thực thể và các mối liên kết
Bước 4: Nhận dạng thuộc tính xác định cho
mỗi kiểu thực thể
B ớ 5 Vẽ đồ ER
Bước 5: Vẽ sơ đồ ER
Trang 31Các lưu ý
Gắn thuộc tính thích hợp
Loại bỏ mối liên kết thừa
Trang 33Ví dụ ‘Quản lý đề án công ty’
Cty có nhiều đơn vị, mỗi đơn vị có tên duy nhất,
mã đơn vị duy nhất, một trưởng phòng và ngày
nhận chức Mỗi đơn vị có thể ở nhiều địa điểm khác nhau.
Dự án có tên duy nhất mã duy nhất do 1 một
Dự án có tên duy nhất, mã duy nhất, do 1 một
phòng ban chủ trì và được triển khai ở 1 địa điểm.
Nhân viên có mã số, tên, địa chỉ, ngày sinh, giới
tí h à lươ Mỗi hâ iê là iệ ở 1 hò
tính và lương Mỗi nhân viên làm việc ở 1 phòng
ban, tham gia vào các đề án với số giờ làm việc
khác nhau Mỗi nhân viên đều có một người quản
lý trực tiếp.
Trang 34Bài tập về thư viện
Trang 35Bài tập về trường học
Trang 36Bài tập về nhà
Xem ứng dụng mẫu trang 67 của sách
Làm tất cả bài tập chương 3 giáo trình