Saturday, 17 September 2016

Tugas Study case database 2


Assalamu'alaikum..
Pertemuan kali ini saya mendapat Study Case dari guru saya dengan ketentuan sebagai berikut :

* Database yang digunakan masih dari Study Case yang pertama, buat dua buah table baru,
  table 1 = guru (kode_guru, nama_guru)
  table 2 = mata_pelajaran (kode_mapel, mapel, jumlah_jam, kode_guru)

* Isi datanya minimal 5 buah record dari masing2 table
* Menggabungkan 2 table menjadi 1 untuk melihat record
* Menambahkan user baru dengan nama kalian, kasih password, beri akses user baru tersebut { Hanya bisa melihat (select) dan Memasukan data (insert) }
* Cabut Hak akses memasukkan data (insert) dari user tersebut pada kedua table tersebut

Pada Study Case sebelumnya kita telah membuat database, maka kita masih tetap menggunakan database tersebut.
mysql> use siswa;

Kita buat Table 1 terlebih dahulu dengan nama guru, fieldnya kode_guru, dan nama_guru.
mysql> create table guru (kode_guru varchar(5), nama_guru varchar(10));

Kemudian buat Table 2 dengan nama mata_pelajaran, fieldnya kode_mapel, mapel, jumlah_jam, dan kode_guru.
mysql> create table mata_pelajaran (
    -> kode_mapel varchar(5),
    -> mapel varchar(8),
    -> jumlah_jam varchar(8),
    -> kode_guru varchar(5) );

Setelah membuat tablenya kita masukkan data atau recordnya kedalam table guru sebanyak 5 kali (disini saya memberikan satu contoh)
mysql> insert into guru (kode_guru, nama_guru) values ("C0001", "Nofrizal");

Kemudian kita masukkan record kedalam table mata_pelajaran sebanyak 5 kali juga, dengan ketentuan kode_guru harus sama dengan table guru (disini saya memberikan satu contoh)
mysql> insert into mata_pelajaran
    -> (kode_mapel, mapel, jumlah_jam, kode_guru)
    -> values
    -> ("B0001","IPS","2 Jam","C0001");

Jika sudah, kita cek apakah table yang kita buat telah selesai

mysql> select * from guru;
mysql> select * from mata_pelajaran;




Setelah itu kita akan mencoba menggabungkan 2 table agar dpat dilihat keseluruhan dengan perintah berikut
mysql> select * from guru cross join mata_pelajaran;


Didalam tampilan tersebut kita dapat melihat semua record.

Jika seperti itu kita akan bingung, Nah maka dari itu kita filter kembali agar dapat berurutan, tidak acak seperti sebelumnya
mysql> select * from guru cross join mata_pelajaran where guru.kode_guru=mata_pelajaran.kode_guru;




Tetapi tampilan diatas belum benar, karena kode_guru masih muncul di 2 field (1 berasal dari table guru, dan 1 lagi berasal dari table mata_pelajaran)
mysql> select guru.kode_guru,guru.nama_guru,
    -> mata_pelajaran.kode_mapel,mapel,jumlah_jam
    -> from guru cross join mata_pelajaran
    -> where guru.kode_guru=mata_pelajaran.kode_guru;



Selanjutnya kita tambahkan User "ilay" dengan password "sadimel"
mysql> create user 'ilay'@'localhost'
    -> identified by 'sadimel';

Setelah menambahkan User, kita berikan hak akses kepada User agar dapat Memasukkan data (insert) dan melihat record (select)
mysql> grant insert,select on siswa.* to 'ilay'@'localhost';

Ket :
siswa.* = dapat mengakses seluruh table didalam database siswa
localhost = user digunakan hanya di localhost

Cek Hak akses User fajar

Selanjutnya kita lanjut ke ketentuan yang terakhir, yaitu : mencabut hak akses insert kepada user fajar
mysql> revoke insert on siswa.* from 'ilay'@'localhost';

Cek kembali Hak akses User ilay


OK!!!..
Study Case 2 telah selesai
Terima kasih Sampai jumpa dipostingan selanjutnya
Wassalamu'alaikum.. :)


Tugas Study case database 1



Assalamu'alaikum..
Kali ini saya akan membahas tentang beberapa query MySQL, contoh disini saya menggunakan Study Case dengan ketentuan berikut :
 - Buat Database dan Table dengan nama "siswa"
 - Fieldnya : No,NIS,Nama,Kelas,TTL,JK(Jenis Kelamin),Alamat,Agama
 - Isi fieldnya tersebut dengan 10 record
 - Tampilkan semua isi data di table siswa
 - Tampilkan semua isi data di table siswa yg berjenis kelamin perempuan
 - Tampilkan semua isi data di table siswa yg beragama kristen
 - Tampilkan hanya field NIS,Nama,Alamat


Pertama kita masuk ke Database MySQL dengan command berikut
mysql -u root -p
*Masukkan Password MySQL


Setelah masuk ke MySQL kita buat database dengan nama "siswa".
mysql> create database siswa;

Masuk ke database siswa dengan perintah berikut
mysql> use siswa;
Database changed

Kemudian kita buat Table dengan nama "siswa", dengan Field No, NIS, Nama, Kelas, TTL, JK, Alamat, dan Agama. (Perintah berikut digunakan setiap baris dengan menekan ENTER).
mysql> create table siswa (
    -> No int(2),
    -> NIS int(6),
    -> Nama varchar(15),
    -> Kelas varchar(10),
    -> TTL varchar(20),
    -> JK varchar(10),
    -> Alamat varchar(30),
    -> Agama varchar(10) );



Keterangan :
int = Integer (Angka),
varchar = Variable Character (Huruf, Angka, maupun Simbol),
Angka yang didalam kurung itu adalah jumlah maksimum Huruf, Angka, maupun Simbol

Setelah kita membuat Fieldnya, kita masukkan setiap record ke dalam field-fieldnya dengan perintah berikut :
mysql> insert into siswa (No,NIS,Nama,Kelas,TTL,JK,ALamat,Agama) values (1,1234,"Choirrulloh","XII TKJ","Bekasi, 10031998","Laki-Laki","Kp.nangka","Islam");

Setiap urutan Value harus disesuaikan dengan urutan Fieldnya.

Dalam Study Case ini harus dimasukkan sebanyak 10 record, kalian hanya tinggal mengubah setiap Valuenya, saya akan melanjutkan ke step berikutnya.

Jika sudah memasukkan seluruh record sekarang waktunya mengecek atau melihat semua Field telah tersusun secara benar atau tidak.
mysql> select * from siswa;



Dalam Study Case ini kita harus dapat memfilter result yang muncul hanya berjenis kelamin Perempuan
mysql> select * from siswa where JK='Perempuan';



Jika kita ingin memunculkan hanya yang beragama kristen dengan perintah berikut
mysql> select * from siswa where Agama='Kristen';


Bagaimana jika kita hanya ingin memunculkan Field NIS, Nama, dan Alamat saja ?..
Berikut perintahnya
mysql> select NIS,Nama,Alamat from siswa;




Sampai disini Study Case telah diselesaikan..
Terima Kasih, Wassalamu'alaikum