Why Learn SQL | Types of Database | RDBMS
Data! Data and Data! That’s all I can say if you ask me the question – “Why learn SQL” Because of the amount of data in the world is incomparable. I mean, look at it this way, if somebody wishes to see how many students are there in the class, and what are their names, he should not go running to the class counting children and manually noting down their names. Instead there should be just one question that should answer his query. So that all the hard work can be avoided.
What is SQL?
SQL stands for Standard Query Language which is nothing but a language to create, store, manipulate and retrieve data from databases. What is a database, you ask? Well it’s nothing but a structured set of data in your computer.
Now that one question that I was talking about earlier is nothing but a ‘query’ my dear friend.
We can define query as a statement that once executed goes digging in a database for information. You could be asking random questions to get information from your database, and they can all be machine language metamorphosed for your computer to understand.
- How many students are there with their names starting with the letter A?
- How many students are there in the entire school?
- Out of them how many of them have received maximum punishment?
- How many of them have failed?
- Who whistled in the class yesterday?
You know questions like the above, and every single one of them has to be fed in using a special language (SQL) so that your computer can understand your query.
What is DBMS?
This brings us to the crux of “Why learn SQL” It is to deal with situations where large chunks of data are involved.
DBMS or Database Management System is nothing but a system that helps you create and manage a database. It is basically a vast subject created for better data handling is all. It is nothing but a container for data.
Best example: A library holds books (data). A library is one form of database.
Types of Databases
So how many types of databases are really there?
If you create a simple notepad file with names of people with their ages, it is nothing but a form of database. It can be called text database.
Hey! I know what you are going to say. What about Microsoft Excel then? If we store data in it wouldn’t be a form of database. 10 points to Gryffindor!
Yes, Microsoft Excel and Microsoft Access are nothing but Desktop Database Programs intended to serve a single user.
Apart from the easy ones, there are also some tougher nuts to crack.
All in all there are around 12 different types of Databases out there.
- Relational Database
- Operational Database
- Database Warehouse
- Distributed Database
- End-User Database
- External Database
- Hypermedia Database
- Navigational Database
- In-memory Database
- Document-oriented Database
- Real-Time Database
- Analytical Database
Out of all the aforementioned databases, relational database is one of the most commonly used databases. You might have heard the name ORACLE, Sybase and SQL Server before. They are nothing but applications that use Relational Database.
Users of DBMS
We have three different types of user who make them useful around database. They are:
- End Users
You might have heard somewhere a guy is a DBA that is Database Administrator. They are the peeps responsible for maintaining database. They have access rights and everything. Yes, meaning they can create users, limit their usage, and take care of security and stuff.
Database Designers on the other hand are people who deal with the look and feel of the database. They take care of data formats. They design entities, views, relations etc.
While Admins and Designers help sow the seed, End Users are people who eat the fruit. They are customers who want to retrieve or update the data for a seamless functioning of their actual job. The End Users could actually be using an application program too, for their data requirements.
So if you are wondering “Why learn SQL” you can be any one of the above. The last one will of course demand you to own, manage and run a business of your own.
Shortcomings of DBMS
Now there are a lot of things DBMS isn’t capable of:
- It doesn’t encourage Normalization
- It isn’t great with security
- DBMS doesn’t support creating relationships between tables
- It doesn’t bolster distributed database
- It deals with single user and smaller data.
- DBMS stores data as files
To tackle such shortcomings came into existence….. * drum rolls please * – RDBMS.
RDBMS – The Badass Extension of DBMS
Now with that comes the nightmare of every aspiring DBA.
RDBMS or Relational Database Management System is more of an advancement in the age old technology we used to use. The system came out defeating the conventional hierarchical and network database system since it was much more easier to use, and comprehend of course.
It encourages normalization, is great with security, supports creating relationships between tables, is cool with distributed database, deals with humongous data, and supports multiple user.
RDBMS works around tables which is an improvement over working with files.
What are Tables?
A pretty self explanatory topic, if you are acquainted with Excel. Table is nothing but a collection of related data.
Here is an example of a table of AVENGERS.
Here vertical lines are called Columns. Serial No. Column will mean the entire vertical line that houses 1,2,3,4, and 5.
Horizontal ones are called Rows. In fact, each individual entry is called a record or a row. So there are 5 rows in the above table.
Titles in bold like Serial No., Name and Age are called Fields. A field is a column in a table designed to maintain information of a record.
If by chance a field is left empty or blank, it would be said to have NULL value.
So a Database can have more than one such tables.
Why Learn SQL?
Now let us understand where SQL queries will fit in the picture.
If someone has to say, retrieve data with people having age 42, he is supposed to run a ‘query’ asking the question. That query has to be in the form compliant to SQL for the system to answer it. On entering the request in the form of query, the system will then display the answer as Iron Man.
And so on….
So it is your prerogative if you are on your way to become a data handler, to understand the ins and outs, the whats and hows of SQL to work around data. SQL is a must even if you wish to become a rad Java Developer. You must know how to retrieve data from a database or a file.
Of course, another answer to “Why Learn SQL” will be to make a career decision. You can be anything you want to be in this life,
It is one of those valuable skills every employer out there is seeking, and they are willing to give you good money for that. If that isn’t a good enough reason, I can give you another one – To upgrade yourself with technology. One way or the other you are going to end up wanting to get into retrieving data for your project work, and that’s where your learning SQL will play an important part.
Since this chapter was supposed to introduce you to SQL and to answer the boiling question of Why Learn SQL, we are going to end this session right here. The next chapters are going to bring you up to speed with different types of queries and will teach you how to work around SQL.