Basis Data
POKOK BAHASAN 1
BASIS DATA, MODEL DATA, DIAGRAM E-R PENDAHULUAN
Pada pokok bahasan ini berisi penjelasan disertai contoh mengenai konsep basis data, pemodelan data dan pembuatan diagram E-R yang menjadi pemahaman dasar bagi mahasiswa sebelum mempelajari sistem basis data dan Structure Query Language (SQL), dimana konsep ini nantinya digunakan untuk merepresentasikan sebuah sistem basis data, diharapkan mahasiswa dapat :
1. Memahami sistem basis data dan komponennya.
2. Membuat desain basis data menggunakan ER Diagram.
3. Memahami dan mengimplementasikan fitur-fitur yang ada pada ER_Diagram.
PENYAJIAN (TUTORIAL)
1. Konsep Sistem Basis Data
Basis data adalah kumpulan data yang disimpan secara sistematis di dalam komputer dan dapat diolah atau dimanipulasi serta dapat diakses dengan mudah dan tepat menggunakan perangkat lunak (program aplikasi) untuk menghasilkan sebuah informasi. Sistem basis data merupakan ruang lingkup yang lebih luas dari basis data.
Sistem basis data memuat sekumpulan basis data dalam suatu sistem yang mungkin tidak ada hubungan antara satu dengan yang lain, tetapi secara keseluruhan mempunyai hubungan sebagai sebuah sistem yang didukung oleh komponen lainnya.
Komponen Sistem Basis Data: Perangkat Keras (Hardware), Sistem Operasi (Operating System), basis data (Database), DBMS (Database Management System), Pemakai (User).
DBMS (Database Management System) merupakan basis data dan set perangkat lunak (software) untuk pengelolaan basis data.
2. Konsep Model Data
Model data merupakan suatu cara untuk menjelaskan tentang data-data yang tersimpan dalam basis data dan bagaimana hubungan antar data tersebut untuk para pengguna (user) secara logika. Secara garis besar model data dapat dikelompokkan menjadi 3 mcacam yaitu :
1. Model Data Berbasis Objek (Object based data model) Merupakan himpunan data dan relasi yang menjelaskan hubungan logik antar data dalam suatu basis data berdasarkan pada obyek datanya. Salah satunya adalah Entity Relationship Model.
Model Entity Relationship Diagram (ERD) atau Conceptual Data Model (CDM) Merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan suatu persepsi bahwa dunia nyata terdiri dari obyek-obyek dasar (entitas) yang mempunyai hubungan atau relasi antar obyek-obyek dasar (entitas) tersebut yang dilukiskan dengan menggunakan simbol-simbol grafik tertentu.
2. Model Data berbasis Record (Record Based Data Model)
Model ini berdasarkan pada record/rekaman untuk menjelaskan kepada para pemakai tentang logik antar data dalam basis data. Salah satunya adalah Relational model.
Model Rasional merupakan model data yang menjelaskan pada pengguna tentang hubungan logik antar data dalam basis data dengan mempresentasikannya ke dalam betuk tabel-tabel yang terdiri atas sejumlah baris yang menunjukkan record dan kolom yang menunjukkan atribut tertentu.
3. Physical Based Data Model
Model ini berdasarkan pada teknis penyimpanan record dalam basis data. Model ini jarang digunakan untuk memodelkan data kepada pemakai karena kerumitan dan kompleksitasnya yang tinggi.
3. Bahasa Basis data
Bahasa yang digunakan untuk mendefinisikan, mengelolah dan memanipulasi basis data dikelompokkan 3 macam yaitu :
1. DDL (Data Definition Language) digunakan untuk mendefinisikan struktur dan kerangka dari basis data yang meliputi :
a. Membentuk basis data, tabel, indeks.
b. Mengubah struktur table.
c. Menghapus basis data, tabel atau indeks.
2. DML (Data Manipulation Language) digunakan untuk menjabarkan pemrosesan
data pada basis data yang meliputi :
a. Menambahkan atau menyisipkan data baru ke basis data
b. Mengelolah data yang tersimpan dalam basis data (query)
c. Mengubah dan menghapus data dalam basis data.
3. DCL (Data Control Language) digunakan untuk pengaturan hak akses pengguna pada basis data yang meliputi :
a. Menugaskan hak akses terhadap basis data kepada pengguna atau grup pengguna.
b. Membatalkan hak akses pengguna terhadap basis data
4. EntityRelationship Diagram (ER-D)
Merupakan model data yang dikembangkan berdasarkan obyek atau entitas. ER_D berguna membantu perancang atau analis sistem pada saat melakukan analisis dan perancangan basis data karena model ini dapat menunjukkan macam data yang dibutuhkan dan direlasikan antar data di dalamnya.
1. Komponen ER Diagram
Sebuah diagram ER tersusun atas tiga komponen, yaitu entitas yang merupakan obyek dasar yang terlibat dalam sistem, atribut yang berperan sebagai penjelas entitas, kerelasian antar entitas menunjukkan hubungan yang terjadi diantara dua entitas.
a. Entitas (Entity)
Entitas menunjukkan obyek-obyek dasar yang terkait di dalam sistem. Obyek dasar dapat berupa orang, benda atau hal yang keterangannya perlu disimpan di dalam basis data. Macam-macam Entitas :
· Entitas Reguler
Entitas ini disebut juga entitas dominan (strong entity). Keberadaan entitas ini tidak tergantung pada entitas yang lain.
Contoh: Mahasiswa, Matakuliah.
· Entitas dependen
Entitas ini disebut juga entitas tidak bebas/independen atau entitas lemah (weak entity) atau entitas subordinat. Entitas ini dapat muncul jika ada entitas lain sebagai acuannya (entitas reguler).
Contoh: Matakuliah konsentrasi, bergantung pada entitas Matakuliah.
· Entitas super type dan sub type
Entitas super type merupakan entitas yang memiliki tingkatan yang lebih tinggi yaitu membawahi atau mempunyai entitas bagian yang lebih rendah.
Contoh: Entitas Karyawan.
Entitas sub type merupakan entitas yang lebih rendah yaitu entitas yang menjadi entitas bagian dari entitas lain.
Contoh : Entitas karyawan tetap dan karyawan tidak tetap
b. Atribut (Attribute)
Merupakan keterangan-keterangan yang terkait pada sebuah entitas yang perlu disimpan ke dalam database. Atribut berfungsi sebagai penjelas pada sebuah entitas. Contoh : mahasiswa mempunyai atribut nim, nama, jurusan, kelamin, tempat lahir, tanggal lahir, dsb.
Atribut pada sebuah entitas dibagi menjadi 2 yaitu :
· Atribut sederhana (simple attribute), yaitu jika atribut berisi sebuah komponen/nilai/elementer.
Contoh : pada entitas mahasiswa adalah tahun masuk = 2013
· Atribut komposit (composite attribute), yaitu jika atribut berisi lebih dari sebuah komponen nilai.
Contoh : pada entitas mahasiswa adalah tanggal lahir yang terdiri atas komponen nilai tanggal, bulan, tahun.
c. Kerelasian antar entitas (Entity Relationship)
Mendefiniskan hubungan antara 2 buah entitas. Jenis kerelasian antar entitas dibagi mejadi 3 sebagai berikut :
1. Kerelasian jenis satu ke satu (one to one), kerelasian terjadi jika kejadian atau transaksi di antara dua entitas yang berhubungan hanya memungkinkan terjadi sebuah kejadian atau transaksi pada kedua entitas.
Gambar 1.1 Relasi satu ke satu.
Dimana setiap tupel (baris) pada entitas A berhubungan dengan paling banyak satu tupel pada entitas B, dan begitu juga sebaliknya setiap tupel pada entitas B berhubungan dengan paling banyak satu tupel pada entitas A.
2. Kerelasian banyak ke satu (many to one) atau satu ke banyak (one to many), kerelasian ini terjadi jika kejadian atau transaksi di antara dua entitas yang berhubungan hanya memungkinkan terjadi satu kali dalam entitas pertama dan dapat terjadi lebih dari satu kali kejadian atau transaksi pada entitas kedua.
· Satu ke banyak (one to many)
Dimana satu tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, tetapi tidak sebaliknya, dimana setiap tupel pada entitas B berhubungan dengan paling banyak satu tupel pada entitas A.
Gambar 1.2 Relasi satu ke banyak
· Banyak ke satu (many to one)
Dimana setiap tupel pada entitas A dapat berhubungan dengan paling banyak satu tupel pada entitas B, tetapi tidak sebaliknya, dimana setiap tupel pada entitas A berhubungan dengan paling banyak satu tupel pada entitas B.
Gambar 1.3 Relasi banyak ke satu
3. Kerelasian jenis banyak ke banyak (many to many)
Kerelasian jenis ini terjadi jika kejadian atau transaksi di antara dua entitas yang berhubungan memungkinkan terjadi lebih dari satu kali dalam entitas pertama dan kedua.
Gambar 1.4 Relasi banyak ke banyak
Dimana setiap tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, dan demikian juga sebaliknya, dimana setiap tupel pada entitas B dapat berhubungan dengan banyak tupel pada entitas A.
2. Langkah-langkah Membuat ER Diagram
Untuk membuat ER Diagram secara lengkap dapat dilakukan dengan mengikuti langkah-langkah sebagai berikut :
· Identifikasikan setiap entitas yang terlibat.
· Lengkapi masing-masing entitas dengan atribut yang sesuai.
· Tentukan primari key dari masing-masing entitas.
· Identifikasikan setiap kerelasian berikut jenisnya yag terjadi di antara entitas dengan membuat tabel daftar kerelasian antar entitas.
· Gambarkan simbol-simbol entitas, atribut, dan kerelasian antar entitas secara jelas dan tidak bertabrakan.
· Cek ER Diagram yang terbenuk, dalam hal : kelengkapan entitas, kelengkapan atribut, kelengkapan kerelasian antar entitas dan jenis kerelasian antar entitas.
LEMBAR KERJA DAN TUGAS
A. Lembar kerja
Bacalah dengan seksama studi kasus perancangan basis data di bawah ini: Perpustakaan di Universitas Muhammadiyah Sidoarjo memutuskan untuk menyimpan semua informasi mengenai koleksi bukunya dalam sebuah basis data (database). Basis data yang akan di rancang mempuyai deskripsi sebagai berikut :
1. Setiap mahasiswa yang ingin meminjam buku harus mempuyai kartu anggota yang terdiri dari kode anggota, nama, alamat, email dan telpon.
2. Tiap buku yang di pinjamkan mempunyai kode buku, judul buku, harga, tahun terbit, pegarang dan penerbit.
3. Tiap pengarang yang bukunya di beli perpustakaan mempunyai kode pengarang dan nama pengarang.
4. Tiap penerbit yang bukunya telah di beli oleh perpustakaan mempunyai kode penerbit, nama penerbit, nama perusahaan, alamat, kabupaten dan telpon.
5. Tiap buku bisa di pinjam oleh beberapa anggota dan seorang anggota bisa meminjam beberapa buku
6. Tiap pengarang mungkin mengarang beberapa buku dan setiap buku dapat di pinjam oleh beberapa anggota.
7. Tiap penerbit bisa menerbitkan beberapa buku. seorang pengarang bisa menghasilkan beberapa buku.
Langkah-langkah merancang basis data perpustakaan :
1. Identifikasikan setiap entitas yang terlibat dengan membuat tabel daftar entitas.
Tabel 1.1 Daftar Entitas
|
No |
Nama Entitas |
|
1. |
Anggota |
|
2. |
Buku |
|
3. |
Pengarang |
|
4. |
Penerbit |
2. Lengkapi masing-masing entitas dengan atribut yang sesuai. Tabel 1.2 Atribut masing-masing entitas
|
Entitas |
Atribut yang diperlukan |
|
Anggota |
Kode_anggota, nama, alamat, email, telepom |
|
Buku |
Kode_buku, judul_buku, harga, tahun_terbit. Pengarang. penerbit |
|
Pengarang |
Kode_pengarang, nama_pengarang |
|
Penerbit |
Kode_penerbit, nama_penerbit, nama_perusahaan, alamat, kabupaten, telpon |
3. Tentukan primai key dari masing-masing entitas Tabel 1.3 Primary Key
|
Entitas |
Primary Key |
|
Anggota |
Kode_anggota |
|
Buku |
Kode_buku |
|
Pengarang |
Kode_pengarang |
|
Penerbit |
Kode_penerbit |
4. Identifikasikan setiap kerelasian berikut jenisnya yang terjadi di antara entitas dengan membuat tabel daftar kerelasian antar entitas.
Tabel 1.4 Kerelasian antar entitas.
|
Entitas yang berhubungan |
Nama Kerelasian |
Jenis Kerelasian |
Representasi |
|
|
Entitas I |
Entitas II |
|||
|
Anggota |
Buku |
Meminjam |
n-ke-n |
File Peminjaman: Id_peminjaman, kode_anggota, kode_buku, tanggal_pinjam, tanggal_kembali |
|
Buku |
Pengarang |
Mengarang |
n-ke-n |
Penghubung : Kode_pengarang dalam entitas buku |
|
Buku |
Penerbit |
Menerbitkan |
n-ke-1 |
Penghubung : Kode_penerbit dalam entitas buku |
5. Gambarkan simbol-simbol entitas, atribut, dan kerelasian antar entitas secara jelas dan tidak bertabrakan.
Hasil ER_Diagram untuk basis data pengolahan data perpustakaan tanpa melibatkan atribut untuk setiap entitas sebagai berikut:
6. Gambarkan model konseptual dari ER_diagram diatas Model konseptual digunakan untuk memperjelas relasi antara entitas satu dengan entitas lain menggunakan Primary key dan Foreign Key.
7. Membuat Kamus Data (Struktur Entitas)
Kamus data digunakan untuk menjabarkan strutur dari tabel atau entitas dan basis data
Tabel 1.5 Anggota
|
No |
Field |
Type |
Size |
Keterangan |
|
1. |
Kode_anggota |
Varchar |
5 |
Primary Key |
|
2. |
Nama |
Varchar |
25 |
|
|
3. |
Alamat |
Varchar |
50 |
|
|
4. |
|
Varchar |
20 |
|
|
5. |
Telpon |
Varchar |
15 |
|
Tabel 1.6 Buku
|
No |
Field |
Type |
Size |
Keterangan |
|
1. |
Kode_buku |
Varchar |
5 |
Primary Key |
|
2. |
Judul_buku |
Varchar |
35 |
|
|
3. |
Harga |
Integer |
5 |
Default 0 |
|
4. |
Tahun_terbit |
Varchar |
5 |
|
|
5. |
Kode_pengarang |
Varchar |
5 |
Foreign Key |
|
6. |
Kode_penerbit |
Varchar |
5 |
Foreign key |
Tabel 1.7 Pengarang
|
No |
Field |
Type |
Size |
Keterangan |
|
1. |
Kode_pengarang |
Varchar |
5 |
Primary Key |
|
2. |
Nama_pengarang |
Varchar |
35 |
|
Tabel 1.8 Penerbit
|
No |
Field |
Type |
Size |
Keterangan |
|
1. |
Kode_penerbit |
Varchar |
5 |
Primary Key |
|
2. |
Nama_penerbit |
Varchar |
25 |
|
|
3. |
Nama_perusahaan |
Varchar |
50 |
|
|
4. |
Alamat |
Varchar |
50 |
|
|
5. |
Kabupaten |
Varchar |
25 |
|
|
6. |
Telpon |
Varchar |
15 |
|
Tabel 1.9 Peminjaman
|
No |
Field |
Type |
Size |
Keterangan |
|
1. |
Id_pinjam |
number |
5 |
Auto increment |
|
2. |
Kode_anggota |
Varchar |
5 |
Foreign key |
|
3. |
Kode_buku |
Varchar |
5 |
Foreign key |
|
4. |
Tanggal_pinjam |
Date |
|
Default |
|
5. |
Tanggal_kembali |
Date |
|
Default |
Comments
Post a Comment