10
Inclusion Dependency (IND) IND is the rule among different schemas Consider the student and department relations sid sname sfullnam e sprogram sdep t 1001 stud_ A stud_A A u BEng(COM P) 1 1002 stud_ B stud_B L o BEng(COM P) 1 1003 stud_ C stud_C K o BEng(ELE C) 2 1004 stud_ D stud_D N g BEng(ELE C) 2 did dname 1 Computer Sc i. 2 Electronic Eng. student department

Inclusion Dependency (IND)

  • Upload
    velvet

  • View
    15

  • Download
    0

Embed Size (px)

DESCRIPTION

Inclusion Dependency (IND). IND is the rule among different schemas Consider the student and department relations. student. department. Inclusion Dependency (IND). In the student relation, we only have the student ID of the student and his/her corresponding department ID number. - PowerPoint PPT Presentation

Citation preview

Page 1: Inclusion Dependency (IND)

Inclusion Dependency (IND)

• IND is the rule among different schemas• Consider the student and department relations

sid sname sfullname sprogram sdept

1001 stud_A stud_A Au BEng(COMP)

1

1002 stud_B stud_B Lo BEng(COMP)

1

1003 stud_C stud_C Ko BEng(ELEC) 2

1004 stud_D stud_D Ng BEng(ELEC) 2

did dname

1 Computer Sci.

2 Electronic Eng.

student department

Page 2: Inclusion Dependency (IND)

Inclusion Dependency (IND)

• In the student relation, we only have the student ID of the student and his/her corresponding department ID number.

• Normally every student must belong to a department.

• There should not exist that the relation contains a department with an unknown department identity number, or that the department has no identity number.

Page 3: Inclusion Dependency (IND)

Inclusion Dependency (IND)

• Just the same as FD, there is a tool to formulate the IND between schemas

• This tool is called “Casanova et al.’s axiom system”

• We consider the following three rules:– Reflexivity– Projection and Permutation– Transitivity

Page 4: Inclusion Dependency (IND)

Inclusion Dependency (IND)

• Reflexivity– If X is (are) attribute(s) in a schema R, we h

ave IND├ R[X] R[X]. – Example

• In student relation, IND ├ student[sid] student[sid]

– It gives the basis of inclusion dependency.

Page 5: Inclusion Dependency (IND)

Inclusion Dependency (IND)

• Projection and permutation– If IND├R1[X]R2[Y], then IND├R1[Xk]R2[Yk]

where Xk and Yk are projection and permutation on X and Y

– Example• In the teach relation, course ID and the course des

cription are subset of records in the course relation. If we use course ID as referential key to the course relation, there must exist some records in course relation for the same description as the course description.

Page 6: Inclusion Dependency (IND)

Inclusion Dependency (IND)

course cdescription lecturer

COMP104 C++ 1

COMP104 C++ 2

COMP171 Algorithms 3

ELEC102 Electronics 4

ELEC151 Digital Circuit 5

ELEC151 Digital Circuit 6

course cdescription credit

COMP104 C++ 5

COMP171 Algorithms 3

ELEC102 Electronics 5

ELEC151 Digital Circuit 5

course teach

teach[{course, cdescription}] course[{course, cdescription, credit}]=> teach[cdescription] course[cdescription]

Page 7: Inclusion Dependency (IND)

Inclusion Dependency (IND)

• Transitivity– If IND├R1[X]R2[Y] and IND├R2[Y]R3[Z], then

IND├R1[X]R3[Z]

– Example• In the pattern relation, it records what courses a student

needs to take and only the course ID is known. It is trivial that the course ID is a subset of the course ID in the teach relation. As course ID in the teach relation is also a subset of that in the course relation, from the pattern relation, we can use the course ID as referential key to the course relation.

Page 8: Inclusion Dependency (IND)

Inclusion Dependency (IND)

student dept course

1001 1 COMP104

1001 1 COMP171

1002 1 COMP104

1002 1 COMP171

1003 2 ELEC102

1003 2 ELEC151

1004 2 ELEC102

1004 2 ELEC151

course cdescription lecturer

COMP104 C++ 1

COMP104 C++ 2

COMP171 Algorithms 3

ELEC102 Electronics 4

ELEC151 Digital Circuit 5

ELEC151 Digital Circuit 6

pattern teach

If IND├ pattern[course] teach[course]

Page 9: Inclusion Dependency (IND)

Inclusion Dependency (IND)

course cdescription dept

COMP104 C++ 1

COMP171 Algorithms 1

ELEC102 Electonics 1

ELEC151 Digital Circuit 1

course cdescription lecturer

COMP104 C++ 1

COMP104 C++ 2

COMP171 Algorithms 3

ELEC102 Electronics 4

ELEC151 Digital Circuit 5

ELEC151 Digital Circuit 6

course

teach

and IND├ teach[course] course[course]

Page 10: Inclusion Dependency (IND)

Inclusion Dependency (IND)

course cdescription dept

COMP104 C++ 1

COMP171 Algorithms 1

ELEC102 Electonics 1

ELEC151 Digital Circuit 1

student dept course

1001 1 COMP104

1001 1 COMP171

1002 1 COMP104

1002 1 COMP171

1003 2 ELEC102

1003 2 ELEC151

1004 2 ELEC102

1004 2 ELEC151

course

pattern

then IND├ pattern[course] course[course]