PostgreSQL is a sophisticated
object-relational database management system
An ORDBMS is an extension of the
relational database management systems
An RDBMS enables users to store related
pieces of data in two-dimensional data structures called
. This data may consist of many defined
, such as integers, floating-point numbers,
character strings, and timestamps. Data inserted in the table can be
categorized using a grid-like system of vertical
columns, and horizontal rows.
The relational model was built on a strong premise of conceptual
simplicity, which is arguably both its most prominent strength and
The object-relational aspect of PostgreSQL adds numerous enhancements to
the straight relational data model. These include support for
(multiple values in a single column),
(child-parent relationships between
invoked by SQL statements). For the advanced developer, PostgreSQL even
supports extensibility of its data types and procedural languages.
Due to this object-relational concept, tables are sometimes called
classes, while rows and columns can be referred to as object-instances
and object-attributes, respectively. We will use this terminology
interchangeably in this book. Other SQL data structures, such as indices
and views, can be referred to as database objects.
Note: Take care to observe that
is not synonymous with
, a term pertaining to many modern programming languages. While PostgreSQL supports
several objective improvements to the relational model, it is still accurate to refer to PostgreSQL as a relational
database management system (RDBMS).