0% found this document useful (0 votes)
2 views

Relational Database

The document outlines the fundamental concepts of the relational model, including terminology such as relations, attributes, tuples, and keys. It explains the properties of relations, integrity constraints, and the role of views in providing security and flexibility in data access. Additionally, it discusses the updating of views and the restrictions associated with modifying data through them.

Uploaded by

abyss1993.xy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Relational Database

The document outlines the fundamental concepts of the relational model, including terminology such as relations, attributes, tuples, and keys. It explains the properties of relations, integrity constraints, and the role of views in providing security and flexibility in data access. Additionally, it discusses the updating of views and the restrictions associated with modifying data through them.

Uploaded by

abyss1993.xy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

The Relational Model

3
Relational Model Terminology
• A relation is a table with columns and rows.
• Only applies to logical structure of the database, not
the physical structure.

• Attribute is a named column of a relation.

• Domain is the set of allowable values for one or


more attributes.

4
Relational Model Terminology
• Tuple is a row of a relation.

• Degree is the number of attributes in a relation.

• Cardinality is the number of tuples in a relation.

• Relational Database is a collection of normalized


relations with distinct relation names.

5
Instances of Branch and Staff (part)
Relations

6
Examples of Attribute Domains

7
Alternative Terminology for Relational
Model

8
Database Relations
• Relation schema
• Named relation defined by a set of attribute and
domain name pairs.

• Relational database schema


• Set of relation schemas, each with a distinct name.

9
Properties of Relations
• Relation name is distinct from all other relation
names in relational schema.

• Each cell of relation contains exactly one atomic


(single) value.

• Each attribute has a distinct name.

• Values of an attribute are all from the same domain.

10
Properties of Relations
• Each tuple is distinct; there are no duplicate tuples.

• Order of attributes has no significance.

• Order of tuples has no significance, theoretically.

11
Relational Keys
• Superkey
• An attribute, or a set of attributes, that uniquely
identifies a tuple within a relation.

• Candidate Key
• Superkey (K) such that no proper subset is a superkey
within the relation.
• In each tuple of R, values of K uniquely identify that tuple
(uniqueness).
• No proper subset of K has the uniqueness property
(irreducibility).

12
Relational Keys
• Primary Key
• Candidate key selected to identify tuples uniquely
within relation.

• Alternate Keys
• Candidate keys that are not selected to be primary
key.

• Foreign Key
• Attribute, or set of attributes, within one relation that
matches candidate key of some (possibly same)
relation.

13
Relational Integrity
• Null
• Represents value for an attribute that is currently
unknown or not applicable for tuple
• Deals with incomplete or exceptional data.
• Represents the absence of a value and is not the
same as zero or spaces, which are values.

14
Relational Integrity
• Entity Integrity
• In a base relation, no attribute of a primary key can be
null.

• Referential Integrity
• If foreign key exists in a relation, either foreign key
value must match a candidate key value of some tuple
in its home relation or foreign key value must be
wholly null.

15
Relational Integrity
• Enterprise Constraints
• Additional rules specified by users or database
administrators.

16
Views
• Base Relation
• Named relation corresponding to an entity in
conceptual schema, whose tuples are physically
stored in database.

• View
• Dynamic result of one or more relational operations
operating on base relations to produce another
relation.

17
Views
• A virtual relation that does not necessarily actually
exist in the database but is produced upon request,
at time of request.

• Contents of a view are defined as a query on one


or more base relations.

• Views are dynamic, meaning that changes made to


base relations that affect view attributes are
immediately reflected in the view.

18
Purpose of Views
• Provides powerful and flexible security
mechanism by hiding parts of database from
certain users.

• Permits users to access data in a customized way,


so that same data can be seen by different users
in different ways, at same time.

• Can simplify complex operations on base


relations.

19
Updating Views
• All updates to a base relation should be
immediately reflected in all views that reference
that base relation.

• If view is updated, underlying base relation


should reflect change.

20
Updating Views
• There are restrictions on types of modifications
that can be made through views:
- Updates are allowed if query involves a single base
relation and contains a candidate key of base
relation.
- Updates are not allowed involving multiple base
relations.
- Updates are not allowed involving aggregation or
grouping operations.

21
Updating Views
• Classes of views are defined as:
• theoretically not updateable
• theoretically updateable
• partially updateable.

22
Relational Database Schema of
DreamHome

23

You might also like