Selasa, 27 Maret 2012

Data Control Language dan Normalisasi

1. Praktekan perintah2 pada DCL!

DCL mempunyai 2 perintah:

- Grant (Digunakan untuk memberikan hak akses oleh administrator (pemilik utama) server kepada user (pengguna biasa))
Rumus : GRANT hak_akses ON nama_tabel TO pemakai;

contoh : - GRANT SELECT ON Penjualan.item TO Elfrida
- GRANT SELECT,INSERT ON Penjualan.jualDetail TO kasir;
- GRANT UPDATE(kodeItem,NmItem,kategori,Harga) ON Penjualan.item TO Elfrida;

- Revoke (untuk menghilangkan hak akses yang telah diberikan kepada user oleh administrator atau mencabut hak-hak dari seorang user terhadap database tertentu atau sebagian isi dari database)
Rumus : REVOKE hak_akses ON nama_database.nama_tabel FROM user.
REVOKE hak_akses(field1,field2, field3,…) ON nama_database.nama_tabel FROM user (untuk menghapus batasan pada kolom tertentu)

contoh: - REVOKE SELECT ON Penjualan.item TO Elfrida
- REVOKE UPDATE(kodeItem,NmItem,kategori,Harga) ON Penjualan.item TO Elfrida


2. Berikan contoh normalisasi pada kasus lain.


3. Dari tabel data yang dihasilkan pada perancangan basis data,
lakukanlah normalisasi pada tabel-tabel tersebut sampai bentuk normal
ketiga !


Senin, 05 Maret 2012

Data Manipulation Language & Entity Relational Diagram

1.Perintah-perintah DML
-SELECT
Syntax : SELECT * FROM nama_tabel;

Parameter : from, order by, where, dll

Contoh : SELECT * FROM obat;

Penjelasan : perintah diatas akan menampilkan semua isi pada tabel obat.

-DESC
Syntax : DESC nama_table;

Parameter : -

Contoh : DESC obat;

Penjelasan : perintah diatas akan memperlihatkan stuktur dari tabel obat yang telah dibuat.

-INSERT INTO
Syntax : INSERT INTO nama_tabel VALUES (‘isi_field1’ , ‘isi_field2’,……);

Parameter : values, set

Contoh : INSERT INTO obat VALUES (’CO012’,’Corsel’,’Suplement’,’13’,’183500’);

Penjelasan : perintah diatas akan membuat sebuah record baru dalam tabel obat dengan id_obat = CO012, nama_obat = Corsel, kategori = Suplement, jumlah = 13, dan harga = 183500.

-UPDATE
Syntax : UPDATE nama_tabel SET nama_field = ’nilai_baru’ WHERE nama_field = ’kondisi’ ;

Parameter : set, where

Contoh : UPDATE obat SET id_obat = ‘CE008’ WHERE nama_obat = ‘Cetoros’;

Penjelasan : perintah diatas akan mengubah id_obat BD019 menjadi CE008 pada tabel obat yang memiliki nama_obat Cetoros.

-DELETE FROM
Syntax : DELETE FROM nama_tabel WHERE nama_field =’option’;

Parameter : where

Contoh : DELETE FROM obat WHERE id_obat =’CO012’;

Penjelasan : perintah diatas akan menghapus record dari tabel obat yang memiliki id_obat CO012.

-EXPLAIN
Syntax : EXPLAIN nama_table;

Parameter : -

Contoh : EXPLAIN obat;

Penjelasan : perintah diatas akan memperlihatkan stuktur dari tabel obat yang telah dibuat.

-SELECT DESCENDING
Syntax : SELECT field1, field2, dan seterusnya FROM nama_tabel ORDER BY field yang jadi acuan DESC;

Parameter : from, order by, desc

Contoh : SELECT id_obat, nama_obat, jumlah FROM BY obat ORDER BY id_obat DESC;

Penjelasan : Perintah diatas akan menampilkan data pada id_obat, nama_obat dan jumlah pada tabel obat dan yang menjadi acuan pengurutan data dari bawah ke atas adalah id_obat.

-SELECT COUNT
Syntax : SELECT COUNT(*)FROM nama_tabel;

Parameter : count, from

Contoh : SELECT COUNT(*)FROM obat;

Penjelasan : Perintah diatas menampilkan jumlah record yang ada pada tabel obat.

-SELECT MAX
Syntax : SELECT MAX(nama_field) FROM nama_tabel;

Parameter : max, from

Contoh : SELECT MAX(jumlah) FROM obat;

Penjelasan : Perintah diatas akan menampilkan nilai tertinggi dari field jumlah pada tabel obat.

-SELECT MIN
Syntax : SELECT MIN(nama_field) FROM nama_tabel;

Parameter : min, from

Contoh : SELECT MIN(jumlah) FROM obat;

Penjelasan : Perintah diatas akan menampilkan nilai terendah dari field jumlah pada tabel obat.

2. Macam-macam atribut :

1. Atribut deskriptif. Merupakan atribut-atribut yang tidak menjadi atau merupakan anggota dari key primer.
2. Atribut sederhana. Atribut atomic yang tidak dapat dipilah lagi.
3. Atribut komposit. Merupakan atribut yang masih dapt diuraikan lagi menjadi sub-sub atrbut yang masing-masing memiliki makna.
4. Atribut bernilai tunggal. Ditujukan pada atribut-atribut yang memiliki paling banyak satu nilai untuk setiap baris data.
5. Atribut bernilai banyak. Ditujukan pada atribut-atribut yang dapat kita isi lebih dari satu nilai tetapi jenisnya sama.
6. Atribut harus bernilai. Sejumlah atribut pada sebuah table yang kita tetapkan harus berisi data, dan nilai nya tidak boleh kosong.
7. Atribut turunan. Atribut yang nilai-nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut atau table lain yang berhubungan.

3. Sebuah Entity-Relationship Model (ERM) merupakan abstrak dan konseptual representasi data.
Entity-Relationship adalah salah satu metode pemodelan basis data yang digunakan untuk menghasilkan skema konseptual untuk jenis/model data semantik sistem.
Dimana sistem seringkali memiliki basis data relasional, dan ketentuannya bersifat top-down.
Diagram untuk menggambarkan model Entitiy-Relationship ini disebut Entitiy-Relationship diagram, ER diagram, atau ERD.

Fungsinya :
• Memudahkan untuk dilakukannya analisis dan perubahan sistem sejak dini, bersifat murah dan cepat.
• Memberikan gambaran umum akan sistem yang akan di buat sehingga memudahkan developer.
• Menghasilkan dokumentasi yang baik untuk client sebagai bahan diskusi dengan bentuk E-R Diagram itu sendiri, dan
• Kamus data bagi bagi para pengembang database.

4.Simbolnya :
• Kotak persegi panjang, menggambarkan himpunan entitas
• Elip, menggambarkan atribut-atribut entitas
• Diamon, menggambarkan hubungan antara himpunan entitas
• Garis, yang menghubungkan antar objek dalam diagram E-R

5.contoh kardinalitas basis data:

a. One To One
1 Kartu Mahasiswa hanya untuk 1 Mahasiswa.Tidak mungkin 1 Kartu Mahasiswa bisa dimiliki banyak Mahasiswa.

b. One To Many
1 komputer/Laptop bisa digunakan untuk banyak orang.

c. Many To One
Banyak murid hanya mempunyai 1 wali kelas.

d. Many To Many
Dalam hubungan antara mahasiswa dengan
dosen pada perguruan tinggi, yaitu seorang seorang dosen
mengajar banyak mahasiswa, sebaliknya seorang
mahasiswa dapat diajar oleh beberapa dosen, sehingga
terjadi hubungan banyak ke banyak.

6. Spesialisasi adalah proses pengelompokan suatu himpunan entiitas yang menimbulkan kelompok entitas baru.
Generalisasi adalah kebalikan dari spesialisasi yaitu menggabungkan beberapa himpunan entitas menjadi satu himpunan entitas baru

Label