1

Is the following relation in 1NF or unnormalised? According to me this is unnormalised as the attributes Room and Room_capcity are repeating groups which violates the properties of 1NF. The relation:

Teacher := <Course, Professor, Room, Room_capacity, Enrolment_limit>

here Course uniquely identifies all the other attributes and Room uniquely identifies Room_capacity. That is, in case of different courses been taken in the same room, the room and room_capacity values would be repeated again and again.
Each course has a enrolment limit and each course may be taught by multiple professors at the same time in different rooms.

user3098992
  • 63
  • 1
  • 1
  • 5

2 Answers2

0

It might be unnormalized, but some things in your description are not clear to me.

If there is a Course of "CS101" could different Professors teach that in different rooms? If they could then <Course, Professor, Room> is normalized because you cannot uniquely determine elements of that row from any other.

Room probably uniquely determines Room_capacity, but it isn't clear that it uniquely determines Enrolment_limit. For example, Professor Jones may allow 30 students in her CS101 class, but Professor Smith may only allow 20 to enroll even if the room can hold 30 students.

If you want to clarify your description, please edit your question.

msw
  • 42,753
  • 9
  • 87
  • 112
0

It depends on DATA(tuple).

For a relation to be in 1NF, it should not have any MULTIVALUE attribute. Eg, Phone number( one can enter 2 phone numbers). It will have 2 rows in 1 tuple which shows it is not 1NF.

Here, after seeing your attribute <Course, Professor, Room, Room_capacity, Enrolment_limit>. And Course is Primary key as given above.That means if course "CS101" taught by only Professor Reddy and Prof Pradip then that course is not taught by any other professor except those two for that relation because primary key not allow.

If in your relation , any single tuple having 2 Professor teaching 1 course in same tuple Only then the relation is Not in 1 NF.

If in your relation , every tuple in every attribute allow only 1 value then it is 1NF. Eg <"CS103" , "prof Reddy","A51",300,200>

If you provide your data in row form then we can answer it.

Jaykumar
  • 137
  • 2
  • 12