Sabtu, 24 November 2012

Basis Data Part7 (Dependency and Nomalisasi)

  • Functional Dependency(Ketergantungan funsional)  
=> merupakan suatu gambaran relational ataupun hubungan yang saling berkaitan antar atribut dalam suatu relasi.
notasi : A -> B
ket : A dan B merupakan atribut dari suatu tabel.

Functional Depedency dari tabel nilai :
1. NIM -> NamaMhs
    ket : untuk setiap NIM yang memiliki nilai yang sama maka nilai NamaMhs juga sama. jadi bisa dikatakan bahwa NIM=NamaMhs.

2. (MataKuliah, NIM) -> NilaiHuruf
    atribut NilaiHuruf  merupakan sebuah atribut yang mengikuti atribut MataKuliah dan NIM secara bersama-sama, dengan kata lain atrbut ini tergantung pada kedua atribut diatas yaitu MataKuliah dan NIM karena kedua atribut ini merupakan kuncinya(key).

macam-macam Dependency
1. Full Functional Dependency (ketergantungan penuh)
    yaitu merupakan suatu gabungan relasi A dan B dalam satu kesatuan.
contoh : NIM -> NilaiUTS (artinya NilaiUTS tergantung pada atribut NIM)

2. Partially Functional Dependency (ketergantungan parsial)
    contoh : (NIM,NamaMhs) -> NilaiUTS
ket : NilaiUTS tergantung pada NIM dan NamaMhs, akan tetapi pada ketergantungan parsial ini antara NIM dengan NamaMhs dapat di hilangkan salah satunya, bisa di pilih salah satu yang akan di jadikan keywordnya.

3. Transitve Functional Dependency
     yaitu merupakan salah satu functional dependency yang memliliki hubunan yang saling berkaitan antara relasi A,B dan C.
notasi : A->B dan B->C, sehingga untuk menghubunkan A dan C dibutuhkan atribut B.
contoh : Id_Pelanggan –> {Nama, Salesman, Area}
              Salesman –> Area

  • Normalisasi
merupakan sebuah caraatau teknik untuk menghasilkan sekumpulan relasi berdasarkan sifat-sifat yang diininkan.
ada beberapa langkah untuk normalisasi, antara lain :
1. 1NF
Merupakan sebuah relasi dimana setiap irisan antara baris dan kolom berisikan satu dan hanya satu nilai.
Cara untuk UNF ke 1NF:
- Tunjuk satu atau sekumpulan atribut sebagai kunci untuk tabel unnormalizied.
- Identifikasi grup yang berulang dalam tabel unnormalized yang berulang untuk kunci atribut
- Hapus grup yang berulang dengan cara memasukkan data yang semestinya ke dalam kolom yang kosong pada baris yang berisikan data yang berulang atau dengan cara menggantikan data yang ada dengan copy dari kunci atribut yang sesungguhnya  ke dalam relasi terpisah.
2. 2NF
Merupakan sebuah relasi dalam 1NF dan setiap atribut non-primary-key bersifat fully functionally dependent pada primary key.
Langkah perubahan dari 1NF ke 2NF yaitu:
- Mengidentifikasi primary key untuk relasi 1NF.
- Mengidentifikasi functional dependency dalam relasi.
- Jika terdapat partial dependency terhadap primary key, maka hapus dengan menempatkannya dalam relasi yang baru bersama dengan salinan determinannya.
3. 3NF
Merupakan sebuah relasi dalam 1NF dan 2NF dimana tidak terdapat atribut non-primary-key atribut yang bersifat transitive dependent pada primary key.
Langkah-langkah perubahan dari 2NF ke 3NF:
- Mengidentifikasi primary key dalam relasi 2NF.
- Mengidentifikasi functional dependency dalam relasi.
- Jika terdapat transitive dependency terhadap primary key, hapus dengan menempatkannya dalam relasi yang baru bersama dengan salinan determinannya.

Rabu, 14 November 2012

Basis Data Part6 (Query Language)

STRUCTURED QUERY LANGUAGE
Query Language atau yang lebih dikenal dengan nama SQL merupakan suatu bahasa yang digunakan untuk membuat sebuah database.
dalam SQL terdapat 2 jenis perintah, yaitu sebagai berikut :
1.  Data Devinition Language (DDL) yaitu merupakan suatu perintah SQL untuk mendefinisikan suatu struktur database. misalnya perintah
  • create => merupakan perintah dasar dalam pembuatan tabel
  • alter => merupakan suatu perintah untuk mengubah tabel
  • rename => digunakan untuk mengubah nama tabel
  • drop => digunakan untuk menghapus tabel
2. Data Manipulasi Language (DML) yaitu merupakan suatu perintah SQL yang digunakan untuk memanipulasi suatu pengolahan data dalam tabel. perintahnya antara lain : 
  • select => digunakan untuk memanggil data dalam sebuah tabel
  • insert => digunakan untuk memasukkan data kedalam abel
  • update => digunakan untuk mengubah nama dalam tabel
  • delete => untuk menghapus data dalam tabel
beberapa kelebihan SQL :
  1. dapat digunakan di server sehingga pengguna dapat menggunakannya di server
  2. aplikasinya mudah dimengerti oleh pengguna
  3. dapat di deain khususuntuk database oracle
prosedural language
yaitu user menginstruksikan pada sistem agar membentuk serangkaian operasi dalam mendapatkan informasi yang di inginkan.

Nonprosedural Language
yaitu user menginstruksikan informasi tanpa memberikan prosedur dalam memperoleh informasi yang diinginkan.

operasi yang dilakukan yaitu :
a. operasi unary yaitu merupakan suatu operasi yang dilakukan pada suatu relasi tertentu saja.
b. operasi binary yaitu suatu operasi yang memerlukan pasangan relasi

Projection
yaitu suatu operasi yang digunakan untuk memperoleh kolom tertentu dengan cara menyeleksi atribut dalam suatu relasi.

Selection
selection digunakan untuk membentuk sebuah relasi bbaru dengan cara memilih/menyeleksi record atribut dari suatu relasi

Basis Data Part5 (Transformasi Model Data)


Transformasi Dasar

  • merupakan relasi 1-1 yang menghubungkan 2 himpunan entitas yang dinyatakan dalam bentuk penambahan atribut-atribut relasi ke tabel yang mewakili salah satu dari dua himpunan entitas tersebut.
  • merupakan relasi dengan derajat relasi 1-N yang menggabungkan 2 himpunan yang akan direpresentasikan dalam pemberian atribut key dari himpunan entitas berderajat 1 ke tabel yang berderajat N. Atribut key dari himpunan entitas berderajat 1 dapat menjadi sebuah atribut tambahan bagi himpunan entitas berderajat N.
Agregasi
  • memberi gambaran tentang suatu himpunan relasi secara langsung yang akan menghubungkan suatu himpunan entitas dengan himpunan relasi
  • mensyaratkan adanya relasi lain
  • relasi terbentuk tidak karena adanya satu entitas saja tetapi karena adanya entitas lain.
Implementasi Himpunan Entitas Lemah dan Sub Entitas
  • diimplementasikan dalam bentuk tabel seperti himpunan entitas kuat
  • entitas kuat dapat langsung menjadikan sebuah tabel yang utuh tanpa melihat relasinya dengan entitas yang lain, sedangkan himpunan entitas lemah hanya dapat ditransformasikan menjadi sebuah tabel yang menyertakan atribut key-nya dari hasil implementasinya.
Entitas Kuat
entitas kuat merupakan suatu himpunan entitas yang dilibatkan dalam ERD, entitas ini tidak memiliki ketergantungan  dengan himpunan entitas lainnya.

Entitas Lemah
entitas lemah yaitu merupakan suatu entitas yang keberadaannya tergantung pada entitas lain. entitas ini tidak memiliki atribut kunci(key attribute).