2.1 Introduction

What is a database? The simplest definition is an organized collection of related data. A library is an example of a simple database, containing thousands of books. In addition, there is an index for these books in a card catalog.

More complex definitions allow for interactions between the data. Common examples of complex databases are accounting systems. Here you have several sets of similar data: vendors, customers, invoices, checks, and so on.

A database hides some of the details of the actual organization of the data. When a program uses a database, the location and structure of the data can change without requiring modifications to programs. For example, a file can be moved to another disk volume or new fields can be added to a file. In both of these examples, programs require no changes to reflect the changes to the data. Databases also eliminate pathnames of files from an application. This allows a system administrator to move files of a database to another data storage volume or computing platform without the need for application modification.

Each database can specify a transaction log, a file that logs changes to the database. These changes include all record insertions, updates, deletions, and changes to RMS data files. You could use this transaction log file to restore a database after a system failure. Without the log file, you must restore your files from the last backup and reenter all changes made since the last backup. Transaction log files are discussed in greater detail at the end of this chapter.