A relational DBMS is special system software that is used to manage
the organization, storage, access, security and integrity of data.
This specialized software allows application systems to focus on the
user interface, data validation and screen navigation. When there is
a need to add, modify, delete or display data, the application
system simply makes a "call" to the RDBMS.
Although there are many different types of database management
systems, relational databases are by far the most common. Other
types include hierarchical databases and network databases.
Although database management systems have been around since
the 1960s, relational databases didn't become popular until the
1980s when the power of the computer skyrocketed and it became
feasible to store data is sets of related tables and provided real-time
A relational DBMS stores information in a set of "tables", each of
which has a unique identifier or "primary key". The tables are then
related to one another using "foreign keys". A foreign key is simply
the primary key in a different table. Diagrammatically, a foreign key
is depicted as a line with an arrow at one end.
In the example below, "Customer ID" is the primary key (PK) in one
table and the foreign key (FK) in another. The arrow represents a
one-to-many relationship between the two tables. The relationship
indicates that one customer can have one or more orders. A given
order, however, can be initiated by one and only one customer.
By storing data in a RDBMS, undesirable data redundancy can be
avoided. This not only makes data management easier, but it also
makes for a flexible database that can respond to changing
When designing a relational database, it is normally a good thing to
"normalize" the database. There are different degrees of
normalization, but in general, relational databases should be
normalized to the "third normal form". Simply put, this means that
the attributes in each table should "depend on the key, the whole
key and nothing but the key".
An example of a de-normalized database table is provided below.
The database designer has assumed that there will never be a need
to have more than two order items in any one order:
By moving repeating groups of attributes to a separate database
table, the database design becomes more flexible. A single order
can now support any number of order items; not just just two. The
primary key (PK) of the Order Item table is the "Order Nbr"
(represented by the relationship) plus the "Order Item Nbr":
The "Order Item Description" field is dependent on the "Order Item
Code"; not the unique identifier of the Order Item Table (i.e. "Order
Nbr" + "Order Item Nbr"). By creating a classification table, the
database become even more flexible. New codes can easily be
added. The "Order Item Description" for a given code can easily be
altered should the need ever arise (e.g. "blue widget" => "light blue
A RDBMS alone will not solve all data management issues. A good
data analyst and/or database analyst is needed to design a flexible
and efficient relational database.
There are many different vendors that currently produce relational
database management systems (RDBMS). Relational databases
vary significantly in their capabilities and in costs. Some products
are proprietary while others are open source. The leading vendors
of RDBMS are listed below:
RDBMS Vendors RDBMS
Computer Associates INGRES
INFORMIX Software INFORMIX
Oracle Corporation Oracle
Microsoft Corporation MS Access
Microsoft Corporation SQL Server
MySQL AB MySQL
PostgreSQL Dvlp Grp PostgreSQL
Sybase Sybase 11