Perancangan Database Bagian I - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Perancangan Database Bagian I

Description:

Title: Slide 1 Author: akadir Last modified by: vivine Created Date: 3/18/2006 3:23:36 AM Document presentation format: On-screen Show (4:3) Company – PowerPoint PPT presentation

Number of Views:58
Avg rating:3.0/5.0
Slides: 35
Provided by: aka49
Category:

less

Transcript and Presenter's Notes

Title: Perancangan Database Bagian I


1
Perancangan DatabaseBagian I
2
Model Data Relasional
  • Data direprentasikan dalam tabel berdimensi dua
  • Tiga komponen yang mendasari model data
    relasional
  • Struktur data
  • Pemanipulasi data
  • Integritas data

3
Model Data Relasional
  • Istilah relasi (relation) menyatakan nama tabel
  • Contoh
  • PEGAWAI(Nomor_Peg, Nama)

Struktur data
4
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)
5
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_B
arang, Nama_Barang)
Kunci komposit BARANG DIPESAN(No_Pesanan,
Kode_Barang,
Jumlah) NILAI(No_Mhs, Kode_Matakuliah,Skor)
6
Kunci Tamu
  • Kunci tamu (foreign key) biasa digunakan sebagai
    penghubung ke relasi lain

Kunci asing
PELANGGAN
Kd_Pelanggan ?
Nama
Kd_Kota
A001
Aditya
0501
KOTA
Kd_Kota ?
Nama_Kota
B001
Bakdi
0502
B002
Bramanto
0502
0501
Semarang
0502
Salatiga
Kunci primer
0503
Kendal
7
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)

8
Sifat Relasi
  1. Setiap relasi memiliki nama yang unik
  2. Setiap isian pada perpotongan baris dan kolom
    harus bersifat atomik (bernilai tunggal)
  3. Setiap baris bersifat unik
  4. Setiap atribut memiliki nama yang unik
  5. Urutan kolom tidak penting
  6. Urutan baris juga tidak penting

9
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

10
Kekangan Domain
  • 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

11
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

12
Integritas Referensial
  • Memastikan bahwa konsistensi antara dua buah
    relasi tetap terjaga

Keadaan Awal
Kd_Kota
Nama_Kota
Kd_Pelanggan
Nama
Kd_Kota
0501
Semarang
A001
Aditya
0501
0502
Salatiga
B001
Bakdi
0502
0503
Kendal
B002
Bramanto
0502
13
Efek Tanpa Integritas Referensial
Keadaan Setelah data 0502 pada KOTA dihapus
0502
Salatiga
Kd_Kota
Nama_Kota
Kd_Pelanggan
Nama
Kd_Kota
0501
Semarang
A001
Aditya
0501
0503
Kendal
B001
Bakdi
0502
B002
Bramanto
0502
Menjadi tidak konsisten
14
Efek Integritas Referensial
Keadaan Setekah data 0502 pada KOTA dihapus
0502
Salatiga
Kd_Kota
Nama_Kota
Kd_Pelanggan
Nama
Kd_Kota
0501
Semarang
A001
Aditya
0501
0503
Kendal
B002
Bramanto
0502
Ikut terhapus! atau penghapusan ditolak
B001
Bakdi
0502
15
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

16
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

17
Anomali
  1. Anomali penyisipan
  2. Anomali penghapusan
  3. Anomali peremajaan

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

PEMASOK KOTA BARANG JUMLAH
Kartika Jakarta Monitor GGG 10
Citra Bandung ZIP drive 4
Candra Jakarta Keyboard 5
Citra Bandung Mouse CCP 25
Pemasok Citra pindah ke Bogor dan Pengubahan
dilakukan hanya pada data pertama
PEMASOK KOTA BARANG JUMLAH
Kartika Jakarta Monitor GGG 10
Citra Bogor ZIP drive 4
Candra Jakarta Keyboard 5
Citra Bandung Mouse CCP 25
19
Anomali Penyisipan
KULIAH RUA NG TEMPAT
Jaringan Komputer Merapi Gedung Utara
Pengantar Basis Data Merbabu Gedung Utara
Matematikaa I Rama Gedung Selatan
Sistem Pakar Sinta Gedung Selatan
Kecerdasan Buatan Merapi Gedung Utara
  • Terjadi bila ada penambahan data
  • Perhatikan contoh disamping
  • Masalah Bagaimana caranya menyimpan fakta bahwa
    ruang baru bernama Arjuna ada pada gedung
    selatan?

20
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 20 dihapus? Data yang menyatakan
    bahwa biaya kursus bahasa Jepang juga akan
    terhapus

NO_SISWA NAMA_KURSUS BIAYA
10 Bahasa Inggris 120.000
10 Bahasa Prancis 120.000
10 Bahasa Mandarin 180.000
15 Bahasa Inggris 120.000
12 Bahasa Jepang 160.000
21
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
22
Tranformasi Diagram ER ke Relasi
  • Memetakan Entitas dengan Atribut Komposit

Jalan
Nama_Pelanggan
Kota
Tipe entitas PELANGGAN dengan atribut komposit
Kode_Pos
No_Pelanggan
PELANGGAN
Alamat_Pelanggan
Relasi PELANGGAN
No_Pelanggan
Nama_Pelanggan
Jalan
Kota
Kode_Pos
23
Tranformasi Diagram ER ke Relasi
  • Memetakan Entitas dengan Atribut Bernilai Ganda

Nama_Pegawai
Alamat_Pegawai
No_Pegawai
Tipe entitas PEGAWAI dengan atribut bernilai ganda
PEGAWAI
Keterampilan
No_Pegawai
Nama_Pegawai
Alamat_Pegawai
Relasi PEGAWAI
No_Pegawai
Keterampilan
Relasi KETERAMPILAN PEGAWAI
24
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
25
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
26
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
27
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
Relasi PROGRAM STUDI
Kode_Prodi
Nama_Prodi
No_Dosen
Tanggal_penugasan
28
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
29
Pemetaan Unary 1N
Nama_Pegawai
Tgl_Lahir
No_Pegawai
PEGAWAI
Mengepalai
No_Pegawai
Nama_Pegawai
Tgl_lahir
ID_Manajer
Relasi PEGAWAI
30
Pemetaan Unary MM
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
31
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
Gaji_Bulanan
Upah_Harian
Nomor_Kontrak
Lama_Kontrak
Tunjangan
32
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

33
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
34
PR
  • Suatu hasil ujian dinyatakan dengan atribut
    seperti berikut
  • No_Mhs
  • Nama_Mhs
  • Mataujian
  • No_Dosen_Penguji
  • Nama_Dosen_Penguji
  • Nilai
  • Gambarkan diagram E-R-nya
  • Kemudian ubahlah diagram E-R tersebut ke relasi
Write a Comment
User Comments (0)
About PowerShow.com