Rabu, 04 Juni 2014

Basis Data Asyiikk !!

MENGENAL BASIS DATA BERSAMA LEBIH ASYIIK !!

            Halo manteman bagaimana nih kabarnya?? Sekarang mimin mau ngajarin manteman semua Basis Data, sebelumnya ada yang sudah tahu belum, apa itu Basis Data?
Oke, jadi begini menteman. Seperti yang kita lihat terdapat 2 kata dalam Basis Data. Yaitu Basis dan Data. Basis merupakan suatu system (Satuan  yang memiliki tujuan yang sama) sedangkan Data adalah representasi dunia nyata.
            Jadi apa sih maksudnya?? Jadi Basis Data atau Database dapat diartikan sebagai suatu sistem yang merepresentasikan dunia nyata. atau merupakan penyimpanan kumpulan informasi  secara sistematik dalam sebuah komputer  sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut.
Lalu apa sih tujuan di bentuknya Basis Data, disini mimin punya beberapa tujuan dibangunnya Basis Data, diantaranya ;

•  Kecepatan & kemudahan (speed)
•  Efisiensi ruang penyimpanan (space)
•  Keakuratan (accuracy)
•  Ketersediaan (availability)
•  Kelengkapan (completeness)
•  Keamanan (security)
•  Kebersamaan pemakaian (sharability)

          Nah manteman disini mimin punya table tentang perkembangan dari Basis Data/ Database. Langsung aja yuk cek it dot....

            Sekarang mimin mau ngajakin manteman nih untuk buat Basis Data, bagaimana sih caranya. Caranya kita harus membuat sebuah Table diagram yang namanya ERD… 

Apa itu ERD ??
            ERD atau Entity-Relationship Diagram adalah model data konseptual tingkat tinggi untuk perancangan basis data.
Seperti apa sih sebenarnya ERD itu?? Disini mimin punya contoh ERD sederhana


Walah jangan kaget dulu manteman, sini mimin jelasin satu satu yaa ^_^

Dalam ERD terdapat Komponen-komponen utama model ER yaitu:

  Entitas (entity), Entitas memodelkan objek-objek yang berada


diperusahaan/lingkungan.

  Relationship. Relationship memodelkan koneksi/hubungan di antara
entitas-entitas.

  Atribut-atribut (properi-properti), memodelkan properti-properti

dari entitas dan relationship.

  Konstrain-konstrain (batasan-batasan)  integritas, konstrain-konstrain ketentuan validitas.

Selain bentuk-bentuk di atas, ternyata ada beberapa bentuk yang lain lagi manteman… ini dia 



            Manteman disini mimin mau jelasin hal yang penting dalam ERD, yaitu relasi \^_^/ yee. Relasi itu memiliki beberapa tipe teman, yaitu :

1. Unary

2. Binary

3. Ternary




Dalam ERD juga ada yang namanya kardinalitas manteman, apa itu kardinalitas??

Kardinalitas, yaitu relasi yang menggambarkan  banyaknya jumlah maksimum entitas dapat berelasi dengan entitas pada himpunan entitas yang lain. Kardinalitas juga ada macam nya manteman :
1.     
One to one

2.     
One to many



3.     
Many to many
            Sekarang ada yang tau apa itu key ?? key adalah kunci !!! yupz benar tapii kunci seperti apa yang ada dalam basis data?? Apa kegunaannya ? bagaimana menentukan suatu key?
Key adalah cara untuk membedakan suatu entitas didalam himpunan entitas dengan entitas lain. Key dipilih karena unik, untuk setiap entitas sehingga bisa di bedakan dari entitas yang lain Kita bisa mendefinisikan key  sebagai satu atau gabungan dari beberapa atribut yang dapat membedakan semua row dalam relasi secara unik.Macam key ada 3 yaitu :
1.      Superkey, atribut (kumpulan atribut) yang dapat membedakan satiap baris data dalam sebuah relasi secara unik.
2.      Candidate key, Kumpulan atribut minimal yang dapat membedakan setiap baris data dalam sebuah relasi secara unik.
3.      Primary key, merupakan salah satu dari candidate key yang terpilih

Oke at least mimin mau ngasih kalian cara mudah buat bikin ERD….
1.      Mengidentifikasikan dan menetapkan seluruh himpunan entity yang akan terlibat.
2.      Menentukan atribut-atribut dari setiap entity.
3.      Menentukan atribut primary key dari setiap entity.
4.      Menentukan relationship antar entity.
5.      Menentukan atribut-atribut dari setiap relationship (jika ada).
6.      Menentukan Cardinality Rasio.
7.      Menentukan Participation Constraint.

Sekarang menuju ke tahap selanjutnya yee \^_^/

Selanjutnya manteman tau gak apa itu Normalisasi dan apa kegunaannya dalam Basis Data ???

Ternyata Normalisasi adalah cara yang dilakukan untuk menghilangkan ke ambiguitasan, wiih keren kan? 0_o. Lalu apa sih hubungannya Normalisasi dengan Basis Data??
Begini manteman ketika kita sudah membuat sebuah table biasa konversi dari table ERD, masih ada hal yang janggal.. coba kita lihat ^_^

Id_Mahasiswa
Nama_Mhs
No.tlp_Mhs
1304301
Rahmaniansyah
085724094xxx, 0819508xxx
1304303
Dwi Putri
085603110xxx, 0876543xxx
Coba manteman lihat di table No.tlp_Mhs… ada yang aneh kan?? Di dalam table ternyata terdapat isian data yang lebih dari satu!! Padahal seharusnya tidak boleh loh manteman. Itu namanya A-M-B-I-G-U…. oleh karena itu maka di perlukan Normalisasi dalam Basis Data.
Manteman dalam penormalisasian terdapat beberapa syarat, diantaranya :

Syarat 1st NF: tidak ada atribut multivalue dan tidak ada lebih dari satu atribut dengan domain yang sama
Bagaimana caranya? Solusi agar tabel memenuhi syarat 1st NF adalah dengan melakukan pemecahan tabel atau dekomposisi tabel.

Id_Mahasiswa
Nama_Mhs
1304301
Rahmaniansyah
1304303
Dwi Putri

Id_Mahasiswa
No.tlp_Mhs
1304301
085724094xxx
1304301
0819508xxx
1304303
085603110xxx
1304303
0876543xxx

Syarat 2nd NF: memenuhi syarat 1st NF dan tidak mengalami partial functional dependency

NIM
Nama_Mhs
Kd_Jur
Nama_jur
Kode_MK
Nama_MK
SKS
Nilai
1-01
Tukiem
TE
Elektro
TE-001
Elektronika
3
A
2-01
Jamiem
IF
Informatika
IF-001
Algoritma
3
B
3-01
Maeiem
IF
Informatika
IF-002
Database
2
A

Perhatikan bahwa:

1.      (nim, kode_mk) adalah candidate key
2.      FD1: (nim) > (nama_mhs, kd_jur, nama_jur)
3.      FD2: (kode_mk) > (nama_mk, sks)
4.      FD3: (nim,kode_mk) > nilai

Berarti Terjadi Partial Functional dependency:

         FD 1: (nim,kode_mk) > (nama_mhs,kd_jur,nama_jur) secara parsial
         FD 2: (nim,kode_mk) > (nama_mk,sks) secara parsial
Adapun hasil dekomposisi dari tabel T-1 adalah 3 tabel berikut ini:



Ketiga tabel hasil dekomposisi tersebut sudah tidak mengalami partial functional dependency.

Syarat 3rd NF: memenuhi syarat 2nd NF dan tidak mengalami transitive functional dependency

Perhatikan bahwa:

FD1: (nim) > (nama_mhs, kd_jur, nama_jur)
FD2: (kd_jur) > (nama_jur)

Berarti Terjadi Transitive FD:

(nim) > (nama_jur) secara transitif melalui (kd_jur)



Syarat BCNF: memenuhi syarat 3rd NF dan ruas kiri dari setiap functional dependency-nya adalah super key

Baikklah manteman mungkin segitu aja ya teorinya sekarang ayo kiita beranjak ke codingan bwahahaha ini nih yang buat mimin semanget XD

Pertama Kita harusnya punya program yang namanya XAMPP sebelum mengoding jangan lupa xampp nya di aktifkan dan notepadnya udah ada, setelah itu kita buka CMD kita ^_^. Setelah itu jangan lupa ngepath ala Basis Data. Ada yang tahu gak gimana???
Gini nih caranya
1.      cd c:\xampp\mysql\bin
2.      mysql –u root

Setelah itu mari kita ngoding dengan menggunakan bahasa Basis Data yaitu SQL(Structure Query Language). Nih mimin punya contoh Soalnya

Coba buat SQL dari ERD Berikut ^_^ !!
create database Mengajar ;
use Mengajar ;
create table Dosen(
id_dosen varchar(10) primary key,
Nama_Dosen varchar(30) not null
) ;

create table Mahasiswa(
id_Mhs varchar(10) primary key,
Nama_Mhs varchar(30) not null
) ;

Sekarang ayo kita masukan data kedalam table J
insert into Dosen values
('KP001','Jujun'),
('KP002','Jejen'),
('KP003','Jajang');

insert into Mahasiswa values
('M001','Rahma'),
('M002','Dwi'),
('M003','Putri');

Oke kayaknya sekian aja yah mimin bercerita panjang lebar wkwkww
baiklah manteman jangan pernah bosan untuk mencari ilmu ya dan jangan lupa Belajar Bersama itu lebih Asyiik lohh ^_^

Refensi diktat IK 330 Basis Data Budi Laksono Putro Dosen Ilmu Komputer UPI
Cek juga dong Sensei Basis Data mimin http://budi.staf.upi.edu/
Ini tentang jurusan mimin http://cs.upi.edu/

Tidak ada komentar:

Posting Komentar

It's About me

Foto saya
Bandung, Bandung Barat/Jawa Barat, Indonesia
Berimajinasi dan warnai duniamu dengan senyun :D