Selasa, 27 November 2012

Dependency dan Normalisasi

Functional Dependency
Menggambarkan hubungan, batasan, keterkaitan antara atribut-atribut dalam relasi.
Simbolny: -> dibaca secara fungsional menentukan.

contoh:
A->B = A secara fungsional menentukan B
A dan B merupakan atribut tabel.


  • NIM->Nama 
           Karena untuk setiap NIM yang sama maka Nama juga sama.
  • {Matakuliah,NIM}->NilaiHuruf
          Karena untuk menentukan NilaiHuruf tidak hanya membutuhkan NIM saja.

Macam Dependency:
  • Full Functional
  • Partial
  • Transitive
  • Full Functional
          Menunjukkan jika terdapat atribut A dan B dimana
  • B memiliki ketergantungan secara penuh pada A
  • B bukan full dependency jika ada subset A
     contoh:
     {NIM,Nama}->id_ruang


  • Partially Dependency
          Merupakan ketergantungan fungsional dimana beberapa atribut dapat dihilangkan dari A dengan ketergantungan tetap dipertahankan.
> B memiliki dependency terhadap subset A.

contoh:
NIM,Nama-> id_ruang
Jika nama dihilangkan tetap terjadi ketergantungan atau id_ruang tetap bisa dipertahankan.

  • Transitive Dependency
          Merupakan tipe functional dependency yaitu kondisi dimana A,B,C adalah atribut sebuah relasi dimana A-> B dan B->C
Maka C diakatakan sebagai transitive dependency terhadap A melalui B.

Normalisasi
Merupakan suatu proses untuk mendapatkan struktur tabel atau relasi yang efisien dan bebas sari anomali dan mengacu pada cara data item dikelompokkan ke dalam struktur record.
Normalisasi adalah proses pembentukan struktur basis data sehingga sebagian besar ambiguitas bisa dihilangkan.
Mengapa dilakukan Optimalisasi?
  • Optimalisasi struktur-struktur tabel
  • Meningkatkan kecepatan
  • Menghilangkan pemasukan data yang sama
  • Lebih efisien dalam penggunaan media penyimpanan
  • Mengurangi redundansi
  • Menghindari anomali (onsertion anomalies, deletion anomalies, update anomalies)
  • Integritas data yang ditingkatkan
Bentuk Normalisasi
  • 1NF
  • 2NF
  • 3NF
  • BCNF
  • 4NF
  • 5NF



Kamis, 15 November 2012

Pengenalan SQL (Structured Query Language)

SQL adalah suatu bentuk script yang digunakan untuk berkomunikasi dengan basisdata.

 Elemen SQL
Elemen dasar SQL mencakup pernyataan, nama, tipe data, konstanta, ekspresi, dan fungsi bawaan.
1. Pernyataan
Pernyataan adalah perintah SQL yang meminta sesuatu tindakan kepada DBMS. SQL memiliki kira-kira 30 pernyataan. Beberapa pernyataan dasar SQL berikut ini :
ALTER
Mengubah struktur tabel
COMMIT
Mengakhiri sebuah eksekusi transaksi
CREATE
Menciptakan tabel, indeks atau pandangan
DELETE
Menghapus baris pada tabel
DROP
Menghapus tabel, indeks atau pandangan
GRANT
Menugaskan hak terhadap basis data kepada pengguna atau grup pengguna
INSERT
Menambahkan sebuah baris pada tabel
REVOKE
Membatalkan hak terhadap basis data
ROLLBACK
Mengembalikan ke keadaan semula sekiranya suatu transaksi gagal dilaksanakan
SELECT
Memilih baris dan kolom pada tabel
UPDATE
Mengubah nilai pada sebuah baris


2. Nama
Nama digunakan sebagai identitas bagi objek-objek pada DBMS. Contoh objek pada DBMS adalah tabel, kolom dan pengguna.


3. Tipe Data
Setiap data memiliki tipe data.
a. Tipe data untuk numerik
b. Tipe data string
c. Tipe data tanggal dan jam


4. Konstanta
Konstanta menyatakan nilai yang tetap.
5. Ekspresi
Ekspresi adalah segala sesuatu yang menghasilkan nilai. Ekspresi digunakan untuk menghitung nilai.

6. Aggregate Functions (Fungsi Agregat)
Fungsi adalah sebuah subprogram yang menghasilkan suatu nilai jika dipanggil. Fungsi agregat adalah fungsi standar di dalam SQL, suatu fungsi yang digunakan untuk melakukan summary, fungsi statistik standar yang dikenakan pada suatu tabel atau query.
a. AVG(ekspresi)
Fungsi ini digunakan untuk mencari rata-rata nilai dalam suatu kolom dari suatu tabel atau ekspresi. Ekspresi dalam fungsi AVG umumnya adalah nama kolom. Kolom yang dicari nilai rata-ratanya adalah kolom dengan tipe data numerik.
b. COUNT(x)
Fungsi ini digunakan untuk menghitung jumlah record (baris) dari suatu kolom dari suatu tabel. X adalah nama kolom yang ingin dicari jumlah barisnya.
c. MAX(ekspresi)
Fungsi ini digunakan untuk mencari nilai terbesar dari suatu kolom dari suatu tabel. Kolom yang dicari nilai terbesarnya memiliki tipe data numerik.
d. MIN(ekspresi)
Fungsi ini digunakan untuk mencari nilai terkecil dari suatu kolom dari suatu tabel. Kolom yang dicari nilai terkecilnya memiliki tipe data numerik.
e. SUM(ekspresi)
Fungsi ini digunakan untuk mendapatkan nilai total dari suatu kolom pada suatu tabel.