Tìm hiểu cơ sở dữ liệu hướng đối tượng
Lương Văn Dũng
Đỗ Văn Khang
1
2
Giới thiệu
1. Mở đầu
2. Các khái niệm cơ sở:
-
OODM,
-
OODB,
-
OODBM
3. Thiết kế CSDL hướng đối tượng
3
Mở đầu
Các ứng dụng CSDL tiên tiến
Tính yếu của các hệ CSDL quan hệ
Tiếp cận mô hình hướng đối tượng
4
Các ứng dụng CSDL tiên tiến
Thiết kế có sự trợ giúp của máy tính
Công nghệ phần mềm có sự trợ giúp của máy tính
Các hệ thông tin văn phòng
OODM (Object-Oriented Data Model): Một mô
hình dữ liệu mà ngữ nghĩa của các đối tượng được
hỗ trợ cho lập trình hướng đối tượng.
OODB (Object-Oriented DataBase): Một tập hợp
bền vững và có khả năng chia sẻ của các đối
tượng được định nghĩa bởi OODM.
OODBMS (Object-Oriented DataBase Management
System): quản lý một OODB
8
OODM
Mô hình hoá các đối tượng
Đối tượng (Object): Bộ sưu tập các yếu tố DL có
cấu trúc, được đồng nhất bởi một dẫn trỏ (tham
chiếu) duy nhất
Mọi đối tượng đều được đặc trưng bằng một tên duy
nhất, gọi là OID (Object Indentifier)
Hai đối tượng là đồng nhất (O
1
==O
2
) nếu chúng có
cùng OID
Hai đối tượng là bằng nhau (O
1
đơn thể và mở rộng được.
Ví dụ: các con người, các hình tròn,
11
OODM
Mô hình hoá tính động
Phương pháp: thao tác liên kết với một lớp, xử lý
hay đưa trả lại trạng thái của một đối tượng hay
một phần của đối tượng thuộc lớp
Một đối tượng được thao tác bởi phương pháp của lớp
và được thấy qua các phương pháp: nguyên lý bọc kín
Phương pháp có thể áp dụng được cho nhiều đối tượng
thuộc các lớp khác nhau: đa lớp dùng để mô hình
hoá các mối liên kết giữa các lớp
12
OODM
Mô hình hoá tính động
Ví dụ:
class cửa
public: {các thuộc tính thấy được từ bên ngoài lớp}
trạng thái: mở, đóng
chiều cao: real {kiểu thực}
chiều rộng: real
chiều dầy: real
private:
trục: vectơ
góc: real
OODM
Mô hình hoá tính động
Con quỉ (demon): Là thao tác trên các đối tượng được khởi phát
bởi hệ thống khi có xuất hiện một điều kiện đặc biệt.
16
OODM
Mô hình hoá tính động
Ví dụ: Con quỉ có thể được thêm vào lớp cửa nhằm duy trì tự động
trạng thái của nó:
if góc > 10
o
then trạng thái = mở
17
OODM
Các liên kết ngữ nghĩa giữa các lớp
Sự tổng quát hoá: liên kết phân cấp giữa hai lớp xác
định rằng các đối tượng của lớp trên tổng quát hơn các
đối tượng của lớp dưới, các đối tượng của lớp dưới có
các tính chất đầy đủ và tinh tế hơn
Ví dụ:
* Con người
- Tên
- Nơi làm việc
* Nhân viên
* Người thất nghiệp
- Nơi làm việc = null
* Nhân viên thường
* Tam giác vuông cân
- diện tích {tính kế thừa hai hàm tính diện tích
cần được phân biệt}
*Tam giác cân
- diện tích
21
OODM
Các liên kết ngữ nghĩa giữa các lớp
Các mô hình đối tượng thường phân biệt các tính
chất được phân chia bởi nhiều lớp và nhóm hợp
chúng trong những lớp đặc biệt gọi là các mối liên
kết
Mối liên kết là liên hệ cấu trúc cho phép liên kết các
lớp đối tượng với nhau bằng các tính chất phân chia
Ví dụ: “Người” và “Sách” là hai lớp gộp một số tính
chất (Tên, , Tên sách, ), thì có thể định nghĩa
mối liên kết Tác giả của như sau:
Người → Tác giả của → Sách
22
OODM
Tổ chức các nhóm đối tượng
Tác tử xây (constructor): lớp cấu trúc, cho phép áp
đặt một cấu trúc lên một tập đối tượng và định
nghĩa các tính chất cấu trúc đa trị
Các tác tử xây:
Mô tả các lớp. Mỗi lớp bao gồm các tính chất (tuỳ theo tình hình được tổ
chức thành các nhóm bởi các toán tử xây) và các phương pháp.
Mô tả các mối liên kết giữa các lớp.
25
OODM
Lược đồ đối tượng của CSDL rượu vang
Đối tượng
Đồ uống
Người Đã-uống
SH {số hiệu}
SL {số lượng}
Độ-rượu
Vùng
SBH {số hiệu BH}
Tên
Địa chỉ
Tuổi
Loại {Ngày-
tháng, SL tiêu thụ,
Trạng thái}
Uống gì (Đồ uống)
Ai-uống(Người)
SL
Ngày-tháng
Vùng-nho
Niên-hiệu
Chất lượng
Tên
Mầu