Perancangan database bagian i
This presentation is the property of its rightful owner.
Sponsored Links
1 / 34

Perancangan Database Bagian I* PowerPoint PPT Presentation


  • 132 Views
  • Uploaded on
  • Presentation posted in: General

Perancangan Database Bagian I*. *diadopsi dari Abdul Kadir, 2005. Nomor_Peg. Nama. 05001. Karmen. 05002. Tigor. 05003. Sita Devi. Model Data Relasional. Data direprentasikan dalam tabel berdimensi dua Tiga komponen yang mendasari model data relasional: Struktur data

Download Presentation

Perancangan Database Bagian I*

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Perancangan database bagian i

Perancangan DatabaseBagian I*

*diadopsi dari Abdul Kadir, 2005


Model data relasional

Nomor_Peg

Nama

05001

Karmen

05002

Tigor

05003

Sita Devi

Model Data Relasional

  • Data direprentasikan dalam tabel berdimensi dua

  • Tiga komponen yang mendasari model data relasional:

    • Struktur data

    • Pemanipulasi data

    • Integritas data


Model data relasional1

Nomor_Peg

Nama

05001

Karmen

05002

Tigor

05003

Sita Devi

Model Data Relasional

  • Istilah relasi (relation) menyatakan nama tabel

    • Contoh:

      PEGAWAI(Nomor_Peg, Nama)

Struktur data


Relasi

Relasi

  • Setiap relasi memiliki kunci primer (primary key)

  • Kunci primer adalah atribut atau sejumlah atribut yang menjadi pembeda setiap baris dalam relasi

  • Kunci primer biasa dinyatakan dengan garis bawah

Kunci primer

PEGAWAI(Nomor_Peg, Nama)


Kunci

Kunci

  • Kunci dapat dibedakan menjadi:

    • Kunci sederhana : Terdiri atas sebuah atribut

    • Kunci komposit : Tersusun atas dua atribut atau lebih

Kunci sederhana:

PEGAWAI(Nomor_Peg, Nama)

DEPARTEMEN(Kode_Dep, Nama_Dep)

BARANG(Kode_Barang, Nama_Barang)

Kunci komposit:

BARANG DIPESAN(No_Pesanan, Kode_Barang,

Jumlah)

NILAI(No_Mhs, Kode_Matakuliah,Skor)


Kunci tamu

Kunci Tamu

  • Kunci tamu.(( tidak ada ketentuan nilainya beda) foreign key) biasa digunakan sebagai penghubung ke relasi lain

Kunci asing

PELANGGAN

Kd_Pelanggan

Nama

Kd_Kota

A001

Aditya

0501

KOTA

B001

Bakdi

0502

Kd_Kota

Nama_Kota

B002

Bramanto

0502

0501

Semarang

0502

Salatiga

Kunci primer

0503

Kendal


Kunci tamu lanjutan

Kunci Tamu (Lanjutan…)

  • Garis bawah terputus-putus biasa dipakai untuk menyatakan kunci tamu

  • Contoh:

    PELANGGAN(Kd_Pelanggan, Nama, Kd_Kota)

    KOTA(Kd_Kota, Nama_Kota)


Sifat relasi

Sifat Relasi

  • Setiap relasi memiliki nama yang unik

  • Setiap isian pada perpotongan baris dan kolom harus bersifat atomik (bernilai tunggal)

  • Setiap baris bersifat unik

  • Setiap atribut memiliki nama yang unik

  • Urutan kolom tidak penting

  • Urutan baris juga tidak penting


Kekangan integritas integrity constraint

Kekangan Integritas(Integrity Constraint)

  • Tujuannya adalah untuk memfasilitasi penjagaan keakurasian dan integritas data dalam database (supaya tetap konsisten)

  • Macamnya:

    • Kekangan domain

    • Integritas entitas

    • Integritas referensial

    • Kekangan operasional


Kekangan domain kemungkinan nilai

Kekangan Domain(kemungkinan nilai)

  • Memastikan data dalam domain yang telah ditetapkan

  • Domain adalah kemungkinan nilai terhadap suatu atribut

  • Contoh:

    • A,B,C,D,E untuk nilai

    • TRUE untuk pria dan FALSE untuk wanita

    • INTEGER untuk menyatakan nilai bulat

  • Dalam praktek, domain juga mencakup panjang data

  • Contoh:

    • CHARACTER, SIZE 35

    • INTEGER, 3 DIGITS


Integritas entitas

Integritas Entitas

  • Memastikan bahwa data yang terkait dengan kunci primer tidak terlanggar

  • Secara khusus, data Null pada kunci primer akan ditolak

  • Null berarti nilai pada atribut tidak pernah diberikan


Integritas referensial

Integritas Referensial

  • Memastikan bahwa konsistensi antara dua buah relasi tetap terjaga

Keadaan Awal:

Kd_Pelanggan

Nama

Kd_Kota

Kd_Kota

Nama_Kota

A001

Aditya

0501

0501

Semarang

B001

Bakdi

0502

0502

Salatiga

B002

Bramanto

0502

0503

Kendal


Efek tanpa integritas referensial

Efek Tanpa Integritas Referensial

Keadaan Setekah data 0502 pada KOTA dihapus:

0502

Salatiga

Kd_Pelanggan

Nama

Kd_Kota

Kd_Kota

Nama_Kota

A001

Aditya

0501

0501

Semarang

B001

Bakdi

0502

0503

Kendal

B002

Bramanto

0502

Menjadi

tidak konsisten


Efek integritas referensial

Efek Integritas Referensial

Keadaan Setekah data 0502 pada KOTA dihapus:

0502

Salatiga

Kd_Pelanggan

Nama

Kd_Kota

Kd_Kota

Nama_Kota

A001

Aditya

0501

0501

Semarang

B002

Bramanto

0502

0503

Kendal

Ikut terhapus! atau penghapusan ditolak

B001

Bakdi

0502


Kekangan operasional

Kekangan Operasional

  • Kekangan yang berhubungan dengan aturan bisnis

  • Misalnya “Saldo tabungan tidak boleh negatif”

  • Pada Access, kekangan seperti ini bisa diimplementasikan pada Validation Rule.

  • Pada PostgreSQL, hal ini bisa diimplementasikan dalam prosedur tersimpan


Relasi berstruktur baik

Relasi Berstruktur Baik

  • Suatu relasi dikatakan berstruktur baik kalau :

    • Mengandung redundansi sesedikit mungkin dan

    • Memungkinkan pemakai memasukkan, mengubah, atau menghapus baris tanpa menimbulkan kesalahan atau tidak konsisten

  • Kesalahan atau akibat tidak konsisten yang ditimbulkan pada ulasan di atas biasa dinamakan anomali


Anomali

Anomali

  • Anomali penyisipan

  • Anomali penghapusan

  • Anomali peremajaan


Anomali peremajaan

Anomali Peremajaan

  • Terjadi bila terdapat pengubahan pada sejumlah data yang redundan, tetapi tanpa sengaja tidak semua ikut diubah

Pemasok Citra pindah ke Bogor dan

Pengubahan dilakukan hanya pada

data pertama


Anomali penyisipan

Anomali Penyisipan

  • Terjadi bila ada penambahan data

  • Perhatikan contoh disamping

  • Masalah: “Bagaimana caranya menyimpan fakta bahwa ruang baru bernama Arjuna ada pada gedung selatan?”


Anomali penghapusan

Anomali Penghapusan

  • Terjadi kiranya sesuatu baris yang tak terpakai dihapus dan sebagai akibatnya terdapat data lain yang hilang

  • Perhatikan contoh di samping

  • Apa yang terjadi seandainya data bahwa siswa dengan identitas 12 dihapus? Data yang menyatakan bahwa biaya kursus bahasa Jepang juga akan terhapus


Tranformasi diagram er eer ke relasi

Tranformasi Diagram ER/EER ke Relasi

  • Memetakan Entitas Reguler (kuat)

Nama_Pelanggan

Tipe entitas PELANGGAN

No_Pelanggan

PELANGGAN

Alamat_Pelanggan

Relasi PELANGGAN

No_Pelanggan

Nama_Pelanggan

Alamat_Pelanggan


Tranformasi diagram er ke relasi

Tranformasi Diagram ER ke Relasi

  • Memetakan Entitas dengan Atribut Komposit

Jalan

Nama_Pelanggan

Kota

Kode_Pos

Tipe entitas PELANGGAN dengan atribut komposit

No_Pelanggan

PELANGGAN

Alamat_Pelanggan

Relasi PELANGGAN

No_Pelanggan

Nama_Pelanggan

Jalan

Kota

Kode_Pos


Tranformasi diagram er ke relasi1

Tranformasi Diagram ER ke Relasi

  • Memetakan Entitas dengan Atribut Bernilai Ganda

Nama_Pegawai

No_Pegawai

Alamat_Pegawai

Tipe entitas PEGAWAI dengan atribut bernilai ganda

PEGAWAI

Keterampilan

No_Pegawai

Nama_Pegawai

Alamat_Pegawai

Relasi PEGAWAI

No_Pegawai

Keterampilan

Relasi KETERAMPILAN PEGAWAI


Pemetaan entitas lemah

Pemetaan Entitas Lemah

No_Pegawai

Nama_Pegawai

Nama_Tanggungan

Tanggal_Lahir

Memiliki

PEGAWAI

TANGGUNGAN

No_Pegawai

Nama_Pegawai

Relasi PEGAWAI

No_Pegawai

Nama_Tanggungan

Tanggal_Lahir

Relasi TANGGUNGAN


Pemetaan hubungan 1 to m

Pemetaan Hubungan 1 to M

No_Pelanggan

Nama_Pelanggan

Nomor_Pesan

Tanggal_Pesan

Mengirim

PELANGGAN

PESANAN

No_Pelanggan

Nama_Pelanggan

Relasi PELANGGAN

No_Pesan

Tanggal_Pesan

No_Pelanggan

Relasi PESANAN


Pemetaan hubungan m to m

Pemetaan Hubungan M to M

No_Pesan

Tgl_Pesan

Kode_Produk

Harga_Unit

Jumlah

Meminta

PESANAN

PRODUK

No_Pesan

Tgl_pesan

Relasi PESANAN

No_Pesan

Kode_Produk

Jumlah

Relasi BARIS PESANAN

Kode_Produk

Harga_Unit

Relasi PRODUK


Pemetaan hubungan 1 to 1

Pemetaan Hubungan 1 to 1

No_Dosen

Nama_Dosen

Kode_Prodi

Nama_Prodi

Tanggal_Penugasan

Mengepalai

DOSEN

PROGRAM STUDI

No_Dosen

Nama_Dosen

Relasi DOSEN

Kode_Prodi

Nama_Prodi

No_Dosen

Tanggal_penugasan

Relasi PROGRAM STUDI


Pemetaan entitas asosiatif ternary

Pemetaan Entitas Asosiatif(Ternary)

No_Pelanggan

Nama

Vendor

Alamat

Tanggal

No_Kirim

Jumlah

PENGIRIMAN

PELANGGAN

VENDOR

No_Pelanggan

Nama

Relasi PELANGGAN

Relasi PENGIRIMAN

No_Kirim

Tanggal

Jumlah

No_Pelanggan

Kode_Vendor

Kode_Vendor

Alamat

Relasi VENDOR


Pemetaan unary 1 n

Pemetaan Unary 1:N

Nama_Pegawai

No_Pegawai

Tgl_Lahir

PEGAWAI

Mengepalai

No_Pegawai

Nama_Pegawai

Tgl_lahir

ID_Manajer

Relasi PEGAWAI


Pemetaan unary m m

Pemetaan Unary M:M

Nama_Item

Harga_Unit

No_Item

ITEM

Tersusun_atas

Jumlah

No_Item

Nama_Item

Harga_Unit

Relasi ITEM

No_Item

No_Komponen

Jumlah

Relasi KOMPONEN


Pemetaan hubungan supertipe subtipe

Pemetaan Hubungan Supertipe/Subtipe

Nama_Pegawai

Alamat

PEGAWAI

Nomor_Pegawai

Tgl_Mulai_Kerja

Tipe_Pegawai:

d

“K”

“H”

“T”

PEGAWAI HARIAN

PEGAWAI TETAP

PEGAWAI KONTRAK

Kompensasi

Upah_Harian

Gaji_Bulanan

Tunjangan

Nomor_Kontrak

Lama_Kontrak


Pemetaan hubungan supertipe subtipe lanjutan

Pemetaan Hubungan Supertipe/Subtipe (Lanjutan…)

  • Model relasional tidak mendukung hubungan supertipe/subtipe secara langsung

  • Strategi pemecahan untuk kasus di depan:

    • Buat relasi terpisah untuk masing-masing supertipe dan subtipe

    • Berikan atribut-atribut yang umum (termasuk kunci primer) ke supertipe

    • Masukkan pembeda subtipe pada supertipe

    • Tambahkan kunci primer pada supertipe ke semua subtipe


Solusi pemetaan hubungan supertipe subtipe

Solusi Pemetaan Hubungan Supertipe/Subtipe

Nomor_Pegawai

Nama_Pegawai

Alamat

Tgl_Mulai_Kerja

Tipe_Pegawai

PEGAWAI

Nomor_Pegawai

Upah_Harian

PEGAWAI HARIAN

Nomor_Pegawai

Gaji_Bulanan

Tunjangan

PEGAWAI TETAP

Nomor_Pegawai

Nomor_Kontrak

Lama_Kontrak

Kompensasi

PEGAWAI KONTRAK


Tugas

Tugas

  • Suatu hasil ujian dinyatakan dengan atribut seperti berikut:

    • No_Mhs

    • Nama_Mhs

    • Mataujian

    • No_Dosen_Penguji

    • Nama_Dosen_Penguji

  • Gambarkan diagram E-R-nya

  • Kemudian ubahlah diagram E-R tersebut ke relasi


  • Login