1.
Sebagai langkah awal buatlah table
beserta isinya dengan isi 5 rows.
Buka portal http://localhost:8080/apex/
atau http://127.0.0.1:8080/apex/ .
Login dengan username “sys”
dan password “sys”. Kita akan memulai membuat table dengan cara klik SQL >
SQL Commands > Enter Command
a.
Buat table dengan cara “create table undo2miel (NPM int primary key not null, Nama varchar(25)
not null, Tanggal_Lahir date not null);”
b.
Masukan record pada kelima rows dengan cara “insert into undo2miel values
('14111263','Malik','18 May 1990');” dan seterusnya
c.
Tampilkan table dengan cara “select*from undo2miel;”
Dan untuk menghitung
umur dari nama-nama diatas berdasarkan tanggal lahir maka dengan cara “select nama, tanggal_lahir,
trunc(months_between(sysdate,tanggal_lahir)/12) as Umur from undo2miel;”
Yaitu untuk menampilkan
kolom nama dan tanggal lahir kemudian rumus menghitung umur “trunc(months_between(sysdate,tanggal_lahir)/12)” dengan hasil hitung akan menampilkan
kolom baru yaitu Umur dari tabel undo2miel.
Rumus diatas
menjelaskan hitung jarak bulan antara sysdate (tanggal system database saat
ini) dikurangi dengan tanggal lahir yang akan menghasilkan banyaknya bulan dan
membaginya dengan 12 (untuk menjadikan tahun) serta menghilangkan hasil koma
pada statement trunc.
2. Selanjutnya
kita akan membuat akun pada system database dengan cara “create user mal1k identified by undo;”
Membuat akun user mal1k
dengan password undo, untuk mengkoneksikan user maka buat query grant “grant connect to mal1k;” dan untuk
memanipulasi user buat grant resource “grant
resource to mal1k”. Logout (keluar dari system database). Masuk kembali
dengan user baru yaitu mal1k kemudian buat kembali tabel lain dengan cara
seperti diatas.
Kemudian buat kembali
akun kedua dengan user mal2k dan
password undo2 dengan cara logout
kembali dan login system
Logout kembali dan
masuk ke akun mal1k
Untuk dapat menampilkan
dan mengubah data pada tabel malikq makan gunakan query “grant select, update on malikq to
mal2k ;”
Logout dari mal1k dan
login ke mal2k, untuk menampilkan tabel malikq maka query adalah “select*from (user_1).(nama_tabel);”
Selain dapat
mengizinkan untuk select dan update data kita juga dapat menghilangkan hak
(privilege) tersebut dengan cara “revoke select on (nama_tabel) from (user_2);
query tersebut dilakukan pada
akun user mal1k, berfungsi untuk mencabut kembali izin query select pada tabel malikq
pada user mal2k.
Login kembali ke mal2k
dan tampilkan tabel seperti sebelumnya maka akan menampilkan insufficient
privileges karena hak sudah kita revoke sebelumya.