dbTalk Databases Forums  

Identifying transitive dependencies

comp.databases.theory comp.databases.theory


Discuss Identifying transitive dependencies in the comp.databases.theory forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
David
 
Posts: n/a

Default Identifying transitive dependencies - 10-05-2003 , 12:23 AM






Hi there,

I'm having some trouble identifying transitive dependencies in the student
table below

StudId Name CourseCode CourseDesc Lecturer Grade Office
'S1234', 'Jack', 'C224', 'Database', 'Codd', 'D', 381
'S1234', 'Jack', 'C225', 'Algorithms', 'Djikstra', 'P', 380
'S2345', 'Jill', 'C224', 'Database', 'Codd', 'HD', 381
'S2345', 'Jill', 'C226', 'Architecture', 'Ritchie', 'HD', 390
'S4567', 'Jack', 'C226', 'Architecture', 'Ritchie', 'D', 390
'S4567', 'Jack', 'C224', 'Database', 'Codd', 'F', 381
'S9872', 'Howard', 'Cpol', 'Politics', 'Marx', 'F', 380

I've first tried to find the functional dependencies (they may or may not be
correct)

* StudId -> Name
* (StudId, CourseCode) -> Name, CourseDesc, Lecturer, Grade, Office
* CourseCode -> CourseDesc, Lecturer, Office
* CourseDesc -> CourseCode, Lecturer, Office
* Lecturer -> CourseCode, CourseDesc, Office

I then thought that (StudId, CourseCode) -> Office, CourseDesc, Lecturer
might be a transitive dependency within student. Is it?















Reply With Quote
  #2  
Old   
Alan
 
Posts: n/a

Default Re: Identifying transitive dependencies - 10-06-2003 , 09:57 AM






Are you providing ALL of the (correct?) information given in the assignment?
It is unusual in assignments that that there is not > 1 lecturer per
course_desc or course_code.


"David" <auto90059 (AT) hushmail (DOT) com> wrote

Quote:
Hi there,

I'm having some trouble identifying transitive dependencies in the student
table below

StudId Name CourseCode CourseDesc Lecturer Grade Office
'S1234', 'Jack', 'C224', 'Database', 'Codd', 'D', 381
'S1234', 'Jack', 'C225', 'Algorithms', 'Djikstra', 'P', 380
'S2345', 'Jill', 'C224', 'Database', 'Codd', 'HD', 381
'S2345', 'Jill', 'C226', 'Architecture', 'Ritchie', 'HD', 390
'S4567', 'Jack', 'C226', 'Architecture', 'Ritchie', 'D', 390
'S4567', 'Jack', 'C224', 'Database', 'Codd', 'F', 381
'S9872', 'Howard', 'Cpol', 'Politics', 'Marx', 'F', 380

I've first tried to find the functional dependencies (they may or may not
be
correct)

* StudId -> Name
* (StudId, CourseCode) -> Name, CourseDesc, Lecturer, Grade, Office
* CourseCode -> CourseDesc, Lecturer, Office
* CourseDesc -> CourseCode, Lecturer, Office
* Lecturer -> CourseCode, CourseDesc, Office

I then thought that (StudId, CourseCode) -> Office, CourseDesc, Lecturer
might be a transitive dependency within student. Is it?

















Reply With Quote
  #3  
Old   
Jan Hidders
 
Posts: n/a

Default Re: Identifying transitive dependencies - 10-07-2003 , 11:10 AM



David wrote:
Quote:
I've first tried to find the functional dependencies (they may or may not be
correct)

* StudId -> Name
* (StudId, CourseCode) -> Name, CourseDesc, Lecturer, Grade, Office
* CourseCode -> CourseDesc, Lecturer, Office
* CourseDesc -> CourseCode, Lecturer, Office
* Lecturer -> CourseCode, CourseDesc, Office
As Alan already pointed out, it is a bit unlikely that every lecturere
gives at most one course. Your list is also a bit redundant, but that
doesn't make it incorrect.

Quote:
I then thought that (StudId, CourseCode) -> Office, CourseDesc, Lecturer
might be a transitive dependency within student. Is it?
In order to know that you have to determine if (StudId, CourseCode) is a
candidate key or not. (They did give you definition of what a transitive
dependency is, didn't they?) Is it?

-- Jan Hidders



Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.