N-ary relations and their applications. (Rosen 8.2)

Содержание

Слайд 2

n-ary relations We can have relation between more than just 2

n-ary relations

We can have relation between more than just 2 sets

A

binary relation involves 2 sets and can be described by a set of pairs
A ternary relation involves 3 sets and can be described by a set of triples

An n-ary relation involves n sets and can be described by a set of n-tuples

Relations are used to represent computer databases

Also used to represent constraints!

Слайд 3

n-ary relations n-ary Relations

n-ary relations

n-ary Relations

Слайд 4

n-ary relations n-ary Relations Note: N is the set of natural

n-ary relations

n-ary Relations

Note: N is the set of natural numbers {0,1,2,3,…}

An

example

Note: R could be considered as an extensional representation of the
ternary relation a

The relation has degree 3

The domains of the relation are the set of natural numbers

Слайд 5

n-ary relations n-ary Relations Note: N is the set of natural

n-ary relations

n-ary Relations

Note: N is the set of natural numbers {0,1,2,3,…}

Z is the set of integers {…,-2,-1,0,1,2,…}

An example

Note: R could be considered as an extensional representation of the
ternary relation a

The relation has degree 4

Слайд 6

Relational databases Database is made up of records. Typical operations on

Relational databases

Database is made up of records.
Typical operations on a database

are
find records that satisfy a given criteria
delete records
add records
update records

Some everyday databases
student records
health records
tax information
telephone directories
banking records

Databases may be represented
using the relational model

Слайд 7

Слайд 8

Слайд 9

Relational databases The relational data model Database made up of records,

Relational databases

The relational data model

Database made up of records, they are

n-tuples, made up of fields

Student record might look as follows

(name,metricNo,faculty,gpa)

(Jones,200401986,Arts,4.9)
(Lee,200408972,Science,3.6)
(Kuhns,200501728,Humanities,5.0)
(Moore,200308327,Science,5.5)

relations (in relDB) also called tables

gpa is an attribute

Слайд 10

Relational databases The relational data model Example from the book Attributes:

Relational databases

The relational data model

Example from the book

Attributes: name, metric No,

Dept and GPA
Слайд 11

Relational databases The relational data model primary key: An attribute/domain/column is

Relational databases

The relational data model

primary key:
An attribute/domain/column is a primary key

when
the value of this attribute uniquely defines tuples
i.e. no two tuples have the same value for that attribute

Name cannot be a primary key, neither can Dept or GPS
metricNo is a primary key

Слайд 12

Relational databases The relational data model The current collection of n-tuples

Relational databases

The relational data model

The current collection of n-tuples (records) in

the relation (table)
is called the extension of the relation

The permanent aspects of the relation (table) such as the attribute names
is called the intention of the relation

Слайд 13

Relational databases The relational data model A composite key is a

Relational databases

The relational data model

A composite key is a combination of

attributes
That uniquely define tuples
Слайд 14

Relational databases Operations on n-ary relations Selection

Relational databases

Operations on n-ary relations

Selection

Слайд 15

Relational databases Operations on n-ary relations Selection

Relational databases

Operations on n-ary relations

Selection

Слайд 16

Relational databases Operations on n-ary relations Projection It strips out specific columns

Relational databases

Operations on n-ary relations

Projection

It strips out specific columns

Слайд 17

Relational databases Operations on n-ary relations Projection

Relational databases

Operations on n-ary relations

Projection

Слайд 18

Relational databases Operations on n-ary relations Join Joins two tables/relations together, matching up on specific attributes

Relational databases

Operations on n-ary relations

Join

Joins two tables/relations together, matching up on

specific attributes
Слайд 19

Relational databases Operations on n-ary relations Join

Relational databases

Operations on n-ary relations

Join