http://hendroagungs.blogspot.co.id
Objek Oriented Database
Basis Data
Perkembangan Model data
Sejarah
• 1970-1980 berkembangnya pemograman
berorientasi objek
• OODB atau ODBMS dirancang untuk bekerja
pada bahasa pemrograman berorientasi objek
seperti Java, C++ dan lain-lain.
• Bila kita ingin menyimpan objek pada program
Java atau C++ ke dalam sebuah sistem basis
data, kita dapat menggunakan basis data yang
berorientasi kepada objek (ODBMS).
Pengenalan Objek
• Sama seperti entitas, objek dinyatakan
dengan kt benda.
• Obyek dalam ‘software analysis & design’
adalah sesuatu berupa konsep (concept),
benda (thing), dan sesuatu yang
membedakannya dengan lingkungannya.
Secara sederhana obyek adalah mobil,
manusia, alarm, tabel, database, event,
Pengenalan Objek
• Tetapi objek ini lebih dari entitas dengan
penambahan pada datanya, objek memuat
program code (penggunaan dan perubahan
data)
OBJECT ORIENTED DATABASE (Con’t)
KONSEP DASAR OODB
• OBJECT
• CLASSES
• MESSAGES/MEtHO
• ENCAPSULATION
• INHERITANCE
• POLYMORPHISM
KONSEP DASAR OODB
• OBJECT
• CLASSES
• MESSAGES/METHODE
• ENCAPSULATION
• INHERITANCE
• POLYMORPHISM
E-R Vs. CLASS DIAGRAM
E-R Modelling Class Diagram
Entity Object Class
Instance Object
Attribute Attribute
Relationship Association
Instance Object
Cardinality Multiplicity
N/A Operation/Method/Function
CLASS DIAGRAM (con’t)
• A class is similar to an entity type except that it can have operations. A Class
has:
– Name
– Attributes
– Operations
• A class is drawn as a rectangle with three compartments
Contoh
ER-D CLASS
DIAGRAM
Employees Name
Name Ssn : int
Ssn Address
Name : String Attributes
Addr : int
Employees add_employee(…)
delete_emloyee(…) Operations
update_salary(…)
Bahasa Query OODB
• Bahasa query dalam OODB merupakan
pengembangan dari bahasa query SQL yang
sudah kita kenal dalam RDB. Yang
membedakannya adalah kita dapat membuat
ADT atau tipe baru selain tipe-tipe primitif
yang sudah ada seperti INTEGER dan
VARCHAR
Example of OQL query
The following is a sample query
“what are the names of the black product?”
Select distinct p.name
From products p
Where p.color = “black”
⇒Valid in both SQL and OQL, but results are
different.
Result of the query (SQL)
Original table