Event

Event
My vacation with my friends FBI

Senin, 29 September 2014

PRAKTIKUM DESAIN BASIS DATA II PEMBUATAN DAN MANAJEMEN TABEL



PEMBUATAN DAN MANAJEMEN TABEL
A.    Landasan Teori
Tabel adalah suatu entitas  yang tersusun atas kolom dan baris. Dalam dunia database, kolom disebut field dan baris disebut record, dimana jumlah dan nama kolom harus didefinisikan terlebih dahulu di awal. Sedangkan baris merupakan sebuah variabel yang dapat dihapus dan diisi kapanpun, sehingga jumlahnya selalu berubah sesuai dengan jumlah data di dalamnya. Setiap kolom dalam tabel mempunyai tipe data, tipe data yang digunakan untuk membatasi jenis data yang bisa dimasukkan, sehingga akan mempermudah dalam menggunakannya dan melakukan pengelolaan selanjutnya. Suatu tabel harus memiliki primary key, artinya dalam pembuatan tabel haruslah terdapat sekelompok kolom (field) yang menyebabkan setiap baris (record) dalam tabel tersebut tidak sama. Dalam mendeklarasikan primary key tidak boleh kosong (null), jadi harus mendeklarasikan sebagai not null. Namun secara default PostSQL menganggapnya sebagai nullable (boleh kosong), jika waktu pengisian  tidak menyebutkan null  atau not null.
Dalam sebuah tabel ada sebuah atribut yang digunakan dalam perancangan basis data, atribut-atribut dapat dibedakan berdasarkan jumlah pengelompokan. Jika suatu atribut  dijadikan  sebagai key, maka tidak boleh ada dua atau lebih nilai yang sama untuk atribut tersebut. Relasi antara tabel satu dengan tabel yang lain dibentuk menggunakan kolom yang terdapat pada tabel-tabel bersangkutan, melalui pendefinisian constraint (primary key dan foreign key).
Constraint mengizinkan kita untuk menjaga integritas data dan menyring data yang disimpan dalam database. Dengan kata lain constraint adalah suatu aturan atau bataan yang mendefinisikan nilai atau data yang disimpan di dalam database, baik melalui operasi INSERT, UPDATE, maupun  DELETE.
Dalam standart ANSI, constraint dibedakan menjadi empat, yaitu :
  •  Primary key adalah suatu aturan yang berguna untuk memastikan bahwa setiap baris data di dalam suatu tabel bersifat unik (berbeda antara baris yang satu dengan yang lainnya). Primary key diterapkan pada kolom-kolom yang akan dijadikan sebagai pembeda. Aturan dalam pendefinisian primary key :
o   Suatu tabel tidak dapat memiliki lebih dari satu primary key
o   Kolom yang dijadikan primary key tidak boleh bertipe BLOP.
o   NIlai pada kolom yang didefinisikan sebagai primary key harus bersifat unik dan tidak boleh NULL.
  •     Foreign Key berguna unutk mendefinisikan kolom-kolom pada suatu tabel yang nilainya mengacu ke table lain. Dengan kata lain, kolom-kolom yang didefinisikan sebagai foreign key niainya harus diambil dari nilai kolom table lain. Kolom pada tabel lainnya yang akan diacu harus berupa kolom primary key atau unique. Jika kita mencoba memasukkan nilai ke dalam kolom foreign key dengan nilai yang tidak terdapat pada kolom tabel yang diacu, maka server database akan menolaknya. Aturan dalam pendefinisian foreign key :
o   Suatu table dapat memiliki lebih dari satu foreign key
o   Kolom yang diacu harus didefinisikan sebagai primary key atau unique.
o   Foreing key tidak bersifat unique.
  •        Unique pada dasarnya sama seperti primary key , yaitu untuk memastikan bahwa setiap baris data yang terdapat dalam dalam suatu table bersifat unik (tidak sama). Perbedaaannya, pada unique key tidak diizinkan memasukkan nilai NULL.
  •          Candidat Key adalah suatu atribut atau set minimal atribut yang ahnya mengidentifikasikan secara unik untuk suatu kejadian spesifik dari entitas.
Dalam pembuatan tabel sebaiknya direncanakan field dan tipe datanya untuk meminimalisir kesalahan saat tabel telah berisi data. Namun meskipun begitu bukan berarti tabel tidak bisa diubah dan dihapus. PostgreSQL telah menyediakan utilitas untuk manipulasi ini dan perlu diingat hal ini bukan manipulasi data melainkan manipulasi struktur tabelnya.
Dalam pembuatan tabel ada yang menggunakan 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.
Pada saat membuat tabel pada user tertentu maka hanya user tersebut dan user postgres yang dapat mengakses tabel itu. Namun jika kita ingin agar tabel yang telah dibuat pada user kita dapat diakses oleh user tertentu atau semua user yang berada pada PostgreSQL, maka semua itu dapat dilakukan dengan perintah GRANT. Jika ingin mencabut hak akses kita bisa menggunakan perintah REVOKE.
B.     Tujuan
1.      Mahasiswa memahami cara pembuatan maupun penghapusan tabel
2.      Mahasiswa memahami cara mengedit struktur dari tabel
3.      Maahasiswa mampu memanipulas tabel sesuai dengan kebutuhan
C.     Hasil Praktikum
1.      Versi PostgreSQL
Berikut ini tampilan awal psql. Tekan "Enter" jika servernya "localhost

Tekan"enter" jika muncul "database [postgres] :"
Tekan "enter" jika nomor portnya 5432.
Tekan 'Enter' dengan mengisi username-nya 'sesuai username pengguna' lalu         tekan enter.
                   Isikan password dari user.
                   Kemudian cek apakah database dengan perintah query "\l"
                  koneksikan database dengan user menggunakan query "\c [nama database]" 
                  kemudian akan muncul berikut ini


o   Buatlah sebuah tabel dengan menggunkan identitas NIM dan dengan nama fieldnya









o   Butlah sebuah tabel lagi dengan nama pegawai dan nama fieldnya sama dengan tabel identitas.
 


o   Hapus kolom "alamat_idn" dan tampilakan struktur dari tabel pegawai tadi.

o   Tambahkan kolom "pekerjaan_idn"dengan type varchar dan tampilkan struktur tabel pegawai.


o   Ubah nama tabel pegawai menjadi pekerjaNIM
                   kemudian ubah nama kolom "pekerjaan_idn" menjadi "alamat_idn" dan tampilkan.


o   Ubah type data pada kolom "alamat_idn" menjadi text.

kemudian berikan Primary key pada tabel pekerjaNIM


o   Hapus tabel pekerjaNIM

                                    query \z untuk melihat daftar tabel


o   Buat temporary dengan nama mahasiswa_sementara dengan 3 kolom yaitu id, nama, tanggal lahir dan ditampilkan tabel atau strukturnya.
       
                   o  Hapus semua hak akses tabel tertentu kepada salah satu user yang telah dibuat 


    lakukan pengecekan.


o   Berikan semua hak akses kembali dengan GRANT
                            lakukan pengecekan


o   Buat tabel baru dengan nama Gaji, dengan catatan pembuatan tabel berasal dari turunan tabel nomor 1 dan tambahkan kolom gaji kotor, pajak dan gaji bersih. Kemudian tampilakan strukturnya.


2.      Versi MYSQL shell
Pertama masuk ke dalam mysql shell dengan user yang telah dibuat atau menggunakan superuser
 


Lihat database menggunakan query "show databases;"


Koneksikan ke database


o   Buatlah sebuah tabel dengan menggunkan identitas NIM dan dengan nama fieldnya

untuk melihat struktur tabel menggunakan query "desc [nama database]".


o   Buatlah sebuah tabel lagi dengan nama pegawai dan nama fieldnya sama dengan tabel identitas.


o   Hapus kolom "alamat_idn" dan tampilakan struktur dari tabel pegawai tadi


o   Tambahkan kolom "pekerjaan_idn"dengan type varchar dan tampilkan struktur tabel pegawai.


o   Ubah nama tabel pegawai menjadi pekerjaNIM


kemudian ubah nama kolom "pekerjaan_idn" menjadi "alamat_idn" dan tampilkan.


o   Ubah type data pada kolom "alamat_idn" menjadi text.


kemudian berikan Primary key pada tabel pekerjaNIM


o   Hapus tabel pekerjaNIM


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

 o  Lakukan grant terlebih dahulu


o   Hapus semua hak akses tabel tertentu kepada salah satu user yang telah dibuat  
lakukan pengecekan


lakukan pengecekan


o   Berikan semua hak akses kembali dengan GRANT



lakukan pengecekan


o   Buat tabel baru dengan nama Gaji, dengan catatan pembuatan tabel berasal dari turunan tabel nomor 1 dan tambahkan kolom gaji kotor, pajak dan gaji bersih. Kemudian tampilakan strukturnya. Di mysql tidak ada inherits maka dengan manual saja.


lakukan pengecekan


D.    Tugas Rumah
Buat database dan tabel sistem pada pertemuan 1 menggunakan query dan dilengkapi dengan tampilan strukturnya.
Berikut query-query sesuai dengan ERD "BIOSKOP" pada laporan pertama
·         Tabel administrasi
·         Tabel anggota
·         Tabel daftar buku
·         Tabel peminjaman
·         Tabel pendaftaran

                            Beriku query-query tabel pada ERD Bioskop



E    Evaluasi Perbandingan PostgreSQL dan MySQL shell
Perintah
Mysql
PostgreSQL
Membuat tabel
Create table [namatable]([namakolom] [tipe data] [ket]
Create table [namatable]([namakolom] [tipe data] [ket]
Menghapus kolom
Alter table [namatabel] drop column "namakolom"
Alter table [namatabel] drop [namakolom]
Koneksi database
\c [nama database]
Use [nama database]
Melihat database
\l
Show databases
Melihat struktur tabel
\d [nama tabel]
Desc [nama tabel]
Melihat daftar tabel
\z
Show tables
Mengubah nama tabel
Alter table [nama tabel asal] rename ti [nama tabel baru]
Rename table [nama tabel asal] to [nama tabel baru]
Menambah kolom
Alter table [nama tabel] add column "namakolom" [jenis data]
Alter table [nama tabel] add [nama kolom] jenis data [ket]
Mengubah nama kolom
Alter table [nama tabel] rename colunm "nama kolom asal" to [nama kolom baru]
Alter table [nama table] change [nama kolom asal] [namakolom baru] jenis data [ket]
Mengubah tipe data
Alter table [nama tabel] alter column [nama kolom] [tpe data pengganti]
Alter table [nama tabel] modify [nama kolom] [tipe data pengganti]
Memberi primary key
Alter table [nama tabel] add primary (namakolom)
Alter table [nama tabel] add primary (namakolom)
Menghapus tabel
Drop table [nama tabel]
Drop table [nama tabel]
Membuat tabel temporary
Create temporary table [namatable]([namakolom] [tipe data] [ket]
Create temporary table [namatable]([namakolom] [tipe data] [ket]
REVOKE
Revoke all on [namatabel] from [user]
Revoke all on [database.tabe] from [user]
GRANT
Grant all on table [nama tabel] to [user]
Grant all on [database.tabe] from [user]
Pengecekan revoke
Select * from [nama tabel]
Select * from [nama tabel]
Pengecekan grant
Select * from [nama tabel]
Show grants for [user]
Inheritance
Create table ([nama kolom] [tipe data] [ket]) inherits (namatabel)
Create table ([nama kolom] [tipe data] [ket]) manual


F.     Kesimpulan
Dan dapat disimpulkan bahwa dalam memanipulasi data kita perlu memahami tentang cara membuat, menghapus, mengedit tabel. Kita akan lebih mengetahiu dalam pembuatan dan manajemen tabel dengan postgre maupun mysq. Dan pengertian tabel sendrir adalah suatu entitas  yang tersusun atas kolom dan baris. Dalam dunia database, kolom disebut field dan baris disebut record, dimana jumlah dan nama kolom harus didefinisikan terlebih dahulu di awal. Sedangkan baris merupakan sebuah variabel yang dapat dihapus dan diisi kapanpun, sehingga jumlahnya selalu berubah sesuai dengan jumlah data di dalamnya. Dalam standart ANSI, constraint dibedakan menjadi empat, yaitu :
·         Primary key
·         Foreign Key
·         Unique
·         Candidat Key
a)      Saran
Mungkin ada baiknya jika soal diperjelas dan pengumpulan tugas lebih fleksibel
b)      Kritik
Kurang komunikasinya praktikan dengan asisten membuat praktikan sulit untuk menanyakan maksdu dari soal di modul.
G.     Daftar Pustaka
  • Raharjo,Budi.Membuat Database menggunakan MySQL.Informatika : Bandung.2011.
  • Kline, Kevin E.SQL in a Nutshell, 2ndEdition.O'Reilly.2004. 
  • adhit.net/.../manajemen-database-mysql-dengan-com
  • tutorial.belajarweb.net/mysql/tutorial-mysql-koneksi-database.

 





 







































Tidak ada komentar:

Posting Komentar

© Copyright 2010 My Esperienza Blog
Welcome to My Esperienza Blog