Selasa, 07 April 2015

BASIS DATA



Dalam kehidupan sehari-hari kita sering membahas mengenai data dan informasi. Informasi berasal dari kumpulan data yang di simpan yang terstruktur pada sebuah system yang dikenal dengan basis data.
Data dan informasi
Definisi data dan infromasi dari beragam sumber dapat disimpulkan definisi data dan informasi sebagai berikut :
è Data adalah representasi untuk mewakili nilai fakta dunia nyata. Representasi data dapat berupa numerik, alphanumerik, gambar, video, suara, dan lain-lain. Fakta dunia nyata dapat berupa barang, kejadian, aktifitas, perasaan, dan semua tentang dunia nyata.
è Informasi adalah data yang telah di kelola dalam bentuk tertentu untuk memberikan makna atau arti bagi penerimanya.

Sistem Basis Data (DBMS)

Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). System basis data adalah sistem yang terdiri dari atas sekumpulan file-file yang saling berhubungan dan dikelola oleh program (DBMS) yang memungkinkan beberapa pemakai dan atau program lain yang memiliki otoritas untuk mengakses dan memanipulasi data tersebut.

Apa itu MySQL dan SQL?

Di dalam sistem basis data, basis data tidak dapat berdiri sendiri sehingga pasti terdapat komponen lain yang saling mendukung satu dengan lainnya. Hal yang dimaksud adalah sistem pengelola basis data atau Data Base Management System (DBMS). DBMS adalah perangkat lunak khusus yang digunakan untuk mengelola basis data. Perangkat lunak yang termasuk DBMS diantaranya meliputi dBase, Microsoft-Access, Oracle Database, dan MySQL. Adapun DBMS yang akan kita gunakan kali ini adalah MySQL. Dengan demikian, secara sederhana kita dapat mengatakan bahwa MySQL adalah perangkat lunak sistem manajemen basis data relasional yang digunakan untuk mengelola atau mengatur database yang memungkinkan user untuk berinteraksi dengan basis data di dalam disk. Lalu, Structured Query Language (SQL) adalah bahasa basis data yang paling populer saat ini.

Apa itu DDL?

Data Definition Language (DDL) adalah bahasa basis data yang digunakan untuk mendefinisikan, mengubah, dan menghapus basis data serta objek-objek yang diperlukan, seperti table, view, user, index dan sebagainya. DDL biasa digunakan oleh Data Base Administrator (DBA) dalam pembuatan sebuah aplikasi basis data.

Secara umum, DDL yang digunakan meliputi perintah sebagai berikut:

CREATE; digunakan untuk membuat objek yang baru;
ALTER; digunakan untuk mengubah objek yang sudah ada;
DROP; digunakan untuk menghapus objek yang sudah ada.

Apa saja Perintah yang Umum Digunakan pada MySQL?

Adapun beberapa contoh perintah DDL yang umum digunakan pada MySQL adalah sebagai berikut:

CREATE
ALTER/RENAME
DROP
CREATE DATABASE
CREATE FUNCTION
CREATE INDEX
CREATE PROCEDURE
CREATE TABLE
CREATE TRIGGER
CREATE VIEW
ALTER DATABASE
ALTER FUNCTION
ALTER PROCEDURE
ALTER TABLE
ALTER VIEW
RENAME TABLE
DROP DATABASE
DROP FUNCTION
DROP INDEX
DROP PROCEDURE
DROP TABLE
DROP TRIGGER
DROP VIEW

Tingkatan data dalam database relasi

Dalam suatu sistem database relasi , data yang tersimpan dalam sistem DBMS mempunyai tingkatan-tingkatan, yaitu sebagai berikut :

Merupakan sejumlah file yang dimungkinkan untuk direlasikan diantara file tersebut.

·      Field

Disebut juga elemen data/atribut, yaitu satuan data terkecil yang sudah utuh mempunyai makna yang dibentuk oleh sejumlah byte / karakter, Contoh : nama atau NRP, atua alamat, dll.

·   Record

Adalah gabungan sejumlah field / elemen data yang saling terkait. Contoh : data seorang mahasiswa terdiri dari NRP, Nama, Alamat, Jurusan.

Untuk menggunakan perintah-perintah DDL, mari simak pembahasan berikut:

1. Create
·          
Membuat Database
CREATE DATABASE nama_database;
Contoh:

Untuk menggunakan database yang sudah dibuat, gunakan perintah use.
Contoh:
·         Membuat Tabel
CREATE TABLE nama_tabel(
nama_field_1 tipe_data,
nama_field_2 tipe_data,
.
.
nama_field_n tipe_data
);
Contoh:

Keterangan :
-    Primary key, menjadikan field unik, nilainya berbeda dengan yang field lainya.
-    Auto_increment, menjadikan field terisi otomatis.
-    Not null, menjadikan field harus terisi, tidak boleh kosong.

2. Drop
·          
Menghapus Tabel
DROP TABLE nama_tabel;
Contoh :

·         Menghapus Database
DROP DATABASE nama_database;
Contoh:

3. Alter
·          
Mengubah Nama Tabel



·         Menambah Kolom



·         Mengganti Kolom



·         Menghapus Kolom



Apa itu Entity-Relationship Diagram (ER-D)?

ER-Diagram didefinisikan sebagai penerjemahan semesta data yang ada di 'dunia nyata' dengan memanfaatkan sejumlah perangkat konseptual menjadi sejumlah diagram data. Sederhananya, ER-D adalah suatu cara memodelkan suatu data di tingkat konseptual dalam perancangan basis data. Model ini juga merupakan alat modelling data yang populer dan banyak digunakan oleh para desainer basis data.



Apa saja Komponen ER-Diagram itu?

Adapun komponen ER-Diagram adalah sebagai berikut:

1. Entitas

Entitas didefinisikan sebagai individu yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain. Sederhananya, entitas dikenal sebagai suatu objek yang dapat dibedakan dengan objek lainnya di dalam dunia nyata. Entitas di dalam ER-D direpresentasikan oleh bangun datar persegi panjang.

Adapun beberapa contoh entitas adalah sebagai berikut: pembeli, pelayan, buku dan seterusnya.



 

2. Atribut

Atribut merupakan karakteristik dari entity atau relationship yang menyediakan penjelasan detail tentang entity atau relationship tersebut. Atribut di dalam ER-D direpresentasikan dalam bentuk bangun datar oval. 
3. Relasi

Relasi dikenal sebagai hubunganyang terjadi antara satu atau lebih entitas. Relasi pada ER-D direpresentasikan dalambentuk bangun datar belah ketupat.

4. Kardinalitas

Kardinalitas relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas lain. Adapun kardinalitas yang terjadi diantara dua himpunan entitas adalah sebagai berikut :


a. One to One

Kardinalitas ini terjadi apabila entitas (aku) berhubungan dengan paling banyak satu entitas (kamu), begitu pun sebaliknya. Mari kita lihat perancangannya:



 



b. One to Many dan Many to One

Kardinalitas One to Many terjadi apabila entitas (aku) berhubungan dengan banyak entitas (kamu, dia_1, dia_n), tetapi tidak berlaku sebaliknya, dalam artian entitas (kamu, dia_1, dia_n) hanya berhubungan dengan satu entitas (aku). Kardinalitas Many to One terjadi apabila entitas (saya_1, saya_2, saya_n)berhubungan dengan satu entitas (kamu), tetapi tidak berlaku sebaliknya, dalam artian entitas (kamu) berhubungan dengan banyak entitas (saya_1, saya_2, saya_n).



 
          
c. Many to many

Kardinalitas Many to Many terjadi apabila banyak entitas (saya, dia_1, dia_n) berhubungan dengan banyak entitas (kamu, kamuu, kamuuu). Relasi Many to Many terjadi apabila sebuah data yang ada pada tabel pertama memiliki beberapa data yang sama pada tabel kedua, dan sebuah data yang ada pada tabel kedua juga memiliki beberapa data yang sama pada tabel pertama. Pada relasi ini, table pertama dan kedua diizinkan memiliki beberapa data yang sama dengan kedua table tersebut.



 
                         
 
Pengenalan DML

Data Manipulation Language (DML) adalah bahasa/perintah SQL yang berfungsi untuk memanipulasi data yang ada di dalam basis data(database), dan digunakan untuk mengambil, memasukkan, memodifikasi, bahkan menghapus informasi/isi yang ada didalam database tersebut.

1.      Perintah DML dalam SQL
Contoh kasus : Kontak Mata Kuliah Mahasiswa
Kita aplikasikan contoh praktikum yang minggu lalu (DDL).
- Membuat tabel Pembeli
- Membuat table Pelayan
- Membuat tabel Buku
- Membut tabel Transaksi
a.       
 INSERT
Insert merupakan perintah yang berfungsi untuk menyisipkan, memasukkan dan menyimpan data dari luar sistem ke dalam tabel. Perintah insert memiliki 2 cara yaitu :
1. Cara Langsung
INSERT INTO namatabel VALUES (isi1, isi2, isi3, ...);
2. Cara Tak Langsung
INSERT INTO namatabel (namafield1, namafield2,...) VALUES (isi1, isi2,isi3, ...);
Sekarang insert data pada tabel yang telah kita buat sebelumnya.
-          Tabel Transaksi :


-          Tabel Buku


-          Tabel Pembeli



-          Tabel Pelayan

 

 


AGGREGASI DAN GROUPING

Apa itu fungsi aggregasi? Fungsi aggregasi adalah fungsi matematika sederhana dalam SQL. Biasanya fungsi aggregasi ini digunakan pada bagian SELECT untuk melakukan perhitungan dengan melibatkan sekumpulan data atau nilai. Sedangkan grouping merupakan fungsi untuk mengelompokkan suatu data table berdasarkan salah satu field yang diperlukan dari tabel tersebut.

1. AGGREGASI
Berikut adalah salah satu contoh dari aggregasi, yaitu AVG(). AVG() Fungsi ini  digunakan untuk menghasilkan nilai rata-rata sekelompok nilai dari sebuah kolom (field) numerik. Perintah umum:
SELECT AVG(nama_field) From nama_tabel
Contoh :
SELECT AVG(harga_buku) FROM buku;



GROUPING

Salah satu contoh dari grouping adalah Order By. Order by adalah perintah yang digunakan untuk menampilkan data secara terurut berdasarkan nilai tertentu. Order by dikelompok menjadi 2 jenis yaitu ascending (data diurutkan dari yang terkecil ke terbesar) dan descending(data diurutkan dari yang terbesar ke terkecil). Perintah umum :
SELECT *FROM(nama_tabel) ORDER BY atribut ASC/DESC
Contoh :
SELECT *FROM transaksi ORDER BY id_transaksi DESC;