Anda di halaman 1dari 5

LATIHAN 2 / DCL

1. Pembuatan USER
Untuk membuat sebuah user/schema baru , statement yang harus digunakan adalah :
CREATE USER user EDINTIFIED BY password;

Schema yang berhak untuk bisa membuat user adalah SYS atau SYSTEM atau schema yang sudah
diberi privilage untuk CREATE USER. untuk membuat user baru caranya login dulu di editor
SQL*Plus dengan melakukan perintah /as sysdba seperti terlihat pada gambar berikut

atau jika sudah masuk pada SQL*Plus .. tinggal masukan statement berikut ,
SQL> connect / as sysdba

jika meminta password isikan password sesuai dengan password yang diisi pada awal penginstalan
.. password yang saya gunakan adalah ORACLE.
untuk mengetahui nama nama user yang telah terkoneksi gunakan perintah berikut :
SQL> SHOW USER;

setelah masuk ke dalam system kemudian buatlah sebuah skema baru dengan perintah
SQL> create user hrd

identified by oracle
default tablespace users
quota 10M on users;

-- hrd adalah username


-- oracle adalah sebuah password

untuk mengubah password dari suatu user, maka gunakan perintah ALTER USER username
IDENTIFIED by new_password; contoh password HRD yang semula oracle diubah
menjadi orcl
SQL> ALTER USER hrd IDENTIFIED BY orcl;

untuk menampilkan seluruh user yang terdapat di dalam database , gunakan perintah berikut
SQL> select * from all_users;

untuk menghapus user maka gunakan perintah DROP USER nama_user , misalkan kita akan
menghapus user HRD, maka tinggal lakukan perintah :
SQL> DROP USER hrd;

Untuk mengubah password maupun menghapus user dilakukan oleh user SYS atau SYSTEM, tapi
jika user sudah mempunyai objek, akan dihapus maka harus ditambahkan perintah CASCADE .
Misalkan user HRD sudah memiliki Objek / table / View maka maka tambahkan perintah
CASCADE, perintah nya menjadi :
SQL> DROP USER hrd CASCADE;

2. Privileges
Privileges sama dengan Hak akses..di dalam Database Oracle, DBA bisa memberikan system
privileges kepada user lain. Privileges dibagi 2 jenis yaitu system privileges dan object privileges.
System Privileges adalah hak akses terhadap database. sedangkan Object Privileges adalah hak
untuk memanipulasi isi dari record database.
2.1. USER SYSTEM PRIVILEGES
user system privileges yang bisa diberikan DBA ke suatu user diantaranya sebagai berikut :

CREATE SESSION : privileges agar user dapat berhubungan / login ke database


CREATE TABLE : privileges agar user dapat membuat tabel dalam skema user
CREATE SEQUENCE : privileges agar user dapat membuat sequence dalam skema
user
CREATE VIEW : privileges agar user dapat membuat view dalam skema user
CREATE PROCEDURE : privilgese agar user dapat membuat stored procedure dalam
skema user

Untuk mengetahui Semua Jenis Privilege yang ada, gunakan perintah berikut :
SQL> SELECT distinct privilege FROM dba_sys_privs;

langsung aja ke contoh penggunaannya ... misalkan DBA akan memberikan system privileges ke
user hrd dengan system privileges antara lain untuk bisa berhubungan dengan database / login ke
database , lalu user hrd bisa melakukan pembuatan table dan pembuatan index....
lakukan perintah berikut :
SQL> grant create session, create table, create indextype to hrd;

kemudian kita akan memberikan hak akses kepada user hrd agar bisa membuat table employees,
departments , dan locations yang dimiliki oleh user HR, dengan melakukan perintah berikut :
SQL> GRANT select
on hr.employees
to hrd;

perintah diatas adalah memberikan hak akses untuk pembuatan table dengan nama empoloyees
yang dimiliki oleh user HR.
2.2. User Object Privileges
Objek privilege dapat diberikan ke user atau role. setelah user diberi system privilege , user
tersebut hanya bisa melakukan Data Definition Language, namun belum bisa melakukan Retrieval
maupun Data Manipulation Language (INSERT, UPDATE, DELETE) ke suatu tabel. agar user
bisa melakukan DML, maka berilah object privileges.

ALTER : privilege untuk mengubah struktur tabel atau ijin


DELETE : privilege untuk menghapus data
EXECUTE : privilege untuk mengeksekusi stored procedure, function, package
INDEX : privilege untuk membuat index berdasarkan kolom-kolom yang ada di tabel
INSERT : privilege untuk melakukan INSERT
REFERENCES : privilege untuk membuat foreign key suatu kolom di tabel
SELECT : privilege untuk melihat data
UPDATE : privilege untuk melakukan perubahan data

contoh penggunaan, misalkan SYSTEM akan memberikan Hak Akses terhadap User HRD, agar
bisa melakukan manipulasi terhadap tabel employees.. gunakan perintah berikut :
SQL> GRANT SELECT,INSERT,UPDATE,DELETE
ON hr.employees
TO hrd;

3. Login Sebagai User


Untuk melakukan login sebagai skema yang telah dibuat sebelumnya , lakukan logout terlebih
dulu dari user sys atau system,. dengan statement berikut ..
SQL> disconnect;

setelah itu kita login dengan user hrd , gunakan perintah berikut :
SQL> connect hrd;

jika meminta password , isikan dengan oracle (sesuikan dengan password pada saat pembuatan
user baru).. setelah itu kita akan membuat beberapa tabel baru dengan mengambil dari tabel yang
dimiliki oleh Skema HR
berikut perintahnya :
SQL> create table employees
as select * from hr.employees;

perintah diatas adalah bagaimana membuat tabel dgn nama employees yg di ambil dari tabel
employees milik HR, lakukan perintah yang sama untuk melakukan pembuatan tabel
DEPARTMENT , dan LOCATIONS. dengan mengganti nama tabel employeesnya.
kemudian setelah itu tampilkan struktur tabel yang dimiliki oleh table tertentu misalnya tabel
employees, gunakan perintah berikut :
SQL> DESC employees;

atau gunakan perintah berikut :


SQL> DESCRIBE employees;

untuk melihat keseluruhan isi record atau data yang dimiliki oleh suatu tabel gunakan perintah
berikut :
SQL> select * from employees;

untuk menampilkan nama tabel yang dimiliki oleh suatu user bisa menggunakan perintah :
SQL> select table_name from user_tables;

jika ingin menghapus sebuah tabel gunakan perintah berikut : contoh dibawah ini adalah untuk
menghapus tabel locations
SQL> drop table locations;

Anda mungkin juga menyukai