Database management system (DBMS) is a collection of interrelated data and a set of programs to access those data. The collection of data is called database that contains relevant information of an enterprise. A major purpose of a database system is to provide users with an abstract view of the data that means the system hides certain details of how the data are stored and maintained.
Purpose Of the DBMS :
Keeping organizational information in a file processing system has major disadvantages and to overcome the problems database management system is used. The below figure shows the types of problems in the file processing system.
- Data Redundancy :
Over a long period, different programmers create files that have different structures and the program may be written in different languages by different programmers.
For example, if a student selects two subjects (music and mathematics) the address and telephone number of the same student appear in file that consists of records of students in the mathematics department as well as in music department. Now if a student changes his telephone number in music department then the changes is not reflected in record of mathematics department this leads to data duplication and data redundancy and it also leads to data inconsistency. because the same student has different record in two departments.
- Data Isolation :
In file processing system data are scattered in different file and if the files are of different formats the writing application program for retrieving data is difficult because the to access file of different formats to write program is time-consuming as well as difficult.
- Integrity Problems :
Suppose the university maintains the account for each department and records the balance amount in each department and keeps the constraints that account should not fall below the specified value now developers add the code for enforcing this constraint in various application programs.
Now, when later other constraints are to be added then it becomes difficult to enforce the constraint in various programs. So, it leads to integrity problems when the constraints of several data items from different files.
- Atomicity Problem :
Suppose a program to transfer 500$ from the account department A to the account of department B, now if a system failure occurs during the execution of the program there is possibility that the $500 was removed from the account of department A but has been not credited to the account of department B which lead to inconsistent database state.
So, it is necessary that the transfer must be atomic i.e. either both the debit credit occurs entirely or neither occurs, Therefore to maintain atomicity in file processing system is difficult.
- Concurrent access anomalies :
For the sake of overall performance of the system and faster response, many systems allow multiple users to update the data simultaneously.
For example, consider department A with an account balance of 10000$.If two department clerks debit the account balance by say 400$ and 300$ respectively of department almost exactly at the same time the result of concurrent execution may leave the budget in an incorrect state. Hence using file system it may lead to inconsistent data state.
Database System Applications :
1. Enterprise Information :
- Sales –
For customer, product, and purchase information.
- Accounting –
For payments, receipts, account balances and other accounting information.
- Human Resources –
For information about employees, salaries, payroll taxes, and benefits.
2. Banking and Finance :
- Credit card transactions –
For purchases on credit cards and generation of monthly statements.
- Banking –
For customer information, accounts, loans, and banking transactions.
3. Universities :
- For student information.
- For course registrations.
- Standard enterprise information such as human resources and accounting like fees deposit and dues details.
4. Telecommunication :
- For keeping records of calls made.
- For generating monthly bills.
- For storing information about the communication networks