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

employee ( employee name , street , city ) works ( employee name , company name

ID: 3794038 • Letter: E

Question

employee (employee name, street, city)
works (employee name, company name, salary)

company (company name, city)

manages (employee name, manager name)

Using Oracle. Give an SQL schema definition for the employee database of Figure above. Choose an appropriate domain for each attribute and an appropriate pri- mary key for each relation schema. Include foreign key constraints where needed.

Populate the tables you created for the previous question with data. Be careful about the order you populate the tables with data.

Explanation / Answer

create table employee (
employee_name varchar2(100) not null,
street varchar(100),
city varchar2(100),
CONSTRAINT employee_pk primary key (employee_name)
);

create table company (
company_name varchar2(100) not null,
city varchar2(100),
CONSTRAINT company_pk primary key (company_name)
)

create table works (
employee_name varchar2(100),
company_name varchar2(100),
salary number(10),
CONSTRAINT fk_employee FOREIGN KEY (employee_name)
REFERENCES employee(employee_name),
CONSTRAINT fk_company FOREIGN KEY (company_name)
REFERENCES company(company_name)
);

create table manages (
employee_name varchar2(100),
manager_name varchar2(100),
CONSTRAINT fk_employee FOREIGN KEY (employee_name)
REFERENCES employee(employee_name)
);