Databases: a beginner’s guide

My next review is for Databases: a beginner’s guide by Andrew Oppel.

Oppel (2009, 4) says that:

Database model refers to the way in which a database organizes its data to pattern the real world. (Italics in original)

This definition would lead to problems because no two (2) people can agree how to model the real world. What really is a database model? I think it is the logical layer as defined in the following three (3) layers of abstraction (following Figure 1-1 Database layers of abstraction (Oppel 2009, 7)):

External Layer User views of the real world
— — — — Logical Data Interdependence
Logical Layer Internal schema (Logical Schema)
— — — — Physical Data Interdependence
Physical Layer Database files

Oppel’s Layers of Data Abstraction comes from the ANSI/SPARC. He says that:

The original architecture included a conceptual layer, which has been omitted here because none of the modern database vendors implement it. (Oppel 2009, 6)

This is an interesting comment because the three level model in Middleton (2002, 151) and Mannino (2004, 16-17) both have a conceptual layer. My reconciliation of these models is:

Oppel (2009, 7) Middleton (2002, 151) Mannino (2004, 16-17)
External Layer External External
Logical Layer Conceptual Conceptual
Physical Layer Internal Internal

In Chapter 2, Oppel (2009, 30-38) goes into the basic components of Conceptual Database Design:

  1. Entities
  2. Attributes
  3. Relationships
  4. Business Rules

Oppel (2009, 190-210) uses normalization for logical database design, and, of course, he includes a section on denormalization (Oppel 2009, 209-210).

Oppel (2009) is a disappointing book from the database design perspective. He focuses too much on the tools and not enough on the design philosophy.

A database model is a unique view of the world for an enterprise. It is the competitive advantage for the enterprise. How the enterprise selects entities, attributes and relationships is crucial to its core values. The database model must reflect the organisational culture.

From what I wrote here, I see the logical database design as the explication of the world-view of the enterprise as a form of knowledge. The emergence of entities can only come from the view the enterprise has of the view. The people in the enterprise have been selected on their conformance to that world-view. If they have not, then the enterprise has a problem in determining its stance towards the world. This enterprise culture has a body of knowledge that assimilates and comprehends the information consumed and produced by the enterprise. The parts of that body of knowledge that can be explicated should form the basis of the logical database design.


Mannino, Michael V. (2004), Database design, application development, and administration, 2nd Ed., McGraw Hill Companies, USA.

Middleton, Michael R. (2002), Information Management: a consolidation of operations, analysis, and strategy, Centre for Information Studies, Charles Sturt University.

Oppel, Andrew J. (2009), Databases: a beginner’s guide, McGraw-Hill: USA.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s