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

CREATE TABLE Drinkers ( name VARCHAR(20) PRIMARY KEY, addr VARCHAR(200) DEFAULT

ID: 3566020 • Letter: C

Question

CREATE TABLE Drinkers ( name VARCHAR(20) PRIMARY KEY, addr VARCHAR(200) DEFAULT ?123 Sesame St.?, phone VARCHAR(16) NOT NULL salary REAL, position VARCHAR(20) 1-add constraint to enforce 100.000> salary >1,000. 2- add constraint to enforce salary> 30,000 if position is ?Manager? 3- Create a trigger, named SalaryTrig. to record drinker name. his/her new salary and old salary (in another table. named HighManagers which you need to create first) for a ?Manager? drinker when his/her salary is changed to be higher than or equal to 50,000 if his/her old salary is less than 50.000. 4- Write insert-statements to add drinkers to add drinkers? information below Then, update the salary for all managers to be 70.000. Show the results of your HighManagers table.

Explanation / Answer

Oracle

create table drinkers
(name varchar(20) primary key,
addr varchar(200) default '123 Sesame St.',
phone varchar(16) not null,
salary real,
position varchar(20));


ALTER TABLE drinkers ADD (CONSTRAINT salary_check CHECK (salary >= 1000 AND salary <= 100000));

ALTER TABLE drinkers ADD (CONSTRAINT mgr_salary_check CHECK (position IS NULL OR (UPPER(position) = 'MANAGER' AND salary > 30000)));


create table highManager
(name varchar(20) primary key,
addr varchar(200) default '123 Sesame St.',
phone varchar(16) not null,
salary real,
position varchar(20));

CREATE OR REPLACE TRIGGER SalaryTrig
BEFORE INSERT ON drinkers FOR EACH ROW

DECLARE
   v_username varchar2(10);

BEGIN
   IF (UPPER(:old.position) = 'MANAGER')
   THEN
        dbms_output.put_line(:old.position||' '||:old.name);
    IF ((:old.salary < 50000) AND (:new.salary >= 50000))
    THEN
          -- Insert record into audit table
           INSERT INTO highManager
        (name, addr, phone, salary, position) VALUES
        (:new.name, :new.addr, :new.phone, :new.salary, :new.position);
    END IF;
   END IF;
   
END;
/

INSERT INTO drinkers (name, addr, phone, salary, position) VALUES ('larry', 'newyork', 12345, 10000, NULL);
INSERT INTO drinkers (name, addr, phone, salary, position) VALUES ('bossmeg', 'newyork', 22222, 60000, 'manager');
INSERT INTO drinkers (name, addr, phone, salary, position) VALUES ('chefjosh', 'newyork', 33333, 35000, 'manager');
INSERT INTO drinkers (name, addr, phone, salary, position) VALUES ('stewart', 'newyork', 44444, 20000, NULL);


commit;

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