Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

Q1)

Table name Proposed primary key Notes


Students SID Every student will have only
one ID, (I assumed that
student will not change his
major)
Classes ClassCode Every Class will have only
one code (I assumed that no
other department could
provide the same class)
Grades ClassCode, StudentId, semester Student might take the same
class twice, or more.
Teaching ClassCode, Semester The Class will be provided
once in the semester, but it
will provided many times in
many semesters.
I also assumed that the classes
in the same semester will be
provided by only one prof.
ClassCode,semester,ProfID
might be a candidate key.

Q2)
Table name Proposed Foreign key Notes
Students -
Classes -
Grades 1.ClassCode 1.ClassCode is a primary key
2.StudentID in CLASSES,
3.ClassCode, and Semester 2.StudentID is primary key in
STUDENTS (SID)
3.ClassCode, and Semester is
a primary key in TEACHING.
Teaching ClassCode ClassCode is a primary key in
CLASSES

Q3)
1. π SID, Name, address, SemesterIn(σ majorIn='Computer Science' ^ semesterIn='Fall 2006' (Students)).
2. π SID, Name, address,majorIn, SemesterIn(σ ClassCode='12345' ^ semester='Fall 2009' ^ SID=StudID (Students x Grades )).
3. π SID, Name, address,majorIn, SemesterIn(σ ClassCode='12350' v ClassCode='12351' ^ semester='Fall 2009' ^ SID=StudID (Students x
Grades )).
4. π ClassCode , Grade(σ StudID='00001000' (Grades )).
5. π ClassCode (σ SID=StudID ^ Name='Joe Murphy' ^ Grade=0 v Grade=1 (Students x Grades )).
6. π ClassCode,Grade ((π ClassCode,Semester(σ SID=StudID ^ Name='joe Murphy' (Students x Grades )) - (π
ClassCode,Semester(Teaching)))⋈ grades).

7. π SID, Name, address,majorIn, SemesterIn(σ majorIn='Computer Science' ^ SID=StudID ^ Grade<>-1 (Students x Grades )) - π
SID, Name, address,majorIn, SemesterIn(σ majorIn='Computer Science' ^ SID=StudID ^ Grade<4 (Students x Grades )).
Q4)
1. π SID, Name, address, SemesterIn(σ majorIn='Computer Science' ^ semesterIn<>'Fall 2006' ^ SID=StudID ^ avg(Grade)>=3.5 (Students x
StudentID ϑ avg(Grade)(σ Grade<>-1 (Grades))).
2. π ClassCode (σ Grade>3.75 (Classcode ϑ avg(Grade)(σ classes.classcode=Grades.classcode ^ Department='computer Science' ^ Grades<>-1
(Classes x Grades)))).
3. ClassCode ϑ Max (count(StudID)) (ClassCode ϑ count(StudID)(σ Semester='Fall 2009' (Grades)))
4. π SID, Name, address, SemesterIn(σ Majorin='Computer Science'(Students x (σ avg(Grade)=4 (StudIDϑavg(Grade)(σ Grade<>-1
(Grades))))).
5. ClassCode ϑ avg(Grade)(σ Semester='Spring 2009' ^ Classes.Classcode=Grades.classcode ^ department='Computer Science' (Classes x
Grades)).

You might also like