A database is a computer application that interacts with end-users, other computer applications, and software to capture, store and analyze data. The data captured is well organized in a manner that can easily be accessed, managed and updated as and when the need arises. Below are some of the pros and cons of databases.
1. Reduced data redundancy: Databases play an important role in the reduction of data redundancy within a computer application. A database will eliminate any data redundancy occurrence before the data is presented to the end-user.
2. Reduced updating errors and increased consistency: A database offers the end-user consistency in its operation, be it in data analysis or updating the data. Also, there are few incidences of data errors within a database which creates consistency.
3. Greater data integrity and independence from application programs: Database Management Systems (DBMS) are often independent of any other computer programs and can be accessed by all other applications.
4. Improved data access to users through the use of host and query languages: It is easy for users to access all relevant data in a database through the use of hosts and query languages such as SQL.
5. Improved data security: The data stored in a database is often secure and free from any manipulation and interference from other computer applications. This guarantees the safety and security of the data stored.
6. Reduced data entry, storage, and retrieval costs: A database management system provides easy and fast data entry, storage, and retrieval all in one system which significantly reduces the cost of manipulating data.
7. Facilitated development of new applications program: A database is an ideal tool that helps in the development of new application programs that depend on the data stored in the DBMS.
8. Provide data integrity: A database is a secure application that guarantees all users data integrity that is free from external manipulation.
9. Can handle large amounts of data: A Database is much more powerful and manageable when handling large amounts of information
10. Reduce duplication: A database plays a vital role in ensuring data integrity and reduction of redundancy which eliminates instances of data duplication.
11. Minimize irregularities: There are very few chances of irregularities when dealing with data within a database as opposed to other data manipulation systems.
12. Multiple access: It is easier for more than one person to access the file at once which makes databases more versatile.
13. Long term storage: Databases are good for long-term storage of records that are subject to changes periodically.
14. Large storage capacity: Databases can store very large amounts of data at any given point in time. This means the data to be stored is basically unlimited and can be accessed at any time.
15. Database and reporting features are separate:This means you can generate multiple reports from the same data (ask it lots of questions)
16. Data querying possible: You can ask questions of the data (‘querying’) and pull the information into a formatted report in the desired format.
17. Can contain text or numbers: A database can store information in more than one single format including numbers and letters.
18. Can provide complex reports: A database can be used to pull reports in any desired format for presentation. This report is based on real-time data that keeps on updating within the database.
1. Complexity: Database systems are complex, difficult, and time-consuming to design hence requires a substantial amount of work.
2. It is costly: A database will require substantial hardware and software start-up costs which makes them quite expensive when they are being set up.
3. Volatile: A database system is very volatile. Any damage to the database affects virtually all applications programs that depend on the database for information.
4. Conversion costs: There are extensive conversion costs in moving from a file-based system to a database system.
5. Requires training: Initial training is required for all programmers and users before they can start using a database due to its complexities.
6. Requires extensive skills: A database needs a moderate to a high level of skills to set up, use and maintain it on a daily basis.
7. More rigid: A database is more rigid which means it is not as easy to make structural changes once the database is set up.
8. Not usually as intuitive as a spreadsheet: A database is not designed to be an intuitive feature like a spreadsheet which means care needs to be taken while handling databases.
9. Keeps on changing: A database keeps on changing in design and structure and requires users to keep up with the changes.
10. Not everyone can operate it: A database has a specific language that requires experience and skills to learn, get used to it and operate.