Page 1 of 4

www.AssignmentPoint.com

Relational Database

www.AssignmentPoint.com

Page 2 of 4

www.AssignmentPoint.com

A relational database is a digital database whose organization is based on the

relational model of data, as proposed by E.F. Codd in 1970. This model

organizes data into one or more tables (or "relations") of rows and columns,

with a unique key for each row. Generally, each entity type described in a

database has its own table, the rows representing instances of that type of entity

and the columns representing values attributed to that instance. Because each

row in a table has its own unique key, rows in a table can be linked to rows in

other tables by storing the unique key of the row to which it should be linked

(where such unique key is known as a "foreign key"). Codd showed that data

relationships of arbitrary complexity can be represented using this simple set of

concepts.

Prior to the advent of this model, databases were usually hierarchical, and each

tended to be organized with a unique mix of indexes, chains, and pointers. The

simplicity of the relational model led to it soon becoming the predominant type

of database.

The various software systems used to maintain relational databases are known

as Relational Database Management Systems (RDBMS).

Virtually all relational database systems use SQL (Structured Query Language)

as the language for querying and maintaining the database.

Overview

Page 3 of 4

www.AssignmentPoint.com

Each database is a collection of tables, which are called relations, hence the

name "relational database". Each table is a metaphorical representation of an

entity or object that is in a tabular format consisting of columns and rows.

Columns are the fields of a record or the attributes of an entity. The rows

contain the values or data instances; these are also called records or tuples.

Relationships exist both among the columns within a table and among the

tables. These relationships take three logical forms: one-to-one, one-to-many, or

many-to-many. Most relational databases are designed so there is only one

value per cell (an intersection of a column and row); in this design pattern, there

are only one-to-one relationships within a table. Each table is named according

to the data it contains, such as people or addresses.

In order for a database management system (DBMS) to operate efficiently and

accurately, it must have ACID transactions. Part of this processing involves

consistently being able to select or modify one and only one row in a table.

Therefore, most physical implementations have a system-assigned, unique

primary key for each table. When a new row is written to the table, the system

generates and writes the new, unique value for the primary key (PK); this is the

key that the system uses primarily for accessing the table. System performance

is optimized for PKs. Other, more natural keys may also be identified and

defined as alternate keys (AK). Often several columns may be needed to form

an AK (this is one reason why a single integer column is usually made the PK).

Both PKs and AKs have the ability to uniquely identify one row within a table.

Additional technology may be applied that will significantly assure a unique ID

across the world, a globally unique identifier; these are used when there are

broader system requirements.

Page 4 of 4

www.AssignmentPoint.com

The primary keys within a database are used to define the relationships among

the tables. When a PK migrates to another table, it becomes a foreign key in the

other table. When each cell can contain only one value and the PK migrates into

a regular entity table, this design pattern can represent either a one-to-one, or a

one-to-many relationship. Most relational database designs resolve many-to-

many relationships by creating an additional table that contains the PKs from

both of the other entity tables—the relationship becomes an entity; the

resolution table is then named appropriately and is often assigned its own PK

while the two FKs are combined to form an AK. The migration of PKs to other

tables is the second major reason why system-assigned integers are used

normally as PKs; there usually is neither efficiency nor clarity in migrating a

bunch of other types of columns.

Most of the programming within a RDBMS is accomplished using stored

procedures (SPs). Often procedures can be used to greatly reduce the amount of

information transferred within and outside of a system. For increased security,

the system design may also grant access to only the stored procedures and not

directly to the tables. Fundamental stored procedures contain the logic needed to

insert new data and update existing data. More complex procedures may be

written to implement additional rules and logic related to processing or selecting

the data.