Definitions

Database: way to store data ensuring persistent content and efficient access

Database system: computer storage systems for the manipulation of related data volumes in centralized system (multiuser)

  • a system that gives efficient access to large data volumes, allows different requirements of user data and stores data with modifiable structure

Data homogeneity: logical structure which always keeps the same type of information (varying on number and type)

Data heterogeneity: flexible logical structure that allows to keep the same type of information (varying on number and type)

Data integrity: always guarantee the acid properties (atomicity, consistency, isolation, durability)

Incoherence: impossible value of the requested information

Inconsistency: same query gives different results depending on its implementation

ANSI/SPARC abstraction levels:

  • External: presentation of the data to users
  • Conceptual: logical description of data
  • Internal: organization and storage on physical files

Back-end: software which executes all functions specified in a DBMS

Front-end: applications executed over a DBMS

Data requirements: description of data and the relationship between them

Functional requirements: description of the operations to be carried out with the data

ER diagram: graphical representation of all entities and relationships with their attributes

Entities: object (event) from real word → rectangles

Relationships: association of several entities → rhombus

Attributes: entities and relationships information or features → ellipses

Candidate keys: minimum set of attributes that uniquely identifies each instance and do not contain other keys or redundant attributes

Primary key: set of attributes that uniquely identify entities’ instances. candidate key selected by the database designer

Relationships: association b between different related entities instances.

Cardinality: maximum number of instances of an entity that may be associated with an instance of the other entity involved in a relationship

Cardinality 1-1: a customer can only have one loan

Cardinality 1-N: a client can have more than one loan

Cardinality N-1: a loan can be shared among multiple clients

Cardinality N-N: no restrictions

Unary relationship: relation to the same entity

Binary relationship: relationship between two entities

N-ary: relationship between n known entities

Total participation: all elements of A must be related to some element of B (double line)

Partial participation: not all elements of A must be related to some element of B (single line)

Weak entities: entities that do not have enough attributes to define a primary key (double rectangle)

Discriminant: set of attributes which allow distinguishing between instances of the weak entity that depend on the same instance of strong entity (underline points)

Specialization: partition of an entity in specific groups

Generalization: process summarizing multiple entities into a high level entity based on common characteristics (reverse of specialization)

Aggregation: grouping of relationships and participating entities into a new entity

Foreign key: a set of table attributes that are primary key of another table and relates the two tables