Selasa, 30 September 2014


LAPORAN PRAKTIKUM DESAIN BASIS DATA
MEMBUAT DAN MANAJEMEN TABEL
Dosen Pengampu  :
Aziz Musthafa, S.Kom
Asisten         :
Landi



NAMA           :Moh Ikbalul Huda
NIM               : 13650037
KELAS            : G

JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI MAULANA MALIK IBRAHIM MALANG
Tahun Ajaran 2014/2015

A.      DASAR TEORI
Padapraktikum kali ini, kita telah membahas mengenai berbagai masalah yang berhubungan dengan tabel seperti membuat atau pun memanipulasi tabel. Tetapi sebelum kita bisa membuat tabel kita diharuskan untuk membuat database terlebih dahulu, yang telah kita bahas dan pelajari pada minggu lalu. Mungkin ada sebagian dari temen – temen yang lupaakan database tersebut. Tenaang kita akan ulas sedikit pada laporan ini.
            Database adalahsebuah media utama yang harus dibuat dalam membangun sebuah basis data agar nantinya dapat kita letakkan beberapa table dengan field-fieldnya. Pada MySQL database akan disimpan dan dikumpulkan kedalam sebuah direktori khusus yang bernama data. Dalam semua sub direktori yang ada di dalamnya akan dianggap sebagai sebuah database. Dalam MySQL dapat pula dibuat database tanda menggunakan query SQL.
            Oke jikas udah sedikit ada gambaran atau mungkin masih ada sisa sisa ingatan yang sempat hilang maka langsung buat dan aktifkan database ya!!! Dan kita akan langsung mendalami tentang tabel.
            Sebuah tabel terdiri dari baris (row) dan kolom (column), dimana jumlah dan nama kolom harus didefinisikan terlabih dahulu di awal. Sedangkan baris merupakan sebuah variabel yang dapat dihapus dan diisi kapanpun, sehingga jumlahnya selalu berubah sesuai dengan jumlah data didalamnya. Setiap kolom dalam tabel mempunyai tipe data, tipe data digunakan untuk membatasi jenis data yang bisa dimasukkan, sehingga akan mempermudah dalam menggunakannya dan melakukan pengelolaan selanjutnya.
B.      HASIL PERCOBAAN
Dari hasil praktikum dilaboratorium yang menggunakan postgresSQL atau lebih tepatnya SQLShell, makaberikut query query yang digunakan untuk memuat atau memanipulasi tabel :
Ø  Membuattabel
create table namatabel (namakolom tipedata keterangan, namakolom tipedata keterangan);
MB :Untuk melihat struktur tabel yang telah dibuat ketikkan perintah \d dan melihat semua tabel menggunakan \z.
Sedangkankan untuk menghapus tabel berikut qury-nya :
                                    drop table namatabel; 

Ø  Memanipulasi table
1.      Untukmenghapuskolom
alter table namatabel drop column “namakolom”;
2.      Untukmenambahkolom
alter table namatabel add column “namakolom” tipe data;
3.      Untukmengubahnamatabel
alter table namatabelasal rename to namatabelbaru;
4.      Untukmengubahnamakolom
alter table namatable rename column “namakolomasal” to namakolombaru;
5.      Untukmengubahtipedarikolomtertentu
alter table namatable alter column namakolom type namatypepengganti;
6.      Untukmenambahprimary keypadatabel
alter table namatabel add primary key (namakolom);

Ø  Temporary tabel
create temporary table namatabel (namakolom tipedata keterangan , namakolom tipedata keterangan);

Ø  GRANT dan REVOKE
1.      Penggunaan GRANT untuk semua hak akses
grant all on table namatabel to namauser;
2.      Penggunaan REVOKE untuk semua hal akses
revoke all on table namatabel from namauser;
3.      Penghapusan salah satu hak akses, misalkan UPDATE
revoke update on tabelnamatabel from namauser;
4.      Memberikan salah satu hak akses
grant delete on tabelnamatabel to namauser;

Ø  Turunan ( inheritance )
create temporary table namatabel (namakolomtipedataketerangan , namakolomtipedataketerangan) inherits (namatabelinduk);

Sedangkan dari hasil praktikum pribadi saya yang menggunakan MySql atau lebih tepatnya phpMyAdmin, makaberikut adalah query query yang digunakan untuk membuat dan memenipulasi tabel :
Ø  Membuat tabel
Oke karena pada praktikum yang pertama telah diajarkan membuat database dan mengaktifkannya, maka kita akan langsung membuat tabel. Secara garis besar tidak ada perbedaan secara mendetail antara postgresSQL dengan MySQL dalam hal pembuatan tabel ini. Berikut struktur query-nya :
create table namatabel (namakolom tipedata keterangan, namakolom tipedata keterangan);
G




Ø  Memanipulasi tabel
1.      Untuk menghapus kolom
alter table namatabel drop column namakolom;
MB :tanpa tandapetik untuk namakolom

2.      Untuk menambah kolom
alter table namatabel add column namakolomtipe data;
MB :tanpatandaperikuntuknamakolom


3.      Untuk mengubah nama tabel
alter table namatabelasal rename to namatabelbaru;


4.      Untuk mengubah nama kolom
Dari sini mulai terlihat perbedaan query antara keduanya. Dibawah adalah struktur query untuk MySQL :
alter table `namatable` change `namakolomasal` `namakolombaru` tipedata;
-          PostgresSQL menggunakan rename to dan padaakhir query tidak harus ada tipedata-nya.
-          MySQL menggunakan change dan padaakhir query-nyaharus ada tipedata untuk kolom baru.


5.      Untuk mengubah tipe dari kolom tertentu
alter table `namatable` change `namakolom` `namakolombaru` typepengganti;
-          PostgresSQL menggunakan query alter column, dan menyebutkan tipe lama serta baru dari kolom.
-          MySQL menggunakan query change dan nama kolom disebutkan dua kali dengan menggunakan tanda“ ` “ serta nama tipe baru disebutkan di akhir.


6.      Untuk menambah primary key pada tabel
alter table namatabel add primary key (namakolom);
7.      Menghapus Tabel
Drop table namatabel


Ø  Temporary tabel
create temporary table namatabel (namakolom tipedata keterangan , namakolom tipedata keterangan);

Ø  GRANT dan REVOKE
Grant berfungsi untuk membuat user baru dan memberikan hak istimewa. Grant adalah salahsatu privilege untuk tabel. Grant digunakan untuk memberikan privilege kepada tabel yang didefinisikan kepada pemakai lain. Berikutstrukutur query-nya :
granthak_akses on namatabel to pemakai/user;
            Untuk menghapus batasan hak akses yang telah diatur dengan
Menggunakan perintah GRANT, digunakan perintah REVOKE. Berikut struktur query-nya :
revokehak_akses on namatebel from pemakai/user;

Ø  TURUNAN ( Inheritance )
Inheritance dipergunakan jika ingin membuat sebuah tabel baru yang berhubungan dengan tabel yang ada, dengan kata lain turunan tabel pertama.
Strukturquerynya:
Create temporary table (namatabelnamakolomtipe dataketerangan ,namakolomtipe dataketerangan) inherits (namatabelinduk);
C.      PERBANDINGAN DBMS
-                      PostgresSQL
Kekurangan :
            Hanya saja struktur query yang panjang
Kelebihan :
Untuk struktur querynya panjang namun tidak membingungkan untuk dipahami bagi pemula.

-                      MySQL
Kekurangan :
Setelah diuraikan diatas bahwa diantara perbedaan antara postgresSQL dan  MySQL ini adalah adanya tanda petik atau tidak pada susunan struktur query MySQL, dan ditemuijuga adanya tanda“ `“ yang tidak biasa ditemukan oleh programmer pemula pada source code program - program.
Kelebihan :
Struktur querynya mudah dimengerti walaupun kadang terdapat symbol-simbol yang tidak biasa pada source code.

D.     KESIMPULAN
Berdasarkanapa yang telah kita pelajari pada praktikum ini mengenai Pembuatan dan manipulasi tabel.Maka dapat disimpulkan bahwa secara garis besar Query-query untuk membuat yang terdapat di DBMS PostgresSQL maupun MySQLtidak jauh berbeda, hanya beberapa yang berbeda tentang manipulasinya.
Sebaiknya tidak hanya membahas mengenai pembuatan dan manajemen tabel saja, tapi juga cara mengidentifikasi bagian apa saja yang dibutuhkan untuk membuat suatu database, agar sistem informasi tersebut dapat menjadi system informasi yang baik dan disukai serta digunakan banyak orang maupun perusahaan.Dan semoga sedikit ilmu yang kami tularkan nantinya akan dapat mempermudah pembaca dalam memcahkan masalah – masalah atau mungkin tugas – tugas pembaca sekalian.
E.      DAFTAR PUSTAKA

MateriPraktikumDesain Basis Data 2013.pdf
Kadir Abdul, 2000, Konsep&TuntutanPraktis Basis Data, Yogyakarta: Andi
Setyaputra Andy, 2012. Desain Database & ERD







Membuat database dan tabel sistem pada Pertemuan 1 menggunakan query dan dilengkapi dengan tampilan strukturnya.