What is a database management system (DBMS)?
A database management system (DBMS) is a group of software applications. A DBMS mainly:
- helps creating, reading and updating information kept in a database based on orders coming from a human being, a website, or any kind of software application.
- manages the structure of the information. For example, it can keep a list of tables and related columns.
- manages the access to the data: who can access what in the database, password management.
- handle the case where several user want to read, create or update information in the database at the same time.
What do you mean by a software application?
Your home computer is full of software applications: games, video or music players, image editors, text editors, internet browsers are software applications.
Like with any application:
- it can stop functioning if it starts using too much memory.
- stopping or even killing the application and starting it again is sometimes the only solution left to make it function again.
- you cannot store more information if the disk is full.
How and where is the data physically stored
The data is usually stored on a hard drive. It is the operating system (for example Windows or Linux) which is able to command the hard drive to physically store the information. The DBMS is translating SQL queries entered by the user into commands that the operating system can understand.
Example: the user sends an SQL statement to the DBMS to insert data. The DBMS translates this statement and sends commands to the operating system to store this data on the hard drive.
You listed the 3 main roles of a DBMS. What other roles can a DBMS fulfill?
Here are other roles that a DBMS can fulfill:
- Enable the grouping of updates. This can enable you to retract all updates belonging to the group if one of this updates failed to execute. These groups of updates are called transactions.
- Enable the backup of data.
- Manage the well functioning of the database (security, recovery after failure,…)
Together with a DBMS, you will also need:
- an editor that enables you to retrieve and update database information in a convenient way. In this editor, you type SQL queries and visualize the results of your queries.
- an interface that helps you start and stop this application, perform database backups,…
Note that if you install an SQL editor without installing the part of the DBMS managing the update of data, the distribution of the results to the user, the user access, then you cannot perform any operation on the database.
I heard about RDBMS. Is it the same?
RDBMS is a relational database management system. Here “relational” means that it manages relational databases. Relational databases are the most used databases today. Everything in this tutorial relates to this type of database. The main characteristics of relational databases are:
- they use tables, columns and rows to store information.
- you can match easily information in a table with information in other tables. I will explain this later in the lesson about sql joins.