Pages

Selasa, 30 September 2014

Laporan Praktikum II : Pembuatan dan Menejemen Tabel

BAB 1

Dasar Teori

Pengertian Tabel
Tabel merupakan elemen penting dalam sebuah database, tabel sendiri terdiri dari baris (row) dan kolom (column), dimana jumlah dan nama kolom harus didefinisikan dari awal. Sedangkan baris merupakan sebuah variabel yang dapat dihapus dan diisi kapanpun, sehingga jumlahnya selalu berubah sesuain dengan jumlah data didalamnya. Tiap kolom memiliki tipe data yang digunakan untuk membatasi data apa yang dapat diinputkan kedalam field tersebut
hal ini untuk mempermudah dalam memenejeman sebuah database. Dalam pembuatan database dalam penentuan tabel-tabel yang akan dibuat dan diberikan nama kolom dan tipe datanya diberikan sebuah aturan khusus, seperti :

  • Tabel harus memiliki primary key, dimana tabel haruslah memiliki sekelompok kolom (field) yang menyebabkan setiap baris (record) dalam tabel tersebut berbeda dan juga digunakan untuk mempercepat dalam pencarian.
  • Deklarasi primary key tidak boleh koson (null), jadi perlu dideklarasikan sebagai not null.
  • Nama field harus unik dan spesifik, boleh disingkat dan untuk menganti pemisah (space) dapat menggunakan lambang “_” (underscore).
Beberapa query dalam mebuat sebuah database :
Struktur query untuk pembuatan table :
Create table [nama_tabel] ([nama_kolom] [tipe data] [keterangan/value] primary key, [nama_kolom] [tipe data] [keterangan/value]);

Untuk melihat struktur tabel yang telah dibuat menggunakan query :
\d

Untuk menghapus tabel menggunakan qurey :
Drop table [nama_tabel];

Untuk memanipulasi tabel yang sudah dibuat dapat menggunakan query DDL seperti berikut :
Struktur query untuk menghapus sebuah kolom : Alter table [nama_tabel] drop column [nama_kolom];

Struktur query untuk menambah sebuah kolom :
Alter table [nama_tabel] add column [nama_kolom] [tipe data] [keterangan/value];

Struktur query untuk mengubah nama kolom :
Alter table [nama_tabel] rename column [nama_kolom_awal] to [nama_kolom_baru];

Struktur query untuk mengubah tipe data dari kolom tertentu :
Alter table [nama_tebel] modify [nama_kolom] [nama_tipe_baru][(keterangan)];

Struktur query untuk menambah primary key :
Alter table [nama_tabel] add primary key ([nama_kolom]);

Temporary Table
Sifat temporay table hanya sementara, artinya akan aktif hanya ketika kita sedang berada atau login ke databe, namun ketika kita maka secara otomatis temporary table akan terhapus.
Struktur query untuk membuat tabel dengan dua kolom :
Create temporary table [nama_tabel] ([nama_kolom] [tipe data] [keterangan/value] primary key, [nama_kolom] [tipe data] [keterangan/value]);

Grant dan Revoke
Pada saat membuat tabel pada user tertentu maka hanya user tersebut dan user postgres yang dapat mengakses tabel itu. Namun jika ingin agar tabel yang telah dibuat pada user kita dapat dilakukan dengan perintah grant. Jika ingin mencabut hak akses bisa menggunakan query revoke.
Struktur penggunaan grant untuk semua hak akses :
grant all on table [nama_tabel[ to [nama_user];
Struktur penggunaan REVOKE untuk semua hak akses :
revoke all on table [nama_tabel] from [nama_user];
Struktur query untuk menghapus salah satu hak akses, misalnya UPDATE :
revoke update on table [nama_tabel] from [nama_user];
Struktur query untuk memberi salah satu hak akses, misalnya DELETE :
grant delete on table [nama_tabel] to [nama_user];

Inheritance (Turunan)
Inheritance dipergunakan jika ingin membuat sebuah tabel baru yang berhubungan dengan tabel yang ada, dengan kata lain turunan tabel pertama.
struktur query untuk penggunaan inheritance :
create temporary table [nama_tabel] ([nama_kolom] [tipe_data] [keterangan]) inherits [nama_tabel_induk];
Dalam hal hubungan antar tabel, ada beberapa syarat yang harus terpenuhi seperti, antara tabel yang ingin dihubungkan harus memiliki sebuah field dengan tipe data yang sama. dengan kata lain ada tabel yang memiliki primary key sebagai kunci. untuk menghubungkan ke tabel yang lain dimana terdapat field yang mempunyai tipe data yang sama dengan kata lain yang disebut foreign key. misalnya, terdapat tabel barang dan macam barang. Berikut query kedua tabel tersebut :
create table barang (bar_id integer not null, bar_nama varchar(15), mac_id integer not null reference macam_barang, primary key (bar_id, mac_id));
create table macam_barang (mac_id integer not null, mac_nama varchar(15), mac_guna varchar(40), primary key (mac_id));

Tipe Data
Char = String karakter dengan panjang tetap
Varchar = String karakter dengan panjan bervariasi tapi panjang maksimal sesuai yang ditetapkan.
Numeric = angka dengan maksimal digit sesuai yang ditetapkan
Integer = Tipe data dengan input angka dengan panjang tertentu
Date = Tanggal
Time = Waktu

BAB 2
Hasil Praktikum
1. Buatlah sebuah tabel dengan nama identitasNIM dan dengan nama dan tipe data field sebagai berikut :

Nama
Tipe _data
Keterangan
Id_idn
Integer
Not Null
namaDepan_idn
Varchar(10)

NamaBelakang_idn
Varchar(10)

tgl_lahir_idn
Date

status_idn
Boolean

Alamat
Text


Saya akan membuat tabel pada database yang telah dibuat sebelunya, klik pada database kemudian pilih menu SQL
Selanjutnya ketikan query : create table identitasNIM (Id_idn integer primary key, namaDepan_idn varchar (10), namaBelakang_idn varchar (10), tgl_Lahir_idn date, status_idn boolean, Alamat text); kemudian klik go.
Jika berhasil maka akan muncul tampilan seperti ini :


2. Buatlah sebuah tabel lagi dengan nama pegawai dan nama serta ketentuan field yang sama dengan tabel identitasNIM.
Ketikan kembali query yang sama seperti tadi dengan menganti nama tabel dari identitasNIM ke pegawai seperti berikut : create table pegawai (id_idn integer primary key, namaDepan_idn varchar (10), namaBelankang_idn varchar (10), tgl_Lahir_idn date, status_idn boolean, Alamat text); kemudian klik go.
Jika muncul tampilan seperti ini maka kita berhasil membuat sebuah tabel baru dengan nama pegawai:

3. Hapus kolom “alamat_idn” dari tabel pegawai tadi.
Gunakan query DDL seperti ini untuk menghapus sebuah kolom : alter table pegawai drop column alamat;
ketika kita klik go maka akan muncul pertanyaan, jika kita ingin menghapus kolom tadi klik ok jika tidak cancel.
Dan jika berhasil akan ada tampilan seperti ini :

4. Tambahkan kolom “pekerjaan_idn” dengan type data varchar dan tampilkan struktur tabel pegawai.
Query yang digunakan untuk menambah sebuah kolom : alter table pegawai add column pekerjaan_idn varchar (10);
Dan jika sukses akan tampil :

Untuk melihat apakah field benar sudah sesuai dengan keinginan kita bisa melihatnya dengan meng-klik daftar tabel maka akam muncul field dalam tabel tersebut.

5. Ubah nama tabel pegawai menjadi pekerjaNIM kemudian ubah nama kolom “pekerjaan_idn” menjadi “alamat_idn” dan tampilkan.
Untuk merubah nama tabel gunakan query : alter table pegawai rename to pekerjaNIM;
Sedangkan untuk merubah nama kolom bisa menggunakan query : alter table pekerjaNIM change pekerjaan_idn alamat_idn text(20);

6. Berikan Primary key pada tabel pekerjaNIM dan ubah type data pada kolom “alamat_idn” menjadi varchar.
Gunakan query : alter table pekerjanim add primary key (id_idn); untuk menambah primary key.

Tapi karena sebelumya sudah ada primary key maka akan muncul tamilan seperti ini :

Sedangkan untuk merubah tipe dari text ke varchar kita dapat menggunakan query :
alter table pekerjanim modify alamat_idn varchar(20);


7. Menghapus tabel pekerjaNIM.
Untuk menghapus sebuah tabel gunakan query : drop table pekerjanim;
Jika muncul pertanyaan seperti sebelumnya tekan ok untuk menghapus tabel pekerjaNIM. Dengan muncul tampilan seperti ini berarti kita berhasil menghapus tabel tadi.


8. Buat temporary tabel dengan nama mahasiswa_sementara dengan 3 kolom yaitu id, nama, tanggal lahir dan tampilkan tabel atau strukturnya.
Dalam membuat tabel temporer kita query yang dipakai : create temporary table mahasiswa_sementara (id integer, nama varchar (20), tgl_Lahir date);

Karena sifatnya yang temporer jadi ketika kita menggunakan query show tables; maka table tidak akan nampak.

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.
Menghapus hak akses tabel dapat kita gunakan query : revoke all on table identitasnim from db_afaf13650034;
Sedangkan untuk memberi hak akses dapat dilakukan dengan query : grant all on table identitasnim to db_afaf13650034;



10. Buat tabel baru dengan nama Gaji, dengan catatan pembuatan tabel berasal dari turunan tabel pertama dan tambahkan kolom gaji kotor, pajak, dan gaji bersih. Kemudian tampilkan strukturnya.
Soal ini merupakan bentuk penerapan inherits yaitu turunan dari tabel induknya jadi tabel ini memiliki field dari induknya. Query dalam penerapan ini adalah :create table gaji (gaji_kotor numeric primary key, pajak numeric, gaji_bersih numeric) inherits identitasnim; query turunan dalam MySQL sedikit lebih rumit dibandingkan deng di postgres.



BAB 3 
Tugas TambahanBuat sebuah database dan isi sesuai ERD pada laporan sebelumnya.
Untuk membuat sebuah database baru ketikan : create database koperasi; lalu klik go untuk membuat database bernama koperasi.


Maka akan muncul database baru.

Pilih database tersebuat lalu kita buat tabel pertama, yaitu tabel anggota yang field-nya berisi ID_ang, Nama_ang, Alamat_ang, dan No_ang.

Selanjutnya tabel kedua, yaitu tabel barang yang field-nya berisi Id_barang, nama_barang, persediaan, harga, dan dana_disimpan.

Dan terakhir tabel dana yang isi field-nya tgl_pinjam, jlm_pinjam, tgl_kembali, dan saldo.
Ok sekarang kita telah memiliki 3 tabel dalam database koperasi kita.



Perbandingan Postgres dan MySQL


Perbedaan antara syntax diantara keduanaya, contoh :MySQL : show tables; untuk melihat semua tabel.
Postgres : \d untuk melihat struktur tabel.
Perbandingan cara eksekusinya :MySQL : dengan meng-klik go pada pojok bawah.
Postgres : postgres shell umumnya dengan menekan enter
Struktur tabel :MySQL : query pada MySQL lebih fleksibel dalam menangani alter tabel
Postgres : syntax yang lebih rumit.

Kesimpulan
Dalam pembahasan diatas bisa dibilang lebih mudah penggunaan MySQL karena syntax-syntax-nya yang lebih fleksibel dalam menangani alter table, karena kita butuh bekerja cepat dan efisien maka penggunaan MySQL akan lebih menghemat waktu, selain itu MySQL lebih umum digunakan sehingga lebih mudah dan juga sudah di lengkapi interface sehingga sebenarnya tadak perlu repot-repot mengingat syntax yang kadang rumit

Kritik dan Saran
Lebih banyak lagi eksplorasi tentang database sehingga tau fungsi nantinya dari istilah-istilah yang asing bagi kita dan jangan suka copy-paste dalam pembelajaran agar bisa belajar dengan menulis langsung query-nya sehingga lebih ingat tentang struktur bahasa query.

Manfaat
Diharapkan setelah membaca ini dapat memahami cara pembuatan dan menejemen tabel

Daftar Isi
http://www.proweb.co.id/articles/web_application/rdbms.html
http://ilmuonline.net/belajar-database-mysql-menambah-memodifikasi-menghapus-tabel/s.html
Materi Praktikum Desai Basis Data 2013.pdf
http://www.hanivinside.net/2014/04/belajar-basis-data-mysql.html
http://prothelon.com/belajar/category/belajar-mysql
web.unair.ac.id/admin/file/f_33720_SDP_2_MAnajemen_Database.pdf
Sadeli Muhammad.2014.Aplikasi bisnis dengan PHP & MySQL. Palembang : Maxikom
http://uyunoshigoto.wordpress.com/2012/12/29/pengenalan-sql/

Tidak ada komentar:

Posting Komentar