Object-CÁC ĐỐI TƯỢNG CỦA CDM Thực thể Entity Kiểu Quan hệ Relationship type Bản số Cardinality Thuộc tính Attribute Khóa ứng viên và khóa chính.. Ví dụ: kiểu thực thể Nhân viê
Trang 21 Mô hình dữ liệu quan niệm (CDM)
2 Chuyển CDM sang PDM
3 Minh họa CDM & PDM
Nội Dung:
Trang 3MÔ HÌNH DỮ LIỆU QUAN NIỆM
(Conceptual Data Model - CDM)
CDM cho phép:
Mô tả tổ chức dữ liệu dưới dạng sơ đồ quan hệ thực thể (ERD-Entity Relationship Diagram).
Kiểm tra sự hợp lệ của việc thiết kế dữ liệu.
Sinh mô hình dữ liệu vật lý (PDM-Physical Data Model).
Sinh mô hình hướng đối tượng (OOM- Oriented Model).
Trang 4Object-CÁC ĐỐI TƯỢNG CỦA CDM
Thực thể (Entity)
Kiểu Quan hệ (Relationship type)
Bản số (Cardinality)
Thuộc tính (Attribute)
Khóa ứng viên và khóa chính.
Miền trị của thuộc tính (Domain)
Tổng quát hóa/chuyên biệt hóa.
Trang 5Thực thể (Entity)
Thực thể: là một đối tượng hay một khái niệm
trong thế giới thực được xác định bởi tổ chức và
Trang 6 Thực thể mạnh (strong entity): là thực thể mà sự
tồn tại của nó không phụ thuộc vào thực thể nào khác.
Trang 7Các kiểu quan hệ (Relationship Types)
Trang 8Các kiểu quan hệ (Relationship Types)
Trang 9Bản số (Cardinality)
Trang 10Bản số (Cardinality)
Trang 11 Mỗi thuộc tính: sẽ mô tả một tính chất của một kiểu
thực thể.
Ví dụ: kiểu thực thể Nhân viên được mô tả bởi các
thuộc tính như mã nhân viên, họ tên, ngày sinh và
giới tính.
Thuộc tính (Attribute)
Miền trị của thuộc tính (Attribute domain) là một
tập hợp các giá trị có thể gán được cho một thuộc tính Chẳng hạn như: thuộc tính giới tính chỉ có thể
có một trong hai giá trị là nam hay nữ.
Trang 12Các kiểu thuộc tính (Attribute Types)
Thuộc tính đơn,
Thuộc tính phức hợp,
Thuộc tính đơn trị hay đa trị,
Và cũng có thể là thuộc tính dẫn xuất.
Trang 13Các kiểu thuộc tính (Attribute Types)
Thuộc tính đơn (Simple attribute): là một thuộc tính
tạo thành bởi một thành phần tồn tại độc lập.
Ví dụ: mã nhân viên, giới tính, ngày sinh.
Thuộc tính phức hợp (Composite attribute): là một
thuộc tính tạo thành bởi nhiều thành phần tồn tại độc lập.
Ví dụ: địa chỉ của nhân viên.
Trang 14Các kiểu thuộc tính (Attribute Types)
Thuộc tính đơn trị (Single-valued attribute): là một
thuộc tính chỉ chứa một giá trị cho mỗi thực thể.
Ví dụ: Mã nhân viên là đơn trị vì mỗi nhân viên chỉ có một
mã nhân viên.
Thuộc tính đa trị (Multi-valued attribute): là một
thuộc tính có thể chứa nhiều giá trị cho mỗi thực thể.
Ví dụ: Tel_No của chi nhánh có thể chứa nhiều số điện
thoại, vì vậy nó là thuộc tính đa trị
Trang 15 Thuộc tính dẫn xuất (Derived attribute): là thuộc tính
có giá trị dẫn xuất từ giá trị của một thuộc tính
hoặc một tập thuộc tính có liên quan, không cần
thiết phải nằm trong cùng thực thể.
Ví dụ: thuộc tính Age (tuổi) là thuộc tính dẫn xuất ra từ
thuộc tính ngày sinh.
Các kiểu thuộc tính (Attribute Types)
Trang 16 Khóa ứng viên (candidate key): là một thuộc tính hay
một tập hợp các thuộc tính có thể xác định duy nhất một thực thể của một kiểu thực thể.
Khóa chính (primary key): là một khóa ứng viên
được chọn là khóa chính.
Khóa ứng viên & Khóa chính
Trang 17 Tổng quát hóa (generalization)
Chuyên biệt hóa (specialization)
Tổng quát hóa-chuyên biệt hóa
Trang 18CÁC BƯỚC XÂY DỰNG CDM
B1: Xác định các kiểu thực thể:
B2: Xác định các kiểu quan hệ và bản số.
B3: Xác định các thuộc tính và miền trị.
B4: Xác định các khóa ứng viên và khóa chính.
B5: Tổng quát hóa/Chuyên biệt hóa các thực thể
(bước tùy chọn).
B6: Vẽ sơ đồ ERD.
Trang 19Mô tả: Nhà học A
Ví DỤ XÂY DỰNG CDM
có nhiều tầng , mỗi tầng có nhiều phòng và trong mỗi phòng được trang bị một số loại thiết bị cần thiết Mỗi tầng có số thứ tự tầng và diễn giải Mỗi phòng có số thứ tự
phòng, sức chứa của phòng và được trang bị một số loại thiết bị cần thiết (như bàn, ghế, quạt, máy chiếu,…) Mỗi loại thiết bị
được đánh một mã thiết bị và có một diễn giải cho loại thiết bị
đó Một loại thiết bị có thể được trang bị cho một phòng hay
không được trang bị cho phòng nào cả, một phòng được trang bị
ít nhất một loại thiết bị nào đó
Ví dụ: cách đánh số thứ tự phòng như: phòng 1 ở tầng 1 được
đánh stt là 1.1, phòng 2 ở tầng 1 được đánh stt là 1.2, phòng 3 ở
Trang 20Ví DỤ XÂY DỰNG CDM
Trang 21Ví DỤ XÂY DỰNG CDM
Trang 22CHUYÊN CDM SANG PDM
Qui tắc 1: Thực thể chuyển thành bảng
- Mỗi thực thể trở thành một bảng với tên bảng là tên thực thể và các thuộc tính của thực thể trở thành các thuộc tính của bảng tương ứng.
- Các thuộc tính khóa chính của thực thể cũng trở thành các thuộc tính khóa chính của bảng tương ứng.
- Các domain và các điều kiện ràng buộc (Null hay Not Null) của các thuộc tính vẫn không đổi khi chuyển sang
Trang 23CHUYÊN CDM SANG PDM
Qui tắc 2: Quan hệ Many – to – Many bảng mới
- Các quan hệ Many – to – Many sẽ sinh ra một bảng tương ứng với tên bảng là tên của quan hệ tương ứng.
- Khóa chính của bảng mới sinh ra gồm các thuộc tính khóa chính của 2 thực thể tương ứng với quan hệ đó.
- Các tham chiếu cũng được sinh ra tương ứng, cụ thể
ta có thể xem xét các trường hợp sau:
Trang 24CHUYÊN CDM SANG PDM
Trang 25CHUYÊN CDM SANG PDM
Qui tắc 3: Quan hệ One-to-Many sẽ trở thành một tham chiếu
- Một quan hệ One-to-Many sẽ trở thành một tham chiếu “bảng con đến bảng cha”.
- Nếu một quan hệ One-to-Many dạng phụ thuộc hàm thì các thuộc tính khóa chính của thực thể bên 1 không những trở thành khóa
Trang 26CHUYÊN CDM SANG PDM
Trang 27CHUYÊN CDM SANG PDM
Qui tắc 4: Đưa các quan hệ to-one về dạng
one-to-many và áp dụng qui tắc 3.
Trang 29MINH HỌA CDM & PDM
CDM:
PDM:
Trang 30MINH HỌA CDM & PDM
CDM:
Trang 31MINH HỌA CDM & PDM
CDM:
PDM:
Trang 32Thảo luận:
Trang 33Thảo luận:
Vấn đề ???
Trang 34Thảo luận:
Vấn đề ???
Trang 35Thảo luận:
Vấn đề ???
Trang 36ATT RIBUT ENAME
YESNO ALIAS COMMENT
MINCARD MAXCARD DEPENDENT_ID DOMINANT_ID DESCRIPTION
<pi> SIDENO CARDINALITY CARDINALITY YESNO YESNO COMMENT
INHTYPE
<pi> INHERITANCENAME INHERITANCETYPE
<M>
<M>
Trang 37PDM of AutoModel
FK_RELATION_RELATIONS_RELATION 1 *
<pk,fk2>
<pk>
<fk1>
not null not null not null not null not null not null null null RELATIONSHIP
REL_NAME COMMENT
text text
<pk> not null null
RELATIONSHIP_SIDE REL_NAME
SIDENO ENTITYNAME MINCARD MAXCARD DEPENDENT_ID DOMINANT_ID DESCRIPTION
text text text text text text text text
<pk,fk2>
<pk>
<fk1>
not null not null not null not null not null not null not null null
INHERITANCE INHNAME
ENTITYNAME INHTYPE
text text text
<pk>
<fk>
not null not null not null
ENTITY TYPE ENTITYNAME
ALIAS COMMENT
text text text
<pk> not null null null
Thảo luận:
Trang 38HAN UNIVERSITY
Trang 39HAN UNIVERSITY
Trang 40Cám ơn!!!
Câu hỏi & thảo luận