Before the Advent of Database Systems
One way to keep information on a computer is to store it in permanent files. A company system has a number of application programs; each of them is defined to manipulate data files. These application programs have been written on request of the users in the organization. New application will be added to the system as the need arises. The system just described is called the file-based system.
Consider a traditional banking system which uses the file-based system to manage the organization’s data in the picture below. As we can see, there are different departments in the Bank, each of them has their own applications that manage and manipulate different data files. For banking systems, the programs can be the ones to debit or credit an account , find the balance of an account, add a new mortgage loan or generate monthly statements, etc.
File-based approach for banking system
Keeping organizational information in this approach has a number of disadvantages.
Data Redundancy
Since files and applications are created by different programmers of various departments over long periods of time, it might lead to several problems such as
- inconsistency in data format,
- the same information may be kept in several different place (files)
- data inconsistency, which means various copies of the same data are conflicting ;
this wastes stor age space and duplicates effort
Data Isolation
It is difficult for new applications to retrieve the appropriate data, which might be stored in various files.
Integrity problems
- Data values must satisfy certain consistency constraints that are specified in the application programs.
- It is difficult to make changes to the programs to enforce new constraints.