# Relational model

**relationalrelational data modelrelationshipsrelational databaserelational datarelational database modelrelational model of data relationaldatabase keymodeling the relational patterns**

The relational model (RM) for database management is an approach to managing data using a structure and language consistent with first-order predicate logic, first described in 1969 by English computer scientist Edgar F. Codd, where all data is represented in terms of tuples, grouped into relations.wikipedia

221 Related Articles

### Relational database

**relational database management systemRDBMSrelational databases**

A database organized in terms of the relational model is a relational database.

A relational database is a digital database based on the relational model of data, as proposed by E. F. Codd in 1970.

### Functional dependency

**functional dependenciesfunctionally dependentinspired from relational database theory**

The determination of functional dependencies is an important part of designing databases in the relational model, and in database normalization and denormalization.

### Query optimization

**query optimizeroptimizationQuery processing**

In practice, relational database management systems rewrite ("optimize") queries to perform faster, using a variety of techniques.

### Logical schema

**logical data modelschemadatabase schema**

Usually in the relational model a database schema is said to consist of a set of relation names, the headers that are associated with these names and the constraints that should hold for every instance of the database schema.

The relational model – where data is described in terms of tables and columns – had just been recognized as a data organization theory but no software existed to support that approach.

### Domain relational calculus

**domain calculus**

In computer science, domain relational calculus (DRC) is a calculus that was introduced by Michel Lacroix and Alain Pirotte as a declarative database query language for the relational data model.

### First normal form

**1NF**

A database that's in the first normal form is vulnerable to all types of anomalies, while a database that's in the domain/key normal form has no modification anomalies.

### Data

**statistical datascientific datadatum**

The relational model (RM) for database management is an approach to managing data using a structure and language consistent with first-order predicate logic, first described in 1969 by English computer scientist Edgar F. Codd, where all data is represented in terms of tuples, grouped into relations. The fundamental assumption of the relational model is that all data is represented as mathematical n-ary relations, an n-ary relation being a subset of the Cartesian product of n domains.

### Relation (database)

**relationrelation schemarelations**

The relational model (RM) for database management is an approach to managing data using a structure and language consistent with first-order predicate logic, first described in 1969 by English computer scientist Edgar F. Codd, where all data is represented in terms of tuples, grouped into relations. The fundamental assumption of the relational model is that all data is represented as mathematical n-ary relations, an n-ary relation being a subset of the Cartesian product of n domains.

### Declarative programming

**declarativedeclarative languagedeclarative programming language**

The purpose of the relational model is to provide a declarative method for specifying data and queries: users directly state what information the database contains and what information they want from it, and let the database management system software take care of describing data structures for storing the data and retrieval procedures for answering queries.

### Database schema

**schemarelational schemaschemas**

A table in an SQL database schema corresponds to a predicate variable; the contents of a table to a relation; key constraints, other constraints, and SQL queries correspond to predicates.

### System

**systemssubsystemsubsystems**

Some systems using these older architectures are still in use today in data centers with high data volume needs, or where existing systems are so complex and abstract that it would be cost-prohibitive to migrate to systems employing the relational model.

### Data center

**data centersdata centredatacenter**

Some systems using these older architectures are still in use today in data centers with high data volume needs, or where existing systems are so complex and abstract that it would be cost-prohibitive to migrate to systems employing the relational model.

### Object-oriented programming

**object-orientedobject orientedobject-oriented programming language**

In The Third Manifesto (first published in 1995) Date and Darwen attempt to show how the relational model can allegedly accommodate certain "desired" object-oriented features.

### Three-valued logic

**ternary logicthree-valuedlaw of excluded fourth**

Codd himself, some years after publication of his 1970 model, proposed a three-valued logic (True, False, Missing/NULL) version of it to deal with missing information, and in his The Relational Model for Database Management Version 2 (1990) he went a step further with a four-valued logic (True, False, Missing but Applicable, Missing but Inapplicable) version.

### Arity

**nullaryn-arymonadic**

The fundamental assumption of the relational model is that all data is represented as mathematical n-ary relations, an n-ary relation being a subset of the Cartesian product of n domains.

### Cartesian product

**productCartesian squareCartesian power**

The fundamental assumption of the relational model is that all data is represented as mathematical n-ary relations, an n-ary relation being a subset of the Cartesian product of n domains.

### Reason

**reasoningratiocinationhuman reason**

In the mathematical model, reasoning about such data is done in two-valued predicate logic, meaning there are two possible evaluations for each proposition: either true or false (and in particular no third value such as unknown, or not applicable, either of which are often associated with the concept of NULL).

### Evaluation

**evaluateevaluativeevaluating**

In the mathematical model, reasoning about such data is done in two-valued predicate logic, meaning there are two possible evaluations for each proposition: either true or false (and in particular no third value such as unknown, or not applicable, either of which are often associated with the concept of NULL).

### Proposition

**propositionspropositionalclaim**

In the mathematical model, reasoning about such data is done in two-valued predicate logic, meaning there are two possible evaluations for each proposition: either true or false (and in particular no third value such as unknown, or not applicable, either of which are often associated with the concept of NULL).

### Expressive power (computer science)

**expressive powerexpressiveexpressiveness**

Data are operated upon by means of a relational calculus or relational algebra, these being equivalent in expressive power.

### Information

**informativeinputinputs**

The relational model of data permits the database designer to create a consistent, logical representation of information.

### Logical equivalence

**logically equivalentequivalentequivalence**

The theory includes a process of database normalization whereby a design with certain desirable properties can be selected from a set of logically equivalent alternatives.

### Performance tuning

**tuningperformanceHigh-performance tuning**

This contrasts with common practice for SQL DBMSs in which performance tuning often requires changes to the logical model.

### Data domain

**domaindomain constraintsdomains**

The basic relational building block is the domain or data type, usually abbreviated nowadays to type.

### Data type

**typedatatypetypes**

The basic relational building block is the domain or data type, usually abbreviated nowadays to type.