Consider the following:
D1 = fStudent1; Student2; Student3; Student4g
D2 = f20; 18; 34; 27g
D3 = fundergraduate; postgraduateg
Consider the following relational schema:
Student(stdNo, firstName, lastName, eMail)
Course(code, name, credits)
WhenOﬀered(course, semester, year, examiner)
Staﬀ(staﬀID, name, birth-date, department)
Transcript(student, course, semes, year, grade)
This is a schema for a database maintained by a small college to keep track of students, courses, etc. Students have their own unique student ID (which may only contain numbers) and can be contacted via their own unique college email address. There are no two courses having the same code or name. A course is oﬀered at most once per semester (where 1 semester 3), but can be oﬀered in several semesters or in diﬀerent years. A course oﬀer is examined by a specific member of staﬀ. The examiner can vary over diﬀerent semesters, and can examine more than one course in a given semester. A staﬀ belongs to one and only one department at the university. A student enrolled in a specific course oﬀer obtains a grade for that course. A student can take a same course multiple times (e.g., fail for a few time and finally pass it), but cannot take the course twice in a single semester of a given year. Students’ and staﬀ’s names are generally NOT unique.
The college typically uses the database to create a list of course names, when they are oﬀered, and the name of the examiner. It also emails reports for each student with their name, the names of courses they have taken and in which semester, the name of their examiner, and the grade they obtained.
In the above relations, we have the following correspondence between attributes (but not limited to): stdNo$student, examiner$ staﬀID and code$course.
For the following questions, do not use assumptions that are not sup-ported by the description given above. Use the Forum on the course web site to discuss the problem setting if you need clarification.
FK TableName(Attributes) References TableName(Attributes).
Note: Please do not use functional dependencies to answer Questions (a), (b) and (c). You need to identify keys based upon the description given above only.
Indicate which row(s) break the relational integrity rules, and why (there may be more than 1 reason per row).
Buy Online Assignment Help services for IT ASSIGNMENT with Punjab Assignment Help at email@example.com