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
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
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