Bài giảng Hệ quản trị cơ sở dữ liệu hướng đối tượng - Phạm Thị Ngọc Diễm Bài giảng Hệ quản trị cơ sở dữ liệu hướng đối tượng nhằm trình bày về sự phát triển của hệ quản trị cơ sở dữ liệu và các ứng dụng, ưu và nhược điểm của hệ quản trị cơ sở dữ liệu quan hệ, tiếp cận hướng đối tượng, giới thiệu về OODM và OODBMS, ưu và nhược điểm của OODM và OODBMS.
Trang 1Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Ngôn ngữ định nghĩa đối tượng
ODL - Object Definition Language)
Phạm Thị Ngọc Diễm
ptndiem@cit.ctu.edu.vn
Bộ môn HTTT Khoa CNTT&TT - Đại học Cần Thơ
Tháng 12 năm 2012
Trang 2Các kiểu dữ liệu ODL Định nghĩa đối tượng
Module
Ví dụNội dung
1 Giới thiệu
2 Các kiểu dữ liệu ODL
3 Định nghĩa đối tượng
Trang 3Là ngôn ngữ chuẩn cho phép định nghĩa cấu trúc cho CSDL
Trang 4Là ngôn ngữ chuẩn cho phép định nghĩa cấu trúc cho CSDL
Trang 5Là ngôn ngữ chuẩn cho phép định nghĩa cấu trúc cho CSDL
Trang 6Các kiểu dữ liệu ODL Định nghĩa đối tượng
Module
Ví dụGiới thiệu ODL
Là ngôn ngữ chuẩn cho phép định nghĩa cấu trúc cho CSDL
HĐT do ODMG đề nghị
Đặc điểm : độc lập giữa DDL và DML
DDL : ODL.
DML: C++, Java, Smalltalk,
Mở rộng cú pháp IDL của OMG/CORBA (Common Object
Request Broker Architecture)
Trang 7Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụCác kiểu dữ liệu ODL
ODL phân biệt hai kiểu dữ liệu : literal và đối tượng (object)
Kiểu Literal
Kiểu nguyên thủy :
integer, float, character, character string, boolean.
Kiểu Constructor
Liệt kê ENUM Cấu trúc STRUCT Tập hợp SET, BAG, LIST, ARRAY Mỗi kiểu Literal được đặc trưng bởi giá trị của nó.
=> L1 và L2 bằng nhau nếu giá trị của chúng bằng nhau
Trang 8Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụĐịnh nghĩa kiểu literal
- Typedef : cho phép định nghĩa các kiểu literal, ví dụ:
TYPEDEF int Franc, Euro;
Trang 9Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Nội dung
3 Định nghĩa đối tượng
Trang 10Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Định nghĩa Interface
Interface : đặc tả của một kiểu, có thể có các thành phần:
Kế thừa đơn hoặc đa
Thùng chứa (population) EXTENT <populationName>
Khóa KEY <key1 [; key2 ; ]>
Thuộc tính ATTRIBUTE <type> <AttributeName>;
Quan hệ và quan hệ đảo:
RELATIONSHIP <type> <relationshipName>
Trang 11Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Ví dụ Interface I
Cho CSDL được cho bởi sơ đồ sau :
=> Định nghĩa cấu trúc của CSDL ???
Trang 12Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Ví dụ Interface II
Trang 13Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Nội dung
3 Định nghĩa đối tượng
Trang 14Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Các kiểu quan hệ giữa hai lớp
Có 3 kiểu quan hệ :
một - một (1 - 1)
một - nhiều (1 - n)
nhiều - nhiều (n - m)
Trang 15Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Định nghĩa các kiểu quan hệ
Trang 16Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Kế thừa
Khóa và Thùng chứa
Nội dung
3 Định nghĩa đối tượng
Trang 17Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Trang 18Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Kế thừa
Khóa và Thùng chứa
Đa kế thừa
Trang 19Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Kế thừa
Khóa và Thùng chứa
Nội dung
3 Định nghĩa đối tượng
Trang 20Giới thiệu Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Khóa gồm nhiều thuộc tính ???
Khóa ứng viên : định nghĩa nhiều khóa ứng viên
Trang 21Giới thiệu Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Khóa gồm nhiều thuộc tính ???
Khóa ứng viên : định nghĩa nhiều khóa ứng viên
Trang 22Giới thiệu Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Khóa gồm nhiều thuộc tính ???
Khóa ứng viên : định nghĩa nhiều khóa ứng viên
Trang 23Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Khóa gồm nhiều thuộc tính ???
Khóa ứng viên : định nghĩa nhiều khóa ứng viên
Trang 24Các kiểu dữ liệu ODL
Định nghĩa đối tượng
Module
Ví dụ
Định nghĩa Interface Bản số trong ODL
Kế thừa
Khóa và Thùng chứa
Định nghĩa thùng chứa
Extent = định nghĩa một tập các thể hiện của interface/lớp
Được sử dụng bởi OQL trong mệnh đề FROM
Trang 25Module = Nhóm lại tất cả trong cùng một không gian tên
Trang 26Các kiểu dữ liệu ODL Định nghĩa đối tượng
Trang 28Các kiểu dữ liệu ODL Định nghĩa đối tượng
Module
Ví dụ
Ví dụ III