To understand why database management systems are necessary, let's look at a typical "file processing system" supported by conventional operating systems.
Take an application in a saving bank. Saving accounts and customer records are kept in permanent system files.
Application programs are written to manipulate files to perform some tasks like follows −
Development of the system proceeds as new application programs must be written as the need arises, new permanent files are created as required, but over a long period of time files may be in different formats and application programs may be in different languages.
So, we can see there are problems with straight file processing approach because of the following −
Data redundancy and inconsistency − Same information may be duplicated in several places. All copies may not be updated properly.
Difficulty in accessing data − May have to write a new application program to satisfy an unusual request.
Data isolation − Data in different files in different formats and even difficult to write new application programs.
Multiple users − Want concurrency for faster response time. Need protection for concurrent updates.
Security problems − Every user of the system should be able to access only the data they are permitted to see, difficult to enforce this with application programs.
Integrity problems − Data may be required to satisfy constraints.
To overcome these problems development of database management systems was introduced. So, DBMS means it is defined as a software system that allows the user to define, create and maintain the database and provide control access to the data.
DBMS is a collection of programs used for managing data and simultaneously it supports different types of users to create, manage, retrieve, update and store information.
Small start-up companies and industries managing a huge amount of data becomes a mess. So, software like the DBMS that brought a revolution in many fields regarding efficient information management.
It is basically a set of programs which allow users to store, modify or update, and retrieve information from the database as per the user requirements. DBMS also provides security and protection to databases. DBMS acts as a middle layer between the database and user.
The different types of DBMS are as follows −