BAB II
PEMBUATAN DAN MANAJEMEN TABEL
A.
Landasan Teori
MySQL merupakan sebuah database yang
RDBMS (Relational Database Management System), Multi- user dan mendukung bahasa
permintaan standar SQL (Struktured Query Language), dan juga sebagai database
server. Sebagai database yang besar, MySQL memiliki dua buah bentuk lisensi.
Yang pertama adalah MySQL berbentuk software open source atau yang disebut
dengan free softwar, lisensi ini menjadikan siapa saja boleh menggunakan distro
MySQL tanpa harus dipungut biaya hak cipta. Dengan kondisi tersebut maka
siapapun dapat dengan bebas menggunakannya baik digunakan untuk kalangan instansi formal maupun non formal.
Bentuk MySQL yang termasuk dalam software open source tergolong dalam lisensi
GNU / GPL (General Public License).
Yang kedua, MySQL memiliki lisensi
yang sifatnya Corporate, untuk versi MySQL yang sifatnya Corporate/komersial
sering disebut dengan MySQL AB. Dengan menggunakan versi komersial ini anda
harus memiliki izin untuk menggunakannya, atau paling tidak anda harus
mengeluarkan biaya pembelian untuk dapat menggunakan distro yang asli.
Dalam penggunaan MySQL kita akan
mengenal yang namanya database. Database atau yang dapat diistilahkan dengan
sebuah gudang data, merupakan sebuah komponen yang sangat berperan dalam sebuah
system basis data. Di dalam sebuah database memungkinkan untuk menyimpan
berbagai objek atau yang disebut dengan atribut/ table. Didalam table sendiri
dimungkinkan untuk terdapat beberapa elemen atau dapat disebut dengan
field/kolom.
Nah, didalam table
tersebutlah data-data dari sebuah system informasi didokumentasikan. J
Pada dasarnya, dalam pembuatan basis data memiliki urutan sebagai
berikut:
1.
Membuat
database.
2.
Membuat
table.
3.
Di
dalam table terdapat beberapa kolom.
Jadi,
“dalam satu Database memiliki beberapa Table, dan dalam satu Table memiliki
beberaa Kolom”.
Tugas Praktikum :
1.
Buatlah
sebuah tabel dengan nama identitasNIM dan dengan nama fieldnya
Nama
|
Tipe data
|
keterangan
|
id_idn
|
Integer
|
Not Null
|
nama_Depan_idn
|
Varchar (10)
|
|
nama_Belakang_idn
|
Varchar (10)
|
|
tgl_lahir_idn
|
Date
|
|
status_idn
|
Boolean
|
|
alamat_idn
|
Text
|
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.
B.
Hasil Praktikum dan hasil percobaan
Ok, sama seperti sebelumnya, kita
akan membuat dan memanagemen table dengan menggunakan mysql shell dan juga SQL
shell (psql).
a.
Pada MySQL
Sebelum kita mengerjakannya, pertama kita buka XAMPP Ã klik start (Apache & MySql) Ã klik Shell. Setelah kita membuka shell selanjutnya kita membuka
mysql dengan mengetikkan, mysql –u root –p.
Setelah kita masuk ke mysql >, langkah selanjutnya adalah
membuat database baru à use
namadatabase Ã
setelah ini kita baru bisa melakukan CREATE TABLE.
1.
Membuat
Table identitasNIM
Query
dasar :
CREATE
TABLE namatabel (namakolom tipedata keterangan, namakolom tipedata keterangan,
namakolom tipedata keterangan);
Berikut
contohnya :
- Sebelum kita membuat tabel, kita harus menggunakan DATABASE yang akan kita gunakan sebagai tempat mambuat table, dengan cara : use namadatabase;
- Desc namatabel à untuk melihat struktur table.
2.
Membuat
Table pegawai
Query
dasar :
CREATE
TABLE namatabel (namakolom tipedata keterangan, namakolom tipedata keterangan,
namakolom tipedata keterangan);
Berikut
contohnya :
3.
Menghapus
kolom
Query
dasar :
ALTER
TABLE namatabel DROP COLUMN namakolom;
Berikut
contohnya :
4.
Menambahkan
kolom
Query dasar :
ALTER TABLE namatabel ADD COLUMN namakolom tipedata;
5.
Mengubah
nama table dan mengubah nama kolom
Query
dasar :
ALTER
TABLE namatabelawal RENAME to namatabelbaru;
Query
dasar :
ALTER
TABLE namatabel CHANGE namakolomawal namakolombaru type AFTER
namakolomsebelumnya;
Berikut
contohnya :
6.
Menambahkan
primary key dan mengubah type data
Query
dasar :
a.
Menambahkan
Primary key
b.
Mengubah
type data
ALTER
TABLE namatabel Modify namakolom type;
7.
Menghapus
table
Query
dasar:
DROP
TABLE namatabel;
Berikut
contohnya :
8.
Membuat
temporary table
Query
dasar :
CREATE
TEMPORARY TABLE namatabel (namakolom tipedata keterangan, namakolom tipedata
keterangan, namakolom tipedata keterangan);
Berikut
contohnya :
9.
Grant
& Revoke
Query dasar :
a.
Struktur
penggunaan GRANT untuk semua hak akses :
GRANT
all privileges on *.* to ‘namauser’@’localhost’ identified by ‘password’ with
grant option;
b.
Struktur
penggunaan REVOKE untuk semua hak akses :
REVOKE
all privileges on *.* from ‘namauser’@’localhost’ identified by ‘password’;
c.
Struktur
penggunaan REVOKE untuk salah satu hak akses, misalnya SELECT :
GRANT
SELECT on *.* to ‘namauser’@’localhost’ identified by ‘password’ whit grant
option;
d.
Struktur
penggunaan REVOKE untuk salah satu hak akses, misalnya SELECT :
REVOKE SELECT
on *.* from ‘namauser’@’localhost’ identified by ‘password’ whit grant option;
Berikut contohnya
:
Pengecekan
:
* Dalam melakukan pengecekan GRANT and REVOKE kita harus memperhatikan beberapa hal, seperti penggunaan user dan database tempat membuat table.
* Untuk mengecek REVOKE setelah GRANT, maka kita harus keluar dulu
dengan mengetikkan \q untuk Quit. Baru setelah itu kita bisa menecek REVOKE
yang telah kita lakukan.
b. Pada psql (PosgreeSQL)
Sebelum mengerjakannya, pertama kita masuk dulu ke SQL shell.
Sebelum mengerjakannya, pertama kita masuk dulu ke SQL shell.
1. Membuat
table dengan nama dan field yang sudah
di tentukan di atas, kita harus tahu terlebih dahulu struktur query yang akan
kita gunakan untuk membuat table, strukturnya adalah seperti berikut.
Query dasar :
CREATE TABLE namatabel
(namakolom tipedata keterangan, namakolom tipedata keterangan, namakolom
tipedata keterangan );
Contohnya adalah seperti bawah ini :
Untuk melihat struktur table yang telah kita buat, ketikkan perintah \d namatabel, dan untuk melihat nama table, ketikkan perintah \z.
2. Membuat
table baru dengan nama “pegawai” dan dengan field yang sama seperti pada table
1.
3.
Menghapus
kolom “alamat_idn” pada table pegawai dan tampilkan struktur tablenya.
Query
dasar :
ALTER
TABLE namatable DROP COLUMN namakolom;
Berikut
contohnya :
* Untuk menampilkan struktur tabelnya, ketikkan \d dengan di ikuti
namatabel.
4. Menambahkan
kolom “pekerjaan_idn” dengan type data varchar dan tampilkan struktur table
pegawai.
Query
dasar :
ALTER
TABLE namatabel Add Column “namakolom”
tipe data;
5. Mengubah
nama table pegawai menjadi pekerjaNIM dan mengubah nama kolom “pekerjaan_idn”
menjadi “alamat_idn” dan tampilkan strukturnya.
Query dasar :
a.
ALTER
TABLE namatabelawal Rename to namatabelbaru;
b.
ALTER
TABLE namatabel rename column “namakolomawal” to namakolombaru;
Berikut contohnya :
6.
Memberikan
primary key pada table pekerjaNIM dan mengubah type data pada kolom
“alamat_idn” menjadi text.
Query
dasar :
a.
Struktur
query yang digunakan untuk menambahkan primary key pada table
ALTER TABLE namatabel add primary key (namakolom);
b.
Struktur
query yang digunakan untuk mengubah type data dari suatu kolom tertentu.
ALTER TABLE namatabel ALTER COLUMN namakolom Type
namatypepengganti;
Berikut
contohnya :
7.
Hapus
table pekerjaNIM
Query
dasar :
DROP
TABLE pekerjaNIM;
* Jika setelah di ENTER terdapat pesan DROP TABLE, maka table
“pekerjaNIM” sudah terhapus.
8.
Membuat
temporary table dengan nama mahasiswa_sementara dengan 3 field (id, nama, dan
tgl_lahir) setelah itu tampilkan.
Query
dasar :
CREATE
TEMPORARY TABLE namatabel (namakolom tipedata keterangan, namakolom tipedata
keterangan, namakolom tipedata keterangan);
9.
Grant
and Revoke
Query
dasar :
a.
Struktur
penggunaan GRANT untuk semua hak akses :
Grant
all on table namatabel to namauser;
b.
Struktur
penggunaan REVOKE untuk semua hak akses :
Revoke
all on table namatabel from namauser;
c.
Struktur
penggunaan REVOKE untuk salah satu hak akses, misalnya SELECT :
Grant
Select on table namatabel from namauser;
d.
Struktur
penggunaan REVOKE untuk salah satu hak akses, misalnya SELECT :
Revoke Select
on table namatabel from namauser;
Berikut
contohnya :
* Jika sudah ada pesan GRANT dan REVOKE, berarti penutupan dan
pengaktifan hak akses yang kita lakukan sudah berhasil.
* Buka SQL shell baru, kemudian masuk dengan user kita dan lakukan
pengecekan dengan mengetikkan, SELECT * from namatabel;
* Jika kita lakukan GRANT maka kita bisa melihat struktur tabelny, sedangkan jika kita melakukan revoke selanjutnya aka nada pesan “permission denied for…..” menandakan bahwa hak akses database telah ditutup.
* Begitu pula jika kita melakukan GRANT and REVOKE pada salah satu hak akses misalnya (SELECT, UPDATE, DELETE).
10. Membuat table baru dengan nama Gaji, yang merupakan turunan dari table pertama, dengan fieldnya (gaji kotor, pajak, gaji bersih), setelah itu tampilkan.
Query dasar :
CREATE TEMPORARY TABLE namatabel (gaji_kotor integer, pajak integer, gaji_bersih integer) inherits (namatabelinduk);
Berikut contohnya :
* Jika kita lakukan GRANT maka kita bisa melihat struktur tabelny, sedangkan jika kita melakukan revoke selanjutnya aka nada pesan “permission denied for…..” menandakan bahwa hak akses database telah ditutup.
* Begitu pula jika kita melakukan GRANT and REVOKE pada salah satu hak akses misalnya (SELECT, UPDATE, DELETE).
10. Membuat table baru dengan nama Gaji, yang merupakan turunan dari table pertama, dengan fieldnya (gaji kotor, pajak, gaji bersih), setelah itu tampilkan.
Query dasar :
CREATE TEMPORARY TABLE namatabel (gaji_kotor integer, pajak integer, gaji_bersih integer) inherits (namatabelinduk);
Berikut contohnya :
|
C.
Perbedaan mysql dengan psql
Dalam pembuatan dan managemen table,
antara MySQL dengan psql mempunyai beberapa perbedaan. Diantaranya adalah :
1.
Pengecekan
table. Pada mysql kita mengecek table dengan query “show tables” sedangkan pada
psql kita menggunakan “\z”.
2.
Pengecekan
struktur table. Pada mysql kita menggunakan query “desc namatabel” sedangkan
pada psql kita menggunakan query “\d namatabel”.
3.
Mengubah
nama kolom.
Query
pada mysql :
ALTER
TABLE namatabel CHANGE namakolomawal namakolombaru type AFTER
namakolomsebelumnya;
Query
pada psql :
ALTER
TABLE namatabel rename to namatabelbaru;
4.
Mengubah
type data
Query
pada mysql :
ALTER TABLE namatabel Modify namakolom type;
Query
pada psql:
ALTER
TABLE namatabel ALTER COLUMN namakolom Type namatypepengganti;
5.
Dalam
psql bisa melakukan Inheritence sedangkan pada mysql tidak bisa.
D.
Kesimpulan, kritik, dan saran
Dari data yang
sudah ada pada laporan ini dan dari referensi yag lain, dapat di Tarik kesimpulan
bahwa sebuah tabel
terdiri dari baris (row) dan kolom (column), dimana jumlah dan nama kolom
harus didefinisikan terlabih dahulu di awal. Sedangkan baris merupakan
sebuah variable 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. Database mysql dengan databse psql mempunyai beberapa perbedaan
dalam pembuatan dan menajemen databasenya, seperti pada pengecekan table,
pengecekan struktur table, pengubahan type, pengubahan nama kolom dan
penggunaan Inheritence (turunan).
Saran dari saya
bagi pembaca untuk selalu menggunakan etika dalam copy paste file, agar
nantinya ilmu yang kita pelajari bisa bermanfaat bagi kita sema amiin …J
E.
Daftar pustaka
Nugroho, Bunafit, Administrasi Database MySQL pada server Linux dan
Windows, Penerbit Graha Ilmu, 2005.
Modul Praktikum Desain Basis Data 2014.
Tugas Rumah
Membuat database
dan tabel sistem
pada pertemuan 1
menggunakan query dan
dilengkapi dengan tampilan strukturnya.
|