Senin, 29 September 2014

Studi Kasus : Normalisasi Tabel Proyek

Di postingan ini, saya akan membahas tentang normalisasi tabel  proyek berdasarkan studi kasus di bawah ini :

 Gambar 1 : Tabel proyek yang belum di normalisasi.

Dapat dilihat tabel diatas belum dilakukan normalisasi, sekarang saya coba melakukan normalisasi tahap 1 dari tabel proyek, Hasilnya seperti dibawah ini :

Gambar 2 : Tabel proyek yang sudah dinormalisasi tahap 1.

Untuk selanjutnya saya melakukan tahap normalisasi tahap 2, untuk menghilangkan ketergantungan sebagian. sehingga tabel proyek terbagi menjadi 2 yaitu tabel proyek dan tabel pegawai seperti 2 gambar dibawah ini :

Gambar 3 : Tabel proyek hasil normalisasi tahap 2dari induk tabel proyek.

Gambar 4 : Tabel proyek hasil normalisasi tahap 2 dari induk tabel proyek.

Untuk menghilangkan ketergantungan transitif, saya melakukan proses normalisasi tahap 3. Sehingga induk tabel proyek akhirnya terbagi menjadi  3 tabel yaitu tabel proyek, tabel pegawai dan tabel golongan.

Gambar 5 : Tabel proyek hasil normalisasi tahap 3 dari induk tabel proyek.

Gambar 6 : Tabel pegawai hasil normalisasi tahap 3 dari induk tabel proyek.

Gambar 7 : Tabel golongan hasil normalisasi tahap 3 dari induk tabel proyek.

Baca Selengkapnya >>>

Kamis, 25 September 2014

Normalisasi Data

Kali ini saya akan membahas mengenai normalisasi data perkuliahan. Dibawah ini adalah data pada tabel yang beum dinormalisasi.


Gambar 1 : data tabel perkuliahan.
Sekarang diberikan asumsi :
1    1.   Seorang mahasiswa dapat mengambil beberapa mata kuliah.
2    2.   Satu mata kuliah dapat diambil oleh lebih dari 1 mahasiswa.
3    3.   Satu mata kulah  hanya diampu oleh satu dosen.
4    4.   Satu dosen dapat mengajar beberapa mata kuliah.
5    5.  Seorang mahasiswa pada mata kuliah tertentu hanya memiliki satu nilai.

Sebelum tahap normalisasi berdasarkan asumsi yang diberikan, terlebih dahulu data dinormalisasi tahap 1 seperti pada gambar dibawah:


Gambar 2 : Normalisasi tahap 1 data tabel perkuliahan.

Sekarang saya mengerjakan normalisasi tabel berdasarkan asumsi :
1    1. Seorang mahasiswa dapat mengambil beberapa mata kuliah. Maka hasil normalisasi menjadi seperti pada       gambar dibawah : 

Gambar 3 : normalisasi berdasarkan asumsi 1.

2. Satu mata kuliah dapat diambil oleh lebih dari 1 mahasiswa. Maka hasil normalisasi menjadi seperti pada       gambar dibawah : 


Gambar 4 : normalisasi berdasarkan asumsi 2.

3.   Satu mata kulah  hanya diampu oleh satu dosen. Maka hasil normalisasi menjadi seperti pada gambar dibawah :  


Gambar 5 : normalisasi berdasarkan asumsi 3.

4.   Satu dosen dapat mengajar beberapa mata kuliah. Maka hasil normalisasi menjadi seperti pada gambar dibawah : 

 

Gambar 6 : normalisasi berdasarkan asumsi 4.


5.  Seorang mahasiswa pada mata kuliah tertentu hanya memiliki satu nilai. Maka hasil normalisasi menjadi seperti pada gambar dibawah : 


Gambar 7 : normalisasi berdasarkan asumsi 5.

Baca Selengkapnya >>>

Rabu, 24 September 2014

Operasi DML tabel database di Oracle SQL Command Line

Kali ini saya akan membahas mengenai  operasi SQL  database di Oracle
Pertama, buka dulu SQL command line kemudian login. Saya menggunakan username system seperti gambar dibawah :

Gambar 1 : login ke SQL  command line.
Lalu buat table mahasiswa seperti gambar dibawah :


Gambar 2 : membuat table mahasiswa.

Kemudian memasukkan isi table, perintahnya seperti ini INSERT INTO mahasiswa values(‘1103130131’,’fadli’,’IF’);. Untuk lebih jelasnya ada di gambar berikut :

Gambar 3 : perintah untuk memasukkan isi table.

Setelah melakukan operasi input, coba untuk melihat seluruh isi table dengan perintah SELECT * FROM mahasiswa;.

Gambar 4 : perintah untuk menampilkan isi table mahasiswa.

Jika ada data yang rasanya usang atau misalnya ada mahasiswa pindahan, maka kita lakukan operasi update table, perintahnya seperti : UPDATE mahasiswa SET NIM = ‘1103130133’ WHERE NAMA = ‘fadli’;

Gambar 5 : perintah untuk memperbarui field tabel.

Selanjutnya rubah tabel untuk membuang data yang tidak terpakai lagi menggunakan perintah DELETE FROM mahasiswa WHERE NIM = ‘1103130495’;.

Gambar 6 : perintah untuk menghapus field tabel.

Selanjutnya tampilkan semua isi tabel setelah penghapusan nama ”andri”. Menggunakan perintah SELECT * FROM mahasiswa order by nama asc; untuk mengurutkan semua data berdasarkan nama dari abjad urutan kecil hingga urutan abjad besar.


Gambar 7 : perintah untuk menampilkan field tabel terbaru.










Baca Selengkapnya >>>

Kamis, 18 September 2014

Kelompok perintah Data Manipulation Language(DML).

Kelompok perintah Data Manipulation Language(DML)  terdiri dari :

 v  INSERT – menyisipkan data
 v  UPDATE – mengubah data
 v  DELETE  - menghapus data
 v  SELECT – mengambil data

Berikut di bawah ini adalah penjelasan mengenai kelompok perintah Data Manipulation Language(DML).

 v   INSERT
Perintah insert digunakan untuk menyisipkan data, contoh pemanggilannya dalam database seperti  berikut :

INSERT INTO nama_tabel(field1,field2);

 v  UPDATE
Perintah update digunakan untuk mengubah data, contoh pemanggilannya dalam database seperti  berikut :

UPDATE nama_tabel SET column = expression WHERE condition;

 v  DELETE
Perintah delete digunakan untuk menghapus data, tetapi hal ini adalah tabu untuk dilakukan dalam dunia industri karena menyangkut kepercayaan klien. contoh pemanggilannya dalam database seperti  berikut :

 v  SELECT
Perintah select digunakan untuk menampilkan data yang dipilih, contoh pemanggilannya dalam database seperti  berikut :
SELECT kolom-data FROM table-data WHERE filter-data;

Perintah di atas digunakan untuk menampilkan salah satu/beberapa data dari satu table, sedangkan 
untuk menampilkan semua data dalam satu table gunakan perintah berikut ini :

 SELECT *FROM nama_tabel;
Baca Selengkapnya >>>

Senin, 15 September 2014

Operasi Basis Data

Basis data memiliki operasi untuk mengubah data yang sudah tersimpan di database hingga menghapus isi data. Operasi yang digunakan adalah kumpulan perintah DDL(Data Definition Language) dan DML(Data Manipulation Language). Di tulisan ini, saya akan membahas perintah DDL&DML database MySQL 
  • DDL - Data Definition Languaguage
          Merupakan kumpulan perintah SQL yang digunakan untuk membuat,mengubah,menghapus obyek-obyek           database.
  • DML - Data Manipulation Language
    merupakan kumpulan perintah SQL yang digunakan untuk proses pengolahan isi data di dalam table seperti memasukkan, merubah dan menghapus isi data.

 definisi dan contoh lebih lanjut pada bagian berikut di bawah ini.

DDL - Data Definition Language


DDL adalah kumpulan perintah SQL yang digunakan untuk membuat (create), mengubah (alter) dan menghapus (drop) struktur dan definisi tipe data dari objek-objek database.

Objek-objek database yang dimaksud  pada MySQL  sebagai berikut :
  • Database
  • Table
  • View
  • Index
  • Procedure (Stored Procedure)
  • Function
  • Trigger
Contoh :

Perintah berikut akan membuat table pada database kita dengan nama "mhs"
CREATE TABLE m
hs (
  
nim varchar(14) default NULL,
  
nama_mhs varchar(20) NOT NULL,
  jenis_kelamin varchar(1) default NULL,
  PRIMARY KEY  (
nim)
);

Berikut adalah contoh perintah DDL yang digunakan pada MySQL.
  • Pembuatan (CREATE)
  • Pengubahan(ALTER )
    • ALTER DATABASE
    • ALTER FUNCTION
    • ALTER PROCEDURE
    • ALTER TABLE
    • ALTER VIEW
  • Penghapusan (DROP)
    • DROP DATABASE
    • DROP FUNCTION
    • DROP INDEX
    • DROP PROCEDURE
    • DROP TABLE
    • DROP TRIGGER
    • DROP VIEW

DML - Data Manipulation Language

DML sendiri adalah kumpulan perintah SQL yang berhubungan dengan pekerjaan mengolah data di dalam table - dan tidak terkait dengan perubahan struktur dan definisi  tipe data dari objek database seperti tabel, kolom, dan sebagainya.

Contoh DML : Mengambil Seluruh Row Data dari table mhs
SELECT *
FROM mhs;

Contoh DML : Memasukkan data ke dalam tabel mhs

INSERT INTO mhs(
                nim,
nama_mhs,
jenis_kelamin
VALUES ('1103130131','fadli','Laki-laki');

Beberapa daftar Perintah DML MySQL :
  • CALL
  • DELETE
  • DO
  • HANDLER
  • INSERT
  • LOAD DATA INFILE
  • REPLACE
  • SELECT
  • TRUNCATE
  • UPDATE

Daftar pustaka : 
  • Fathansyah(2012).Basis Data.Bandung: Penerbit Informatika.
Baca Selengkapnya >>>

Kamis, 11 September 2014

Himpunan Entitas Lemah

Himpunan entitas lemah berisi entitas-entitas yang kemunculannya tergantung pada eksistensinya. Himpunan entitas lemah berisi entitas-entitas yang kemunculannya tergantung pada eksistensinya dalam sebuah relasi terhadap entitas lain (strong entity). Himpunan entitas yang demikian biasanya tidak memiliki atribut yang dapat berfungsi sebagai key, yang benar-benar dapat menjamin keunikan entitas di dalamnya. Sebagai contoh, untuk melengkapi data pegawai kita juga ingin mengelola data hobbi  dan nama orang tua. Berikut adalah contoh fakta yang dapat kita gunakan beserta relasi yang terjadi :




 Dengan fakta tersebut, dapat kita lihat bahwa entitas pegawai berelasi satu-ke-satu dengan entitas orang tua dan berelasi satu-ke-banyak dengan entitas hobbi, sehingga, sehingga kita dapat menggambarkan Diagram E-R sebagai berikut:


Data Orang-Tua dan Hobbi di atas dapat digolongkan sebagai himpunan entitas lemah(yang dalam Diagram E-R dinyatakan dengan kotak bergaris ganda), karena kemunculannya sangat bergantung pada adanya relasi dengan entitas yang ada pada himpunan entitas Pegawai.


Daftar pustaka : 

  • Fathansyah(2012).Basis Data.Bandung: Penerbit Informatika.


Baca Selengkapnya >>>

Sabtu, 06 September 2014

Atribut deskriptif dan key,Relasi, Diagram E-R

Pada pertemuan ke 4, Mata Kuliah basis data membahas tentang Atribut,Relasi dan Perancangan diagram ER. Di postingan ini saya akan membahas tentang Atribut  deskriptif dan key,Relasi, Diagram E-R

Atribut  deskriptif dan key
Ada 3(tiga) macam key yang dapat diterapkan pada suatu table, yaitu :

  •          Superkey
  •          Candidate-Key
  •          Key Primer(Primary-Key)

SuperKey adalah kumpulan atribut yang dapat membedakan setiap baris data dalam sebuah table secara unik. Contohnya pada table mahasiswa yang dapat menjadi Superkey adalah :

  •          (nim,nama_mhs,alamat_mhs,tgl_lahir)
  •          (nim,nama_mhs,alamat_mhs)
  •          (nama_mhs), jika memang tidak ada nilai yang sama.
  •          (nim)

Candidate-Key adalah kumpulan atribut minimal yang membedakan setiap baris data dalam sebuah table secara unik. Contohnya pada table mahasiswa, yang dapat menjadi Candidate-Key :
  •          (nim)
  •          (nama_mhs), jika memang tidak ada nilai yang sama.


Relasi

Relasi adalah hubungan antar tabel yang memisalkan hubungan antar objek di dunia nyata. Relasi mempresentasikan hubungan antara table dan hubungannya di dunia nyata. Hubungan yang dapat dibentuk dapat mencakup 3 macam hubungan, yaitu :

  •         One-To-One (1-1)



Contoh relasi One-To-One
Artinya setiap  satu table  A memiliki hubungan dengan table B tetapi hubungannya paling banyak satu baris pada table B. Contohnya : relasi antara tabel mahasiswa dan tabel orang tua. Satu baris mahasiswa hanya berhubungan dengan satu baris orang tua begitu juga sebaliknya.

  •         One-To-Many (1-N)



contoh relasi one-to-many
Artinya  "Setiap baris data dari table A  dapat dihubungkan ke satu baris atau lebih data pada tabel ke B". Contohnya : relasi perwalian antara tabel dosen dan tabel mahasiswa. Satu baris dosen atau satu dosen bisa berhubungan dengan satu baris atau lebih mahasiswa.
  •          Many-To-Many (N-M)



contoh relasi many-to-many
Artinya  "Satu baris atau lebih data pada tabel A bisa dihubungkan ke satu atau lebih baris data pada tabel B". Artinya ada banyak baris di tabel satu dan tabel dua yang saling berhubungan satu sama lain. Contohnya : relasi antar tabel mahasiswa dan tabel mata kuliah. Satu baris mahasiswa bisa berhubungan dengan banyak baris mata kuliah begitu juga sebaliknya.

Diagram E-R

Entity-Relationship Model (ERM) merupakan bentuk abstrak dan konseptual merepresentasikan data. Entity-Relationship adalah salah satu metode pemodelan basis data yang digunakan untuk menghasilkan interaksi antar tabel. Diagram untuk menggambarkan model Entitiy-Relationship ini disebut Entitiy-Relationship diagram, ER diagram, atau ERD.
Notasi-notasi simbolik diagram E-R yang digunakan adalah :
·         Persegi panjang, menyatakan Himpunan Entitas.
·         Lingkaran/Elips, menyatakan Atribut.
·         Garis, penghubung antara himpunan relasi dengan himpunan entitas dan himpunan entitas dengan atributnya.
·         Kardinalitas Relasi dapat dinyatakan dengan banyaknya garis cabang atau dengan pemakaian angka(1 dan 1 untuk relasi satu-ke-satu, dan N untuk relasi satu-ke-banyak atau N dan N untuk relasi banyak ke banyak).

  Contoh Notasi :




Contoh Penggambaran relasi antara himpunan entitas lengkap dengan kardinalitas relasi dan atribut-atributnya menggunakan diagram E-R :
1.       Relasi satu-ke-satu(one-to-one)
Contoh :
Relasi antara himpunan entitas Dosen dengan himpunan entitas Jurusan. Disini seiap dosen paling banyak mengepalai satu jurusan dan setiap jurusan pasti dikepalai oleh paling banyak satu orang dosen. Penggambarannya :




Gambar Diagram E-R untuk relasi satu ke satu


2.       Relasi satu-ke-banyak(one-to-many)
Contoh :
Pada relasi ini, setiap dosen dapat mengajar lebih dari satu mata kuliah, tetapi setiap mata kuliah diajar hanya oleh paling banyak satu orang dosen .Penggambarannya :


Gambar Diagram E-R untuk relasi satu ke banyak

3.       Relasi banyak-ke-banyak(many-to-many)
Contoh :
Pada relasi ini, setiap mahasiswa dapat mempelajari lebih dari satu mata kuliah. Demikian juga sebaliknya, setiap mata kuliah dapat dipelajari oleh lebih dari satu orang mahasiswa. Penggambarannya :



Gambar Diagram E-R untuk relasi banyak ke banyak

Daftar pustaka : 

  • Fathansyah(2012).Basis Data.Bandung: Penerbit Informatika.
  • Fairuz(2010). Sistem Basis data-Entity Relationship Diagram(ERD). Fromhttp://fairuzelsaid.wordpress.com/2010/03/16/sistem-basis-data-entity-relationship-diagram-erd/,16 Maret 2010
  • Nata(2012). Diagram E-R, Apa itu diagram E-R ?. From http://fgnata.blogspot.com/2012/09/diagram-e-r-apa-itu-diagram-e-r.html, 26 September 2012
  • Febi(2011). Pengenalan relasi tabel database. From http://duniafeb.blogspot.com/2011/03/pengenalan-relasi-tabel-database.html, Maret 2011
Baca Selengkapnya >>>

Selasa, 02 September 2014

implementasi DBMS(Database Management System)

Database Management System  adalah sebuah perangkat lunak untuk pengelolaan basis data yang dapat menentukan pengorganisasian data, pengubahan data, pengambilan kembali data setelah diolah. DBMS dapat menerapkan pengamanan data, pemakaian data bersama-sama, dan sebagainya.

implementasi dari DBMS digunakan untuk membangun websiteyaitu MySQL.

Beberapa perangkat lunak yang memiliki fungsi DBMS yaitu : dBase, FoxBase, Rbase, Microsoft-Access, MS-SQL Server, Oracle Database, IBM DB2, Informix, dan lain lain.

DBMS yang besar seperti Oracle, MS-SQL Server) dirancang secara terpisah dari aplikasi basis datanya.

Model-model DBMS memiliki karakteristik :


  • Keseragaman
          Dari banyaknya data dikelola dengan struktur dan ukuran(byte) yang sama.

  • Berorientasi Record 
          Terdiri dari satuan-satuan data utama terdiri dari record-record yang panjangnya sama.

  • Satuan Data Kecil
          Ukuran setiap record relatif pendek.

Keuntungan dari implementasi DBMS adalah :
 -Penggunaan data bersama-sama
 -keamanan data
 -Mengurangi data yang rangkap

Daftar Pustaka 


  • Fathansyah(2012).Basis Data.Bandung: Penerbit Informatika.
Baca Selengkapnya >>>