Model Database, Bahasa Database, dan Bahasa Relasional Database - Penampilan konsepsual data di mana pengguna melihat adalah berdasarkan model yang disebut dengan database model. Database model mendefinisikan cara menampilkan entity, attribute dan relationship ( hubungan ) secara terstruktur. Menghubungkan antara konsepsual data dengan data fisik ada tanggungjawab dari DBMS.
Ada 3 data model database yang sampai saat ini digunakan yaitu
image source: |
baca juga: Pengertian Data, Database, dan Database Management System (DBMS)
Ada 3 data model database yang sampai saat ini digunakan yaitu
1. Hirarki Model ( Hierarcy Model ) : menampilkan data secara hirarki. Sebagai contoh yang mudah adalah ketika melihat struktur organisasi ataupun jikalau kita membuka window eksplorer.
Ada beberapa keterbatasan dari model hirarki, yaitu :
Jadi secara natural hubungan hirarki adalah berdasarkan one to one dan one to many
2. Model Jaringan ( network model ) mempunyai sedikit kelebihan dari model hirarki.
Pada model jaringan, sebuah entity dapat mempunyai lebih dari 1 entity induk, dan beberapa buah entity anak dapat mempunyai beberapa buah entity induk. Namun demikian model jaringan masih mempunyai masalah hubungan many to many secara langsung. Sebagai contoh : jikalau kita hendak mencari semua buku yang diterbitkan oleh Bill Gates, lalu dengan menggunakan pointer yang mewakili hubungan penerbit untuk mencari buku yang diterbitkan oleh penerbit. Hal ini memberikan limitasi pada data fisik secara independen. Ketika hubungan berubah, aplikasi program jika ikut berubah.
- Karena berstruktur hirarki maka jikalau kita hendak melihat data penulis maka terlebih dahulu kita harus membuka data penerbit,
- Entity anak hanya bisa mempunyai 1 induk entity
- Sebuah entity tidak bisa dihubungkan lebih dari 1 entity
Jadi secara natural hubungan hirarki adalah berdasarkan one to one dan one to many
2. Model Jaringan ( network model ) mempunyai sedikit kelebihan dari model hirarki.
Pada model jaringan, sebuah entity dapat mempunyai lebih dari 1 entity induk, dan beberapa buah entity anak dapat mempunyai beberapa buah entity induk. Namun demikian model jaringan masih mempunyai masalah hubungan many to many secara langsung. Sebagai contoh : jikalau kita hendak mencari semua buku yang diterbitkan oleh Bill Gates, lalu dengan menggunakan pointer yang mewakili hubungan penerbit untuk mencari buku yang diterbitkan oleh penerbit. Hal ini memberikan limitasi pada data fisik secara independen. Ketika hubungan berubah, aplikasi program jika ikut berubah.
3. Model Hubungan ( Relational Model ) diusulkan oleh E.F Codd dalam jurnal ilmiahnya “A Relational model of data for large shared data banks” pada tahun 1970. Codd menjelaskan penampilan data dipaksakan dalam bentuk konsep hubungan matemateka ( berdasarkan group ). Pada model Codd, data ditampilkan dalam bentuk tabel, dimana setiap tabel mempunyai kolom dan baris. Hubungan yang lain adalah berdasarkan kolom unik ( primary key ) dan kolom bukan unik ( foreign key ). Setiap table harus mempunyai 1 kolom unik ( primary key ) untuk membedakan 1 entity dengan entity lainnya ( entity integrity ). Kolom bukan unik ( foreign key ) tidak boleh kosong ( null ) – Referential Integrity.
BAHASA DATABASE
Digunakan untuk membuat dan memanipulasi objek – objek dan data di dalam database. Interaksi bahasa langsung dengan database disebut query language. Sedangkan bahasa yang digunakan di dalam program di sebut dengan sublanguage. Ada beberapa komponen bahasa database yaitu:
BAHASA RELASIONAL DATABASE ( RELATIONAL DATABASE LANGUAGES )
Ada beberapa bahasa relational database yang dapat didefinisikan
a. Relational Algebra yaitu bahasa yang berdasarkan kumpulan operator yang meliputi tradisional operator ( UNION, INTERSECTION, DIFFERENCE ) dan operator khusus sepert ( PROJECTION,RESTRICTION, JOIN, PRODUCT, DIVISION ).
b. Relation Calculus berdasarkan predikat kalkulus yang digunakan untuk hubungan data . Gagasan dasar dari relational calculus adalah query variable yaitu variabel yang menghubungkan beberapa baris dalam tabel. Query ini berdasarkan target yang mendefinisikan spesifik kolom sebagai hasil dan kualifikasi yaitu memilih baris dari target tabel berdasarkan ekspresi dari query variabel tersebut. Contoh dalam kalimat adalah carilah buku yang mempunyai halaman lebih dari 500.
Penulisan bahasa databasenya adalah sebagai berikut
c. Mapping Oriented Languages.
Bahasa ketiga diusulkan oleh Boyce pada tahun 1974. Digunakan untuk pengguna yang tidak mengerti tentang query variabel. Contoh penulisan dalam bahasa databasenya adalah
d. Relational Completeness
Ketika pertama kali Codd mengusulkan relational kalkulus. Beliau mendefinisikan bahasa relational databasenya menjadi relationally complete. Relational Complete mempunyai kelebihan untuk mengekspresikan relational kalkulus. Kerapkali, definisi ini merupakan perpanjangan yang meliputi pengambilan informasi dari database dengan 1 kalimat. Dengan kata lain, jika informasi dapat di ambil dari tabel database, query yang digunakan untuk mengambil informasi dapat diformulasikan dengan menggunakan bahasa yang bebas. Codd, juga memperlihatkan bahwa relational algebra merupakan relationally complete. Kebanyakan dari bahasa yang dituju baik itu SQL dan QUEL adalah relationally complete.
Ada 12 aturan yang diajukan oleh Codd, yaitu :
BAHASA DATABASE
Digunakan untuk membuat dan memanipulasi objek – objek dan data di dalam database. Interaksi bahasa langsung dengan database disebut query language. Sedangkan bahasa yang digunakan di dalam program di sebut dengan sublanguage. Ada beberapa komponen bahasa database yaitu:
- Data Definition Language ( DDL ) seperti CREATE, ALTER, DROP, RENAME, TRUNCATE, ANALZE, GRANT, REVOKE.
- Data Manipulation Language ( DML ) seperti DELETE, INSERT, SELECT, UPDATE.
- Transaction Control Statements seperti COMMIT, ROLLBACK, SAVEPOINT, SET TRANSACTION
- Session Control Statements seperti ALTER SESSION, SET ROLE
- System Control Statements seperti ALTER SYSTEM
- Embedded SQL Statements merupakan kombinasi dari DDL, DML, Transacation Control Statements dalam sebuah bahasa data sub langauge seperti DECLARE, CURSOR, OPEN, CLOSE, DECLARE DATABASE, CONNECT, DECLARE STATEMENT, DESCRIBE, WHENEVER,FETCH, PREPARE,EXECUTE, EXECUTE IMMEDIATE.
BAHASA RELASIONAL DATABASE ( RELATIONAL DATABASE LANGUAGES )
Ada beberapa bahasa relational database yang dapat didefinisikan
a. Relational Algebra yaitu bahasa yang berdasarkan kumpulan operator yang meliputi tradisional operator ( UNION, INTERSECTION, DIFFERENCE ) dan operator khusus sepert ( PROJECTION,RESTRICTION, JOIN, PRODUCT, DIVISION ).
b. Relation Calculus berdasarkan predikat kalkulus yang digunakan untuk hubungan data . Gagasan dasar dari relational calculus adalah query variable yaitu variabel yang menghubungkan beberapa baris dalam tabel. Query ini berdasarkan target yang mendefinisikan spesifik kolom sebagai hasil dan kualifikasi yaitu memilih baris dari target tabel berdasarkan ekspresi dari query variabel tersebut. Contoh dalam kalimat adalah carilah buku yang mempunyai halaman lebih dari 500.
Penulisan bahasa databasenya adalah sebagai berikut
RANGE OF B IS BOOKS.Bahasa database ini disebut QUEL yang diimplementasikan Ingres System. Produk IBM adalah QBE ( Query By Example ) dalam bahasa SQL.
RETRIEVE ( B.ISBN,B.TITLE ) WHERE B.LENGTH > 500
c. Mapping Oriented Languages.
Bahasa ketiga diusulkan oleh Boyce pada tahun 1974. Digunakan untuk pengguna yang tidak mengerti tentang query variabel. Contoh penulisan dalam bahasa databasenya adalah
SELECT ISBN, TITLE FROM BOOKS WHERE LENGTH > 500
d. Relational Completeness
Ketika pertama kali Codd mengusulkan relational kalkulus. Beliau mendefinisikan bahasa relational databasenya menjadi relationally complete. Relational Complete mempunyai kelebihan untuk mengekspresikan relational kalkulus. Kerapkali, definisi ini merupakan perpanjangan yang meliputi pengambilan informasi dari database dengan 1 kalimat. Dengan kata lain, jika informasi dapat di ambil dari tabel database, query yang digunakan untuk mengambil informasi dapat diformulasikan dengan menggunakan bahasa yang bebas. Codd, juga memperlihatkan bahwa relational algebra merupakan relationally complete. Kebanyakan dari bahasa yang dituju baik itu SQL dan QUEL adalah relationally complete.
Ada 12 aturan yang diajukan oleh Codd, yaitu :
Aturan
|
Keterangan
|
0
|
Relational DBMS harus dapat mengatur database secara keseluruhan dengan
menggunakan kapasitas relational.
|
1
|
The Information Rule
Semua informasi yang ada di relational database ( meliputi tabel
dan kolom ) harus mewakili nilai
dalam tabel.
|
2
|
Guarantedd Access
Setiap nilai di dalam relational database harus dapat di akses dengan
menggunakan kombinasi dari nama tabel, nilai dari kolom unik ( primary key ), dan kolom yang lain
|
3
|
Systematic Null Value Support
DBMS harus mendukung secara sistematis untuk nilai kosong ( null ),
nilai default, dan berdiri sendiri.
|
4
|
Active, On Line Relational Catalog
Keterangan dari database dan semua isinya harus mewakili level logika
sebagai tabel, dan dapat dilihat dengan menggunakan bahasa database.
|
5
|
Comprehensive Data Sublanguage
Harus sekurangnya 1 bahasa yang mendukung definisi data, manipulasi,
aturan integritas, hak akses dan transaksi.
|
6
|
View Updating Rule
Semua penampilan data dapat di edit melalui sistem.
|
7
|
Set – Level Insertion, Update dan
Deletion
DBMS tidak hanya mendukung level penampilan informasi, tetapi juga
mendukung penambahan, peng-editan dan penghapusan informasi.
|
8
|
Physical Data
Aplikasi program dan program ad – hoc secara logika tidak dipengaruhi
metode akses fisik atau struktur penyimpanan dirubah.
|
9
|
Logical Data
Aplikasi program dan program ad –hoc secara logika tidak dipengaruhi
jika terjadi penambahan struktur tabel.
|
10.
|
Integrity
Bahasa database harus bisa mendefinisikan aturan integritas informasi,
harus di simpan pada metadata secara on line, dan tidak bisa dilewatkan.
|
11.
|
Distibution
Permintaan program aplikasi dan ad –hoc secara logika tidak
dipengaruhi ketika data pertama kali didistribusikan, atau ketika tidak
didistribusikan.
|
12.
|
Non – Subversion
Harus tidak bisa dilewatkan aturan integritas yang didefinisikan
melalui bahasa database dengan menggunakan level bahasa terendah.
|
|
|
Sekian artikel tentang Model Database, Bahasa Database, dan Bahasa Relasional Database.
Daftar Pustaka
- Henry C. Lucas Jr., The Analysis, Design and Implementation of Information Systems 4th, McGraw Hill, 1992
Model Database, Bahasa Database, dan Bahasa Relasional Database
4/
5
Oleh
Unknown