A database is a collection of information carefully organized into a system.
The technology that in a computer system lets us organize data and represent the information that’s essential for an information system is called Database Management System.
A DBMS is a software that encapsulates the data of a database, and provides us a centralized way to store it, retrieve it, edit it, persist it, and much more.
Let’s define some of the main properties of a DBMS:
- Efficient: a database needs to provide the best performance to store and retrieve data.
- Persistent: data stored in the database is stored permanently. When the database software is terminated or the machine reboots, the data (excluding hardware failures) should still be there.
- Privacy and security: a database provides us the ability to privately and securely store data. It allows access to multiple users, and each user should be able to only access and edit the data it’s allowed to. Some users might only be able to access data and not edit or delete it.
- Shared access: multiple users need to be able, with the proper permissions, to access shared data. Multiple applications can access the same database, too.
- Big: a database can handle huge amounts of data, and it can scale according to your needs, using various advanced techniques. That does not mean a database is just useful when you have a lot of data - it can be useful even with very few data entries, due to the properties listed above.
There are a lot of different DBMS on the market. Some similar to each other, some vastly different.
I’ll soon talk in details about 3 popular Open Source Relational Database Management Systems: PostgreSQL, MySQL and SQLite.
More database tutorials:
- The MongoDB basics tutorial
- How MongoDB is different from a SQL database
- Information systems, data and information
- Data models
- Introduction to the ER Data Model
- The Relational Model
- Relational Algebra
- Relational Databases
- What is a Database? And a DBMS?
- Introduction to SQL
- How to install PostgreSQL on macOS
- Do you always need a database for your app?
- How to install SQLite on macOS
- Introduction to PostgreSQL
- PostgreSQL User Permissions
- How to list all users in PostgreSQL
- How to switch database using PostgreSQL
- How to list all databases using PostgreSQL
- How to list tables in the current database using PostgreSQL
- How to install MySQL on macOS
- Creating a user on MySQL
- PostgreSQL vs MySQL, a comparison
- SQLite User Permissions
- MySQL User Permissions
- SQL, creating a table
- SQL, adding data to a table
- SQL, how to use SELECT
- SQL, Handling empty cells
- SQL, Unique and Primary keys
- SQL, how to update data
- SQL, how to update a table structure
- SQL, how to delete data and tables
- SQL Joins
- SQL Views
- How to insert multiple items at once in a MongoDB collection
- How to remove all items from a MongoDB collection