Datasheet

13
Chapter 1: Relational Database Fundamentals
Relational: These databases store their data in tables that are related
to each other. Nowadays, new installations of database management
systems are almost exclusively of the relational type. Organizations that
already have a major investment in hierarchical or network technology
may add to the existing model, but groups that have no need to maintain
compatibility with such so-called legacy systems nearly always choose
the relational model for their databases.
The first databases to see wide use were large organizational databases that
today would be called enterprise databases, built according to either the
hierarchical model or the network model. Systems built according to the
relational model followed several years later. SQL is a strictly modern
language; it applies only to the relational model and its descendant, the
object-relational model. So here’s where this book says, “So long, it’s been
good to know ya,” to the hierarchical and network models.
New database management systems that aren’t based on the relational model
probably conform to the (newer) object model or the (hybrid) object-relational
model.
Relational model
Dr. E. F. Codd of IBM first formulated the relational database model in 1970,
and this model started appearing in products about a decade later. Ironically,
IBM did not deliver the first relational DBMS. That distinction went to a small
start-up company, which named its product Oracle.
Relational databases have almost completely replaced earlier database types.
That’s largely because you can change the structure of a relational database
without having to change or modify applications that were based on the old
structures. Suppose, for example, that you add one or more new columns to
a database table. You don’t need to change any previously written applications
that process that table — unless, of course, you alter one or more of the
columns that those applications have to use.
Of course, if you remove a column that an existing application has to use, you
experience problems no matter what database model you follow. One of the
quickest ways to make a database application crash is to ask it to retrieve a
kind of data that your database doesn’t contain.
Why relational is better
In applications written with DBMSs that follow the hierarchical or network
model, database structure is hard-coded into the application. That is, the