UTS Sistem Basis Data

Assalamu'alaikum...
pekan ini memang adalah pekan yang sibuk bagi saya karena sedang UTS, kebetulan hari Kamis pagi kemarin ada UTS Sistem Basis Data..sekedar untuk catatan saya sendiri dan ulasan materi untuk esok hari..saya coba posting soal UTS kemarin berikut jawaban saya dari soal tersebut..

Database Karyawan

Karawan
PK
NIK
Nama
NIK_Atasan
FK
FK
KodeJabatan
KodeDepartemen

Jabatan
PK
KodeJabatan
NamaJabatan
GajiJabatan









Departemen
PK
KodeDepartemen
NamaDepartemen



Soal :
  1. Buatlah masing-masing tabel diatas.
  2. Input data ke masing-masing tabel minimal 5 record
  3. Tampilkan data karyawan yang namanya berakhiran huruf “n”
  4. Ubahlah data karyawan, pada setiap karyawan yang tidak mempunyai NIK Atasan. NIK Atasan diisi dengan nilai “1”.
  5. Hapus data karyawan yang Kode Departemennya “1” dan Kode Jabatannya selain “1”.
waktu pengerjaan : 30 Menit.

Jawaban
/*10110738, TARKIMAN, IF-16, KARYAWAN*/

/*Membuat Database*/
CREATE DATABASE DB_KARYAWAN;

/*Masuk ke database DB_KARYAWAN*/
USE DB_KARYAWAN;

/*1. Membuat Tabel Departemen*/
CREATE TABLE DEPARTEMEN
(
KodeDepartemen CHAR(3) PRIMARY KEY NOT NULL,
NamaDepartemen VARCHAR(30)
)
ENGINE=INNODB;

/*1. Membuat Tabel Jabatan*/
CREATE TABLE JABATAN
(
KodeJabatan CHAR(3) PRIMARY KEY NOT NULL,
NamaJabatan VARCHAR(30),
GajiJabatan INT
)
ENGINE=INNODB;

/*1. Membuat Tabel Karyawan*/
CREATE TABLE KARYAWAN
(
NIK CHAR(3) PRIMARY KEY NOT NULL,
NAMA VARCHAR(30),
NIK_Atasan CHAR(3),
KodeJabatan CHAR(3) NOT NULL,
KodeDepartemen CHAR(3) NOT NULL,
FOREIGN KEY(Kodejabatan) REFERENCES JABATAN(KodeJabatan),
FOREIGN KEY(KodeDepartemen) REFERENCES DEPARTEMEN(KodeDepartemen)
)
ENGINE=INNODB;


/*2. Insert Data ke DEPARTEMEN*/
INSERT INTO DEPARTEMEN VALUES('1','Keuangan');
INSERT INTO DEPARTEMEN VALUES('2','Marketing');
INSERT INTO DEPARTEMEN VALUES('3','HRD');
INSERT INTO DEPARTEMEN VALUES('4','Production Engineering');
INSERT INTO DEPARTEMEN VALUES('5','Quality Control');

/*2. Insert Data ke JABATAN*/
INSERT INTO JABATAN VALUES('1','Direktur',7500000);
INSERT INTO JABATAN VALUES('2','Wakil Direktur',500000);
INSERT INTO JABATAN VALUES('3','Manager',4500000);
INSERT INTO JABATAN VALUES('4','Asisten Manager',4000000);
INSERT INTO JABATAN VALUES('5','Sekertaris',3000000);

/*2. Insert Data ke KARYAWAN*/
INSERT INTO KARYAWAN VALUES('1','Tarkiman','','2','1');
INSERT INTO KARYAWAN VALUES('2','Edi','3','2','2');
INSERT INTO KARYAWAN VALUES('3','Maman','','2','3');
INSERT INTO KARYAWAN VALUES('4','Chandra','','2','4');
INSERT INTO KARYAWAN VALUES('5','Dinda','2','5','2');

/*3. Menampilkan Data Karyawan yang namanya berakhiran N*/
SELECT * FROM KARYAWAN WHERE NAMA LIKE '%n';

/*4. Ubah data karyawan untuk setiap karyawan yang tidak punya NIK atasan, diisi 1*/
UPDATE KARYAWAN SET NIK_Atasan='1' WHERE NIK_Atasan='';

/*5. Hapus data karyawan yang Kode Departemennya 1 dan Kode Jabatannya selain 1*/
DELETE FROM KARYAWAN WHERE KodeDepartemen='1' AND KodeJabatan<>'1';




Catatan :
Syntax Query (Jawaban) diatas bisa langsung di Eksekusi di MySQL Console






Post a Comment

0 Comments