Social Icons

Pages

Selasa, 22 Oktober 2013

/--------- Latihan Worksheet 1 Postgresql ---------/


1. Buat Database & Tabel

mysql> create database dbkaryawan;

mysql> use dbkaryawan;

mysql> create table departemen (
    -> id integer auto_increment primary key,
    -> kode varchar(10),
    -> nama varchar(45),
    -> alamat varchar(45),
    -> budget double,
    -> nipmanager varchar(10)
    -> );

mysql> create table pegawai (
    -> nip varchar(10) primary key,
    -> nama varchar(45),
    -> tmp_lahir varchar(45),
    -> tgl_lahir date,
    -> cv text,
    -> anak integer,
    -> gaji_pokok double,
    -> tunjangan double,
    -> departemen_id int,
    -> foreign key (departemen_id) references departemen(id)
    -> );


2. Untuk simulasi testing akses data, isi record departemen dengan 5 record dan     pegawai 10 record

mysql> insert into departemen values (default, 'FA', 'Finance Accounting', 'Jl. Margonda Raya No. 522', 100000000, '99901123');

mysql> insert into pegawai values ('88210291', 'Achmad Ilham', 'Jakarta', '1985-09-02', 'Software Engineer', 1, 2000000, 300000, 1);


3. Database karyawan dan isinya hanya dapat diakses oleh user satpamdb dari server database saja 

mysql> grant all privileges on dbkaryawan.* to satpamdb@localhost identified by 'satpamdb';

mysql> flush privileges;


4. Database karyawan dan isinya dapat diakses melalui jaringan dari komputer managerhrd yang berada diruang manager HRD

mysql> grant all privileges on dbkaryawan.* to managerhrd@192.168.1.8 identified by 'managerhrd';

mysql> flush privileges;


5. Terdapat beberapa staff HRD yang dapat mengakses database dari komputer masing-masing melalui jaringan komputer, dengan rincian tugas:

- staff1 yang bertugas memaintain data pegawai dan tidak bisa mengakses data departemen :

    mysql> grant all privileges on dbkaryawan.pegawai to staff1@192.168.1.2 identified by 'staff1';

- staff2 yang bertugas memaintain data departemen dan tidak bisa mengakses data pegawai :
    
    mysql> grant all privileges on dbkaryawan.departemen to staff2@192.168.1.3 identified by 'staff2';

- staff3 hanya dapat melihat isi data pegawai : nip,nama,tgl_lahir,tmp_lahir dan data departemen : nama,alamat,nipmanager

    mysql> grant select(nip,nama,tgl_lahir,tmp_lahir) on dbkaryawan.pegawai to staff3@192.168.1.4 identified by 'staff3';

    mysql> grant select(nama,alamat,nipmanager) on dbkaryawan.departemen to staff3@192.168.1.4 identified by 'staff3';

- staff4  mendapat tugas untuk menambah data, mengubah data, melihat seluruh data pegawai dan tidak bisa menghapus data pegawai

    mysql> grant insert,update,select on dbkaryawan.pegawai to staff4@192.168.1.5 identified by 'staff4';

Tidak ada komentar:

Posting Komentar