CBDB4103 Intermediate Database JANUARY 2022
CBDB4103 Intermediate Database JANUARY 2022
_________________________________________________________________________
CBDB4103
INTERMEDIATE DATABASE
JANUARY 2022
6. This assignment accounts for 60% of the total marks for the course.
Tugasan ini menyumbang sebanyak 60% dari jumlah markah kursus.
ASSIGNMENT QUESTION
PURPOSE
The purpose of this assignment is to strengthen student’s understanding on the concepts of data
manipulation by using DBMS.
Tujuan tugasan ini adalah untuk mengukuhkan pemahaman pelajar mengenai konsep manipulasi
data dengan menggunakan DBMS.
TASK 1 (DOCUMENTATION)
The relational schema of a database below is about employees, their departments and the
projects they work on:
Based on the relational schema, you are required to produce the following:
1) Create a Database named Staff Information, or any suitable name.
2) Create all relevant tables as required. Choose appropriate data types for each attribute.
Indicate the primary key and foreign key in each table created.
3) Produce sample records for each table that observes the Referential Integrity Constraint.
Minimum of FIVE records per table are enough. The data inserted must satisfy the
following constraint:
there are at least 3 departments and each department have at least 2 employees
each employee only works in one department and can be assigned to more than
one project.
make sure you create the relationships between tables.
4) Write SQL query and its result based on the records added earlier for the following tasks:
(one query per question)
a) Get the names of employees from department “Information Technology” who are
working on the “Database” project.
b) Get the names of all projects worked on by the employee named “Atuff Hady”.
c) Get the projects name that have highest budget.
d) Get the names of department that have less than 4 employees in it.
e) Get the names and salaries of employees in the “Logistic” department who has a
higher salary than the maximum salary in the “Accounting” department.
f) Update the salary of the staffs in sales department so it would match the average
salary of the staffs in HR department.
g) Modify the WORKS table by adding in new column entry for duration required to
complete the project.
5) Create ONE Form to handle the data entry for assignment project to each employee. The
form must be able to enter and display data.
Skema hubungan pangkalan data di bawah ini adalah berkaitan pekerja, jabatan mereka dan projek
yang mereka ditugaskan:
Berdasarkan skima hubungan tersebut, anda dikehendaki untuk menghasilkan perkara berikut:
1) Bina Pangkalan Data yang bernama Maklumat Pekerja, atau apa-apa nama yang sesuai.
2) Bina semua jadual yang berkaitan seperti yang diperlukan. Pilih jenis data yang sesuai untuk
setiap atribut. Tunjukkan kunci utama dan kunci asing dalam setiap jadual yang dibina.
3) Hasilkan sampel rekod untuk setiap jadual yang mematuhi Kekangan Integriti Hubungan.
Minimum LIMA rekod bagi setiap jadual adalah memadai. Data yang dimasukkan mesti
memenuhi kekangan berikut:
terdapat sekurang-kurangnya 3 jabatan dan setiap jabatan mempunyai sekurang-
kurang 2 pekerja
setiap pekerja hanya bekerja di satu jabatan dan boleh ditugaskan kepada lebih
daripada satu projek.
pastikan anda menghasilkan hubungan antara jadual-jadual.
4) Tulis kueri SQL dan hasilnya berdasarkan rekod yang ditambahkan sebelum ini untuk
keperluan-keperluan berikut: (satu kueri untuk setiap soalan)
a) Dapatkan nama bagi pekerja dari jabatan “Teknologi Maklumat” yang ditugaskan pada
projek “Pangkalan Data”.
b) Dapatkan nama kesemua projek yang ditugaskan kepada pekerja bernama “Atuff Hady”.
c) Dapatkan projek yang mempunyai peruntukkan tertinggi.
d) Dapatkan nama jabatan yang mempunyai pekerja kurang dari 4.
e) Dapatkan nama dan gaji bagi pekerja di jabatan “Logistik” yang mendapat gaji lebih
tinggi daripada gaji tertinggi pekerja di jabatan “Akaun”.
f) Kemas kini gaji staff di jabatan jualan supaya ia sepadan dengan purata gaji staff di
jabatan HR.
g) Ubah jadual TUGAS dengan menambah kemasukan lajur baharu bagi tempoh yang
diperlukan untuk melengkapkan sesuatu projek.
5) Cipta SATU Borang untuk mengendalikan kemasukkan data bagi tugasan projek kepada
setiap pekerja. Borang ini mestilah dapat memasukan dan memaparkan data.
Note / Nota:
1. You are free to use any DBMS tool (using DDL SQL or GUI)
2. Or you can also use Oracle Application Express (Oracle APEX) at
https://apex.oracle.com/i/index.html. If you do not have an account with Oracle Application
Express, do register yourself first to get a free workspace.
3. For every table, form and SQL query (query and result table) created for the above questions,
capture the screen and paste it in a MS-Word, as a proof that you are using any DBMS or
Oracle APEX.
1. Anda bebas menggunakan mana-mana alatan DBMS (menggunakan DDL SQL atau GUI).
2. Atau anda boleh menggunakan Oracle Application Express (Oracle APEX) di
https://apex.oracle.com/i/index.html. Jika anda tidak mempunyai akaun dengan Oracle
Application Express, daftar diri anda dahulu untuk mendapatkan ruang kerja percuma.
3. Untuk setiap jadual, borang dan kueri SQL (kueri dan jadual hasil) yang dibina untuk soalan di
atas, cekup skrin dan letakkannya dalam MS-Word, sebagai membuktikan bahawa anda
menggunakan sebarang DBMS atau Oracle APEX.
[50 marks/markah]
TASK 2 (ONLINE CLASS PARTICIPATION)
Discuss the topic below in myINSPIRE forum, screenshot your discussion feedback and paste it into
your report together with DOCUMENTATION on TASK 1.
An integrity constraint is a mechanism used by any DBMS tool to prevent invalid data
entry into the table. Suggest all possible actions to be taken for preventing the violation of
the data integrity constraints.
Your e-tutor will create a folder in the assignment discussion. Please leave your discussion under
that folder. Do not create another discussion folder to avoid confusion.
Bincangkan topik di bawah dalam forum myINSPIRE, tangkap skrin maklum balas perbincangan anda
dan tampalkannya ke dalam laporan anda bersama DOKUMENTASI pada TUGAS 1.
Kekangan integriti ialah mekanisme yang digunakan oleh mana-mana alat DBMS
untuk menghalang kemasukan data tidak sah ke dalam jadual. Cadangkan semua
tindakan yang mungkin diambil untuk mencegah pelanggaran kekangan integriti
data.
E-tutor anda akan mencipta folder dalam perbincangan tugasan. Sila tinggalkan perbincangan anda
di bawah folder tersebut. Jangan cipta folder perbincangan lain untuk mengelakkan kekeliruan.
Do the following:
1. Select the best FIVE (5) postings from the forum discussion set up by your tutor.
2. Do screenshots of the postings and include them as images in your assignment.
3. The screenshots should be in image file (either in JPG or PNG format).
4. The screenshots should contain: Name, Title of the discussion, Day, Date and Time.
ARAHAN BAGI TATACARA PENGHANTARAN SEBAGAI BUKTI AKTIVITI ONLINE CLASS
PARTICIPATION (10%)
[10 marks/markah]
[Total/Jumlah: 60 marks/markah]
MUKA SURAT TAMAT / END OF PAGE
ATTACHMENT
ASSIGNMENT RUBRICS
CBDB4103 INTERMEDIATE DATABASE / JANUARY 2022
2 2 Table creation: 1.5 Provided in depth Provided good Provided limited Provided vague No answer or 6
Creation of FOUR tables answer that clearly answer that mostly answer or answer answer or wrong answer
The tables created using SQL. met the details of the met the details of the that basically/ answer that was given.
The name of the tables and its criteria. criteria but it can be minimally met the poorly met the
fields follows the relational improved further. details of the details of the
schema given. criteria. criteria.
The data types for every field are
suitable.
Provide the SQL screenshot
Penciptaan jadual: Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan
Penciptaan EMPAT jadual yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
Jadual-jadual dicipta memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
menggunakan SQL. kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
Nama jadual-jadual dan butiran kriteria tetapi memenuhi butiran memenuhi
medannya mematuhi skima ianya boleh kriteria secara butiran kriteria
hubungan yang diberikan. dimantapkan lagi. asas/ minimal. secara lemah.
Jenis data yang digunakan untuk
setiap medan adalah bersesuaian
Berikan tangkapan skrin SQL
Write the SQL code (or using GUI) to Provided in depth Provided good Provided limited Provided vague No answer or
insert data into all tables: answer that clearly answer that mostly answer or answer answer or wrong answer
Insertion of at least FIVE records met the details of the met the details of the that basically/ answer that was given.
in each table. criteria. criteria but it can be minimally met the poorly met the
The referential integrity for each improved further. details of the details of the
data is correct. criteria. criteria.
Data entry follow the constraints
stated
Provide the screenshot of the
records
3 2 Tuliskan kod SQL (atau guna GUI) 1.5 Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan 6
untuk memasukkan data ke dalam yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
semua jadual: memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
Kemasukan sekurang-kurang LIMA kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
rekod ke dalam setiap jadual. butiran kriteria tetapi memenuhi butiran memenuhi
Integriti rujukan untuk setiap data ianya boleh kriteria secara butiran kriteria
adalah tepat. dimantapkan lagi. asas/ minimal. secara lemah.
Kemasukkan data mematuhi
kekangan yang dinyatakan
Berikan tangkapan skrin rekod-
rekod tersebut.
4 3 Query (a): 1.0 Provided in depth Provided good Provided limited Provided vague No answer or 4
The query must be able to display answer that clearly answer that mostly answer or answer answer or wrong answer
the names of employees from met the details of the met the details of the that basically/ answer that was given.
department “Information criteria. criteria but it can be minimally met the poorly met the
Technology” who are working on improved further. details of the details of the
the “Database” project. criteria. criteria.
Provide the SQL screenshot for
both SQL and result
Kueri (a): Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan
Kueri mesti dapat memaparkan yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
nama bagi pekerja dari jabatan memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
“Teknologi Maklumat” yang kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
ditugaskan pada projek butiran kriteria tetapi memenuhi butiran memenuhi
“Pangkalan Data”. ianya boleh kriteria secara butiran kriteria
Berikan tangkapan skrin SQL bagi dimantapkan lagi. asas/ minimal. secara lemah.
kedua-dua SQL dan hasil
Query (b): Provided in depth Provided good Provided limited Provided vague No answer or
The query must be able to display answer that clearly answer that mostly answer or answer answer or wrong answer
the names of all projects worked met the details of the met the details of the that basically/ answer that was given.
on by the employee named criteria. criteria but it can be minimally met the poorly met the
“Atuff Hady”. improved further. details of the details of the
Provide the SQL screenshot for criteria. criteria.
both SQL and result
4 3 1.0 4
Kueri (b): Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan
Kueri mesti dapat memaparkan yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
nama kesemua projek yang memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
ditugaskan kepada pekerja kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
bernama “Atuff Hady” butiran kriteria tetapi memenuhi butiran memenuhi
Berikan tangkapan skrin SQL bagi ianya boleh kriteria secara butiran kriteria
kedua-dua SQL dan hasil dimantapkan lagi. asas/ minimal. secara lemah.
4 3 Query (c): 1.0 Provided in depth Provided good Provided limited Provided vague No answer or 4
The query must be able to display answer that clearly answer that mostly answer or answer answer or wrong answer
the projects name that have met the details of the met the details of the that basically/ answer that was given.
highest budget. criteria. criteria but it can be minimally met the poorly met the
Provide the SQL screenshot for improved further. details of the details of the
both SQL and result criteria. criteria.
Kueri (c): Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan
Kueri mesti dapat memaparkan yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
projek yang mempunyai memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
peruntukkan tertinggi. kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
Berikan tangkapan skrin SQL bagi butiran kriteria tetapi memenuhi butiran memenuhi
kedua-dua SQL dan hasil ianya boleh kriteria secara butiran kriteria
dimantapkan lagi. asas/ minimal. secara lemah.
Query (d): Provided in depth Provided good Provided limited Provided vague No answer or
The query must be able to display answer that clearly answer that mostly answer or answer answer or wrong answer
the names of department that met the details of the met the details of the that basically/ answer that was given.
have less than 4 employees in it. criteria. criteria but it can be minimally met the poorly met the
Provide the SQL screenshot for improved further. details of the details of the
both SQL and result criteria. criteria.
4 3 Kueri (d): 1.0 Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan 4
Kueri mesti dapat memaparkan yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
nama jabatan yang mempunyai memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
pekerja kurang dari 4. kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
Berikan tangkapan skrin SQL bagi butiran kriteria tetapi memenuhi butiran memenuhi
kedua-dua SQL dan hasil ianya boleh kriteria secara butiran kriteria
dimantapkan lagi. asas/ minimal. secara lemah.
Query (e): Provided in depth Provided good Provided limited Provided vague No answer or
The query must be able to display answer that clearly answer that mostly answer or answer answer or wrong answer
the names and salaries of met the details of the met the details of the that basically/ answer that was given.
employees in the “Logistic” criteria. criteria but it can be minimally met the poorly met the
department who has a higher improved further. details of the details of the
salary than the maximum salary criteria. criteria.
in the “Accounting” department.
4 3 Provide the SQL screenshot for 1.0 4
both SQL and result
Kueri (e): Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan
Kueri mesti dapat memaparkan yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
nama dan gaji bagi pekerja di memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
jabatan “Logistik” yang mendapat kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
gaji lebih tinggi daripada gaji butiran kriteria tetapi memenuhi butiran memenuhi
tertinggi pekerja di jabatan ianya boleh kriteria secara butiran kriteria
“Akaun”. dimantapkan lagi. asas/ minimal. secara lemah.
Berikan tangkapan skrin SQL bagi
kedua-dua SQL dan hasil
Query (f): Provided in depth Provided good Provided limited Provided vague No answer or
The query must be able to update answer that clearly answer that mostly answer or answer answer or wrong answer
the salary of the staffs in sales met the details of the met the details of the that basically/ answer that was given.
department so it would match criteria. criteria but it can be minimally met the poorly met the
the average salary of the staffs in improved further. details of the details of the
HR department. criteria. criteria.
You are required to show before
and after update records.
Provide the SQL screenshot for
both SQL and result
4 3 1.0 4
Kueri (f): Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan
Kueri mesti dapat mengemaskini yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
gaji staff di jabatan jualan supaya memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
ia sepadan dengan purata gaji kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
staff di jabatan HR. butiran kriteria tetapi memenuhi butiran memenuhi
Anda dikehendaki menunjukkan ianya boleh kriteria secara butiran kriteria
rekod sebelum dan rekod selepas dimantapkan lagi. asas/ minimal. secara lemah.
kemas kini.
Berikan tangkapan skrin SQL bagi
kedua-dua SQL dan hasil
Query (g): Provided in depth Provided good Provided limited Provided vague No answer or
The query must be able to modify answer that clearly answer that mostly answer or answer answer or wrong answer
the WORKS table by adding in met the details of the met the details of the that basically/ answer that was given.
new column entry for duration criteria. criteria but it can be minimally met the poorly met the
required to complete the project. improved further. details of the details of the
Provide the SQL screenshot for criteria. criteria.
4 3 both SQL and result 1.0 4
Kueri (g): Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan
Kueri mesti dapat mengubah yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan
jadual TUGAS dengan menambah memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
kemasukan lajur baharu bagi kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
tempoh yang diperlukan untuk butiran kriteria tetapi memenuhi butiran memenuhi
melengkapkan sesuatu projek. ianya boleh kriteria secara butiran kriteria
Berikan tangkapan skrin SQL bagi dimantapkan lagi. asas/ minimal. secara lemah.
kedua-dua SQL dan hasil
Form creation: Provided in depth Provided good Provided limited Provided vague No answer or
Create ONE Form to handle the answer that clearly answer that mostly answer or answer answer or wrong answer
Data-Entry. met the details of the met the details of the that basically/ answer that was given.
Using suitable form element. criteria. criteria but it can be minimally met the poorly met the
The form can be used to enter improved further. details of the details of the
and display the data. criteria. criteria.
Provide the form screenshot
Penciptaan Borang: Memberikan jawapan Memberikan jawapan Memberikan Memberikan Tiada jawapan
5 3 Cipta SATU Borang untuk 1.5 yang terperinci yang yang baik yang jawapan yang jawapan yang atau jawapan 6
mengendalikan Kemasukan-Data. memenuhi butiran memenuhi terhad atau tidak jelas atau yang salah
Menggunakan bentuk borang kriteria secara jelas. kebanyakan daripada jawapan yang jawapan yang diberikan.
yang bersesuaian. butiran kriteria tetapi memenuhi butiran memenuhi
Borang boleh digunakan untuk ianya boleh kriteria secara butiran kriteria
memasukkan dan memaparkan dimantapkan lagi. asas/ minimal. secara lemah.
data.
Berikan tangkapan skrin borang
tersebut
Total 12.5 50
Kualiti hantaran Kelima-lima komen baik, Empat komen baik, Tiga komen baik, Tiada komen yang Tiada hantaran
sesuai, relevan, bermakna sesuai, relevan, sesuai, baik dan relevan diberi sebagai bukti
dan berhemah bermakna dan relevan,bermakna penyertaan dalam
berhemah dan berhemah atau perbincangan