Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Solve question 1 using standard SQL. Solve question 2 using standard SQL. Please

ID: 3808913 • Letter: S

Question

Solve question 1 using standard SQL. Solve question 2 using standard SQL. Please write clearly and explain your solution where needed.

1. Suppose you are given a relation emp(empid, dept, salary) and wish to maintain a materialized view deptsalary(dept, totalsalary) which stores the total salary for all employees of each department. Suppose the system does not support materialized views but supports triggers. Write an SQL or Oracle trigger on insert on emp to keep the relation deptsalary up to date. Do not worry about deletes or updates. You can assume that there is already a tuple for each department in deptsalary so you do not need to worry about new deparments

2. Consider the database given:

salaried worker (name, office, phone, salary)
hourly worker (name, hourly wage)
address (name, street, city)

. Create an SQL assertion that ensures that every name that appears in the relation address appears in either salaried_worker or hourly_worker, but not necessarily in both.

Explanation / Answer

Answer 1

create view deptview as select dept, sum(salary) as totalsalary from emp group by emp;

Answer 2


create assertion asrt_name check(select * from address where name not exists (select name from hourly_worker intersect select name from salaried_worker)) not deferrable;

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote