Senin, 29 September 2014

Praktikum Desain Basis Data II -> Pembuatan dan Manajemen Tabel


1. Dasar Teori


1.1 Mengenal Lingkungan Database
        Database memilik beberapa istilah-istilah baik pada struktur maupun perintahnya. Ada 4 istilah yang muncul, yaitu:
   1. Database
        Database adalah sebuah file yang mengkoordinasi tabel-tabel data yang saling berhubungan dan memiliki suatu kepentingan yang sama sehingga akan mempermudah pengolahan. karena database merupakan kumpulan dari beberapa tabel maka untuk membuat tabel, database harus dibuat dulu sebagai 'induk' yang memayungi induk-induk dibawahnya.
   2. Tabel (Table)
           Table adalah kumpulan data dalam record-record yang disatukan untuk kepentingan tertentu.
   3. Record
            Record adalah kumpulan field-field yang disatukan dalam baris.
   4. Field
           Field adalah jenis atau tipe data dari suatu item data beserta batasan nilainya.

1.2 Bahasa dalam Database
   A. Data Defnition Language (DDL)
             DDL adalah perintah-perintah yang digunakan untuk membangun isi database. DDL bertugas untuk membuat objek dan menyimpan definisinya dalam tabel. Contoh dari objek yang dimaksud diatas adalah tabel, view, dan index. Pembuatan tabel, perubahan struktur tabel, perubahan nama tabel, serta perintah untuk mengahapus tabel, dilakukan dengan sub bahasa yang tergolong dalam DDL. Perintah-perintah yang dilakukan dalam DDL adalah:
          1. Create
         Perintah ini digunakan untuk membuat database, tabel, dan objek lain dalam   database.
          2. Alter
              Perintah ini digunakan untuk memodifikas table, seperti mengganti nama tabel, mengubah jenis/tipe field, mengubah nama field, menambah field baru atau mengurangi field tertentu.
          3. Drop
                 Perintah ini digunakan untuk menghapus database, tabel, dan objek lain dalam database.
   
    B. Data Manipulation Language (DML)
                  DML digunakan untuk menampilkan, mengubah, menambah, dan menghapus baris dalam tabel. Perintah-perintah yang digolongkan dalam DML antara lain:
           1. Select
             Perintah ini digunakan untuk menampilkan isi table. Baik semua is table atau sebagian isi table. Bahkan bisa pula menampilkan isi table yang dihubungkan dengan tabel-tabel yang lain.
           2. Insert
           Perintah ini digunakan untuk mengisi atau menambah table. Pengisian dapat dilakukan dengan seluruh feld atau hanya sebagian feld saja.
           3. Update
                  Seperti terlihat pada perintahnya, update digunakan untuk mengubah item-item tertentu dalam satu tabel.
            4. Delete
                  Perintah ini digunakan untuk menghapus record-record dengan krteria tertentu.
    
    C. Data Control Language (DCL)
              DCL adalah perintah yang akan membantu mengontrol keamanan setiap database atau sebagian isi dari database dengan membuat hak-hak akses tertentu bagi setiap user.
            1. Grant
                Grant digunakan untuk memberikan hak-hak tertentu kepada seorang user. Grant dberikan oleh user yang mempunyai hak untuk mengganti grant atau administrator (root).
            2. Revoke
                   Kebalikan dari grant. Revoke digunakan untuk mencabut hak-hak dari seorang user terhadap database tertentu atau sebagian isi dari database.

 1.2 Postgre SQL
      A. Membuat Tabel
            Struktur query yang digunakan membuat tabel dengan dua kolom:
               create table namatabel (namakolom tipedata keterangan, namakolom tipedata keterangan);
   *Cttn : Untuk melihat struktur tabel yang telah dibuat ketikkan perintah \d dan melihat semua tabel menggunakan \z.
            Struktur query yang digunakan menghapus tabel :
                     drop table namatabel; 
      
      B. Manipulasi Tabel 
               Struktur query yang digunakan untuk menghapus kolom :
alter table namatabel drop column “namakolom”;
Struktur query yang digunakan untuk menambah kolom:
alter table namatabel add column “namakolom” tipe data;
Struktur query yang digunakan untuk mengubah nama tabel :
alter table namatabelasal rename to namatabelbaru;
Struktur query yang digunakan untuk mengubah nama kolom :
alter table namatable rename column “namakolom asal” to namakolombaru;
Struktur query yang digunakan untuk mengubah type dari kolom tertentu :
alter table namatable alter column namakolom type namatypepengganti;
Struktur query yang digunakan untuk menambahkan primary key pada tabel :
                        alter table namatabel add primary key (namakolom); 
   
       C.  Temporary Tabel
              Temporary tabel sifatnya hanya sementara artinya akan aktif hanya ketika kita sedang berada atau login ke database namun ketika kita logout dari psql database maka secara otomatis temporary tabel akan terhapus. Struktur query yang digunakan membuat tabel dengan dua kolom:
                      create temporary table namatabel (namakolom tipedata keterangan, namakolom tipedata keterangan); 
      
       D. GRANT dan REVOKE
            Berikut struktur penggunaan GRANT untuk semua hak akses :
                         grant all on table namatabel to namauser;
           

            Berikut struktur penggunaan REVOKE untuk semua hak akses :
                         revoke all on table namatabel from namauser;
          

            Struktur query untuk menghapus salah satu hak akses, misalnya UPDATE :
                         revoke update on tabel namatabel from namauser;
            

            Struktur query untuk memberi salah satu hak akses, misalnya DELETE :
                         grant delete on tabel namatabel to namauser;

2. Hasil Praktikum
2.1 Menggunakan PostgreSQL
       1.  Buatlah sebuah tabel dengan nama identitasNIM dan dengan nama fieldnya


2. Buatlah sebuah tabel lagi dengan nama pegawai dan nama field sama dengan tabel identitas
 

       3. Hapus kolom “alamat_idn” dan tampilkan struktur dari tabel pegawai tadi.
 
        4. Tambahkan kolom “pekerjaan_idn” dengan type data varchar dan tampilkan struktur tabel  pegawai.

        5. Ubah nama tabel pegawai menjadi pekerjaNIM kemudian ubah nama kolom “pekerjaan_idn” menjadi “alamat_idn” dan tampilkan.

       6. Berikan Primary key pada tabel pekerjaNIM dan ubah type data pada kolom “alamat_idn” menjadi text. Kemudian tampilkan struktur tabel.

       7. Hapus tabel pekerjaNIM. 

       8. Buat temporary tabel dengan nama mahasiswa_sementara dengan 3 kolom yaitu id, nama, tanggal lahir dan tampilkan tabel atau strukturnya.

       9. Hapus semua hak akses tabel tertentu kepada salah satu user yang telah dibuat dan lakukan pengecekan. Kemudian berikan semua hak akses kembali dan lakukan pengecekan kembali. Hapus hak akses SELECT tabel tertentu kepada salah satu user dan lakukan pengecekan.

       10. Buat tabel baru dengan nama Gaji, dengan catatan pembuatan tabel berasal dari turunan tabel number 1 dan tambahkan kolom gaji kotor, pajak, dan gaji bersih. Kemudian tampilkan strukturnya.


 

 2.2 Menggunakan MySQL
  
 
     1. Buatlah sebuah tabel dengan nama identitasNIM dan dengan nama fieldnya
        Dalam membuat tabel pada MySQL maka digunakan query berikut : 
        Setelah membuat tabel, dapat dicek dengan mysql> show tables; kemudian describe nama_table;
  
      2. Buatlah sebuah tabel lagi dengan nama pegawai dan nama field sama dengan tabel identitas
         
          Sama dengan no.1, hanya menambah table lagi
   
     3. Hapus kolom “alamat_idn” dan tampilkan struktur dari tabel pegawai tadi.




   4. Tambahkan kolom “pekerjaan_idn” dengan type data varchar dan tampilkan struktur tabel   pegawai.

      5. Ubah nama tabel pegawai menjadi pekerjaNIM kemudian ubah nama kolom “pekerjaan_idn” menjadi “alamat_idn” dan tampilkan.

    6. Berikan Primary key pada tabel pekerjaNIM dan ubah type data pada kolom “alamat_idn” menjadi text. Kemudian tampilkan struktur tabel.

    7. Hapus tabel pekerjaNIM.

    8. Buat temporary tabel dengan nama mahasiswa_sementara dengan 3 kolom yaitu id, nama, tanggal lahir dan tampilkan tabel atau strukturnya.

    9. Hapus semua hak akses tabel tertentu kepada salah satu user yang telah dibuat dan lakukan pengecekan. Kemudian berikan semua hak akses kembali dan lakukan pengecekan kembali. Hapus hak akses SELECT tabel tertentu kepada salah satu user dan lakukan pengecekan.

    10. Buat tabel baru dengan nama Gaji, dengan catatan pembuatan tabel berasal dari turunan tabel number 1 dan tambahkan kolom gaji kotor, pajak, dan gaji bersih. Kemudian tampilkan strukturnya.
(karena tidak menemukan query INHERITS pada mysql, maka disini digunakan query membuat tabel biasa)

 3. Tugas Rumah 
    3.1. Buat database dan tabel sistem pada pertemuan 1 menggunakan query dan dilengkapi dengan tampilan strukturnya.

Berikut adalah screenshot dalam mysql-nya:

3.2  Perbandingan MySQL dan PostgreSQL
MySQL 
  1. User biasa tidak diberi hak APAPUN dan tidak bisa melihat apapun(user, database, tabel, dll) sehingga perlu diberi HAK
  2. Tidak diberi kewenangan apapun artinya :
    - tidak bisa membuat database
    - tidak bisa membuat tabel 
  3. Pemberian Hak Ada 2 yaitu :
    - edit hak user di database user milik mysql (misal ingin hak super user)
    - edit hak  user oleh pemilik database atau dari user superuser(grant) 
  4. ketika posisi menggunakan database posisi dibawah ini tidak berubah mysql> 
  5. Bisa exit dari user, dengan mengetik >mysql quit
  6. Pada Query diantarannya adalah:
  • koneksi database dinyatakan dengan mysql> use nama_database;  
  • Menampilkan struktur tabel dengan mysql>  desc/describe nama_tabel;                           
  • Menghapus kolom alter table dengan mysql> nama_tabel drop column nama_kolom;
  • Mengganti type data pada kolom alter dengan mysql> table nama_tabel modifyd engan mysql> nama_kolom type_data;
  • dst
PSQL
  1. user biasa diberi kewenangan berupa hak melihat :
    - user
    - database
    - tabel
    - Tapi tidak diberi hak edit apapun 
  2. Diberi kewenangan membuat:
    - database
    - table
    - grant untuk user lain
  3. Pemberian Hak itu Ada 2 yaitu :
    - dimulai saat pembuatan user (misal ingin hak super user)
    - edit hak  user oleh pemilik database atau dari user superuser(grant)
  4. ketika posisi menggunakan database simbol posisi dibawah ini berubah menjadi nama database:
  5. Tidak bisa exit dari use melainkan close psql comand
  6. Pada Query diantarannya adalah:
  • koneksi database dinyatakan dengan \c nama_database;   
  • Menampilkan struktur tabel dengan \d nama_tabel;; 
  • Menghapus kolom alter table dengan alter table nama_tabel drop column “nama_kolom”;
  • Mengganti type data pada kolom alter dengan alter table nama_tabel rename column “nama_lama” to “nama_baru“;
  • dst 
 4. Kesimpulan dan Saran

4.1 Kesimpulan
 Dari Pembuatan dan Manajemen Tabel dapat disimpulkan bahwa:
   1. Bahasa dalam Database dibag menjadi 3, yaitu: Data Defnition Language (DDL), Data Manipulation Language (DML), dan Data Control Language (DCL) 
    2. Dalam memasukkan query dalam psql dan mysql tidak sama, dengan melakukan praktikum dengan 2 DBMS berbeda membuat kita dapat belajar keduanya dan mengetahui kelebihan dan kekurangannya.

4.2 Saran
      Semoga di praktikum selanjutnya kakak asisten dosen bisa lebih sabar dan dapat menjelaskan tugas-tugasnya pada praktikan secara jelas, sehingga kami dapat mengerti.

4.3 Manfaat Bagi Pembaca
      Dapat menambah pengetahuan tentang DBMS mysql dan psql, sehingga bsa memilih sesuai yang dibutuhkan. Dengan laporan ini, pembaca juga dapat ikut belajar mengenai pembuatan tabel.


 Daftar Pustaka
Sanjaya, Ridwan. 2005. Pengolahan Database MySQL dengan Java 2. Yogyakarta: Andi
Modul Praktikum DBD Bab II
belajarsql.net/download/.../Bahasa%20Basis%20Data.pdf
http://kinabipoetra.blogspot.com/2013/03/contoh-bahasa-basis-data-ddl-definition.html




























































 

Senin, 22 September 2014

Praktikum Desain Basis Data -> Pengenalan Database


1.      Dasar Teori
1.1  Apa itu Database?
Database terdiri dari 2 kata, data yang berarti asas atau dasar dan base yang berarti informasi atau kumpulan file yang belum memiliki informasi, sehinggan database merupakan sekumpulan data yang saling berhubungan dan terorganisir sedemikian rupa sehingga memudahkan ketika akan digunakan kembali.
Istilah “database” berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal yang di luar bidang elektronika.  Catatan yang mirip dengan database sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi danm kumpulan data yang berhubungan dengan bisnis. Database juga menjadi fungsi utama untuk aplikasi client - server, aplikasi organisasi, dan aplikasi e-commerce bisnis ke konsumen serta bisnis ke bisnis.
Database memiliki konsep dasar seperti kumpulan dari catatan, atau potongan dari puzzle. Sebuah database memiliki skema yang terstruktur dari jenis fakta yang tersimpan di dalamnya. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur database, yang dikenal sebagai database model atau model data. Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah yaitu mewakili semua informasi dalam bentuk tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili dengan menggunakan nilai yang sama antar tabel.
Database dapat dibuat dan diolah dengan menggunakan suatu program komputer, yaitu yang biasa disebut dengan software (perangkat lunak).Software yang digunakan untuk mengelola dan memanggil kueri (query) database disebut Database Management System (DBMS) atau jika diterjemahkan kedalam bahasa indonesia berarti “Sistem Manajemen Basis Data”.
DBMS terdiri dari dua komponen, yaitu Relational Database Management System (RDBMS) dan Overview of Database Management System (ODBMS). RDBMS meliputi Interface Drivers, SQL Engine, Transaction Engine, Relational Engine, dan Storage Engine. Sedangkan ODBMS meliputi Language Drivers,Query Engine, Transaction Engine, dan Storage Engine.
Sedangkan level dari softwarenya sendiri, terdapat dua level software yang memungkinkan untuk membuat sebuah database yaitu
1.      High Level Software terdiri dari Microsoft SQL Server, Oracle, Sybase, Interbase, XBase, Firebird, MySQL, PostgreSQL, Microsoft Access, dBase III, Paradox, FoxPro, Visual FoxPro, Arago, Force, Recital, dbFast, dbXL,Quicksilver, Clipper, FlagShip, Harbour, Visual dBase, dan Lotus Smart Suite Approach.
2.      Low Level Software terdiri dari Btrieve dan Tsunami Record Manager.

1.2  PostgreSQL
Setelah mengerti tentang database, sekarang akan dibahas tentang salah satu software database, yaitu PostgreSQL. PostgreSQL menghadirkan berbagai fitur yang memuaskan seperti Multi-Version Concurrency Control (MVCC), point in time recovery, tablespaces, asynchronous replication, nested transactions (savepoints), online/hot backups, query planner/optimizer yang baik, dan write ahead logging untuk fault tolerance. Object-relational database system ini juga mendukung international character set, multibyte character encoding, Unicode, dan memiliki kemampuan yang baik dalam sorting, case-sensitivity, dan formatting.

PostgreSQL sangat scalable baik dalam kuantitas data yang dapat ditanganinya maupun dalam jumlah concurrent user yang dapat diakomodasi olehnya. Sebagai contoh ketangguhannya, terdapat sistem PostgreSQL aktif yang mampu menangani dan mengelola penggunaan 4 terabyte data.

PostgreSQL memiliki kemampuan yang tidak dapat diremehkan karena memiliki fitur yang sangat lengkap dan bersifat standard compliant. Sistem database ini juga fleksibel dan dapat dengan mudah disesuaikan (highly customizable), di mana PostgreSQL dapat digunakan dengan berbagai bahasa pemrograman seperti Java, Perl, Python, Ruby, Tcl, C/C++, dan PL/pgSQL (serupa dengan PL/SQL Oracle).
Source code PostgreSQL tersedia di bawah lisensi liberal open source license, yaitu PostgreSQL License. Lisensi ini memberikan kebebasan bagi Anda untuk menggunakan, memodifikasi dan mendistribusikan PostgreSQL dalam bentuk yang Anda sukai, baik open source maupun closed source.

Tutorial Install Postgree


Download  installer (aplikasi) PostgreSQL berbasis windows pada : http://www.postgresql.org/download/windows/. Pilih opsi –> one click installer bagi user yang masih awam dengan relational database system. Setelah file selesai didownload, klik file exe tersebut dan lakukan instalasi : 

       1.      Klik “Next >” untuk ke langkah berikutnya
       2.      Pilih direktori untuk proses instalasi dan penyimpanan data (sebaiknya ikut   default)
       3.      Klik “Next >” jika tidak ingin merubah direktori data
       4.      Ketikkan Password yang akan digunakan untuk mengakses DB Postgre
       5.      Masukkan port yang akan digunakan oleh DB Postgre (Sebaiknya ikut default sistem)
       6.      Klik “Next >” jika Anda tidak ingin merubah opsi instalasi DB.
       7.      Klik “Next >” dan …
       8.      Tunggu hingga proses instalasi selesai.

             Proses instalasi DB Postgre telah selesai. Jika Anda terkoneksi dengan akses internet pada saat melalukan instalasi, Anda bisa menambahkan beberapa fitur untuk memudahkan dalam mengakses Postgre. Anda harus mengaktifkan “centang” pada Stack Builder jika ingin menginstal fitur tambahan. 
1.      Klik “Next >” untuk pemilihan fitur tambahan.
2.      Sebagai contoh saya memilih fitur : Drupal, Apache dan phpPgAdmin, kemudian klik “Next >”.
3.      Pilih direktori sementara untuk download fitur tambahan (Sebaiknya ikuti default sistem).
4.      Tunggu hingga proses download file selesai.
5.      Klik “Next >” untuk memulai instalasi fitur tambahan.
6.      Ikuti langkah-langkah yang muncul untuk memulai instalasi fitur tambahan. Setelah seluruh fitur terinstal, Anda dapat menggunakan Postgre dengan lebih mudah


          2. Hasil Praktikum
Pertama, kita klik start dan plih xampp
Kemudian plih Shell, maka di layar akan muncul berikut ini:
                                

2.1  Buatlah user baru dengan nama user nama depan pribadi mahasiswa dan password menggunakan nim masing – masing.


1.2  Buatlah 2 database dengan nama: namaNIM masing-masing praktikan. Misal : “aziz05550057” dan nama database : contoh1.


1.3  Hapuslah database contoh1.


1.4  Jawablah soal matematika berikut menggunakan query buffer 9 – 5 + 5 x 0 + 3 : 2 = …. ? 
           Sebelum mulai mengerjakan, kita harus masuk dulu ke database dengan cara mysql> use fitria13650063; baru kemudan mulai menghtung. Terdapat 3 cara dalam menghitung soal diatas, yang pertama mysql> select (9 – 5 + 5 x 0 + 3 : 2); yang kedua ditambah dengan round dan yang ketiga dtambah floor.




2.5  Jawablah soal matematika berikut menggunakan query buffer 5%2=…



2.6  Tampilkan qurey untuk memperoleh tanggal dan jam sekarang?
2.7  Tampilkan selisih hari dalam untuk pengurangan waktu sekarang dengan waktu lahir praktikan


3. Tugas Rumah
3.1 Buatlah rancangan tabel suatu sistem disertakan dengan ERD, tujuan dari pembangunan sistem.
Sistem Informasi Pemesanan Tiket Bus
1.      Entitas
·         Pemesan
·         Tujuan
·         Kualitas
·         Pemesanan
2.      Atribute
Ø  Pemesan:
a.       id_pemesan: nomor orang yang memesan tiket (integer) PK
b.      nama_pemesan: nama pemesan (Var)
c.       alamat: alamat pemesan (Var)
d.      no_hp: nomor hp pemesan (integer)
Ø  Tujuan
e.       Id_tujuan: nomor tujuan (integer) PK
a.       Nama_kota: kota yang dituju (Var)
b.      Harga: harga tiket yang dipesan (integer)
c.       Jam_berangkat: waktu berangkat ke tujuan (Var)
Ø  Kualitas
a.       Id_kualitas: nomor kualitas pemesanan (integer) PK
b.      Nama_kualitas: nama kualitas yang dipilih pemesan (Var)
Ø  Pemesanan:
a.       Id_pemesanan: nomor pemesanan (integer) PK
b.      Id_tujuan: nomor tujuan (integer) PK
c.       Id_kualitas: nomor kualitas pemesanan (integer) PK
d.      id_pemesan: nomor orang yang memesan tiket (integer) PK
e.       Banyak: banyaknya tiket yang dipesan (integer)
f.       Tanggal: waktu saat pemesanan (Var)
g.      Total: jumlah yang dipesan (integer)
             
3. Tabel Setiap Entitas
Tabel Pemesan

Tabel Pemesanan
Tabel Tujuan
Tabel Kualitas
4. Hubungan

5. Entity Relationship Diagram (ERD) 
           4. Perbandingan PostgreSQL dan MySQL      

      a. Pengembangan 
        Pengembangan MySQL diatur secara sentral oleh perusahaan komersial di Swedia bernama MySQL AB (sebelumnya TcX AB). Perusahaan ini memperoleh pemasukan utamanya dari menjual layanan support dan konsultasi MySQL. PostgreSQL dikembangkan secara lebih terdesentralisasi dan merakyat, namun tetap diatur oleh sebuah kelompok online bernama PostgreSQL Development Group.
      b. Perilisan 
        MySQL dirilis dalam satuan yang lebih sering (sebulan bisa lebih dari satu kali), sementara PostgreSQL sekitar 4–6 bulan sekali.
      c. Arsitektur dan Portabilitas 
        MySQL memiliki arsitektur multithreading, sementara PostgreSQL multiproses (forking).
      d. Lisensi 
     Lisensi PostgreSQL lebih liberal. Inilah sebabnya ada banyak produk closed-source dan komersial yang bisa dikembangkan dari source code PostgreSQL. MySQL, karena dilisensi di bawah GPL, tidak boleh dimodifikasi menghasilkan produk turunan yang closed-source.
      e. Stabilitas 
      Keduanya sudah bisa dibilang cukup hingga amat stabil. Tapi perlu diingat bahwa database manapun—bahkan Oracle—sesekali dapat menyebabkan kerusakan data. Karena itu backup/history periodik dan incremental tetap diperlukan.
      f. Fungsi Built-In
        MySQL terkenal kaya fungsi built-in, seperti modifikasi string (REPLACE, RIGHTLTRIM, LCASE), matematika (LOG, LOG10), tanggal, dsb. Dalam hal ini MySQL lebih unggul.

     g. Manajemen User dan Keamanan 
    Kedua database menyimpan informasi user di sebuah database khusus. Sistem perizinan MySQL lebih mendetil daripada PostgreSQL. Misalnya, kita dapat mengeset agar user tertentu yang datang dari host tertentu hanya bisa membaca tabel saja tanpa bisa UPDATE. Di PostgreSQL ini masih bisa dilakukan dengan VIEW. 

5. Kesimpulan dan Saran
5.1 Kesmpulan
        Setelah mencoba menggunakan PostgreSQL dan MySQL, maka akan terlihat perbedaan saat memasukkan perintah. Kedua DBMS ini memiliki kelebihan dan kekurangan, tergantung pada selera dan kebutuhan masing-masing pengguna. Dengan melakukan percobaan ini, kita dapat memperluas mengetahui perbedaannya dan pengetahuan khususnya bagi orang-orang yang belajar IT. 
5.2 Saran
        Semoga postingan kali ini dapat bermanfaat bagi setiap pembaca, dan untuk asdos semoga memberikan nilai yang baik, dan memberikan komentar serta sarannya pada laporan kali ini. Terima Kasih,.. ^-^

Daftar Pustaka
Sanjaya, Rdwan.2005.Pengolahan Database MySQL 5 dengan JAVA 2. Yogyakarta:Penerbt Andi
http://carapedia.com/pengertian_definisi_database_info2083.html
http://thekicker96.wordpress.com/pengertian-database/
http://chixikals.blogspot.com/2012/10/postgresql-database.html
http://nra402.wordpress.com/2012/02/23/instalasi-postgresql-pada-windows/
http://www.master.web.id/mwmag/issue/04/content/fokus-mysql_vs_postgresql/fokus-mysql_vs_postgresql.html