Chapter 6. Relational Database Technology, Like It or Not

Sometimes you need to accept the devil that you know.

A relational database is a persistent storage mechanism that enables you to both store data and optionally implement functionality. The goal of this chapter is to provide an overview of relational database (RDB) technology and to explore the issues applicable to its use in modern organizations. RDBs are used to store the information required by applications built using procedural technologies such as COBOL or FORTRAN, object technologies such as Java and C#, and component-based technologies such as Visual Basic. Because RDBs are the dominant persistent storage technology, it is critical that all software professionals understand at least the basics of RDBs, the challenges surrounding the technology, and when it is appropriate to use RDBs.

In this chapter, I discuss the following topics:

  • Relational database technology

  • Simple features of relational databases

  • Advanced features of relational databases

  • Coupling: your greatest enemy

  • Additional challenges of relational databases

  • Encapsulation: your greatest ally

  • Beyond relational databases: you actually have a choice

Relational Database Technology

Let's begin with an overview of some common terminology. Relational databases store data in tables. Tables are organized into columns, and each column stores one type of data (integer, real number, character strings, date, and so on). The data for a single "instance" of a table is stored as a ...

Get Agile Database Techniques: Effective Strategies for the Agile Software Developer now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.