CS122A: Introduction to Data Management Spring 2018
Quiz 3: E-R to Relational Translation _______________________________
Initial Score (out of 10) Taken by: _______________________________________________ _______________________________ Name Student ID ● We will discuss the answers right after the quiz. ● You are to self-grade and record your actual initial score (above) as we do so. ● You should also record the correct answers for any problems that you miss. ● A full 10 points for taking this quiz will be included as part of your quiz grade.
Translate the following E-R schema into an appropriate set of relational tables. When you finish, circle anything that your translated relational schema design fails to capture.
CREATE TABLE Diver(
did varchar(7), first_name varchar(20), last_name varchar(20), PRIMARY KEY(did));
CREATE TABLE Instructor(
did varchar(7), salary DECIMAL(5,2), PRIMARY KEY(did), FOREIGN KEY(did) REFERENCES Diver(did) ON DELETE CASCADE); CS122A: Introduction to Data Management Spring 2018
CREATE TABLE Student(
did varchar(7), age INTEGER, PRIMARY KEY(did), FOREIGN KEY(did) REFERENCES Diver(did) ON DELETE CASCADE);
CREATE TABLE Shop(
sid varchar(7), name varchar(30), PRIMARY KEY(sid));
CREATE TABLE Equipment(
eid varchar(5), name varchar(20), sid char(7) NOT NULL, PRIMARY KEY(eid), FOREIGN KEY(sid) REFERENCES Shop(sid) ON DELETE CASCADE);
CREATE TABLE Colors(
eid varchar(5), color varchar(20), PRIMARY KEY(eid,color), FOREIGN KEY(eid) REFERENCES Equipment(eid) ON DELETE CASCADE);
CREATE TABLE Purchases(
eid varchar(5), did varchar(7), price DECIMAL(5,2), PRIMARY KEY(eid,did), FOREIGN KEY(eid) REFERENCES Equipment(eid) ON DELETE CASCADE, FOREIGN KEY(did) REFERENCES Diver(did) ON DELETE CASCADE);
CREATE TABLE Teaches(
idid varchar(7), sdid varchar(7), PRIMARY KEY(idid,sdid), FOREIGN KEY(idid) REFERENCES Instructor(did) ON DELETE CASCADE, FOREIGN KEY(sdid) REFERENCES Student(did) ON DELETE CASCADE);