a) Considering the relation in the UNIVERSITY DB, it seems that the critical information missing from the phone numbers are the area codes.
b) It seems that one may want to have the area code as part of the phone attributes. The case where this may differ might be the need to query on phone area codes.
c) The benefit of having the name field split into three is that more diverse queries can be run and not depend on the entire name. Fits the relational ideals.
d) It seems that a designer might determine whether or not to split attributed depending on the requirements of the DB.
e) The first design that comes to mind is to split the phone numbers into a separate table and link the employees to the phones table. I guess another design might be to store the numbers as a comma separated string the DB field.
a) SELECT * FROM STUDENT WHERE ‘Major’=’CS’;
b) SELECT Course_name FROM COURSE, SECTION WHERE Instructor = ‘King’ AND (Year = 07 OR Year = 08) AND COURSE.Course_number = SECTION.Course_number;