We will start with the basic theory of SQL, if you already know, you can revise it . If not, you will get to learn something new.
So, before we start we must know some terminology regarding SQL.
What is DATABASE ?
Answer: A database is a collection of data in organized and structure form. Usually stored and accessed electronically from a computer system.
For example in a class we have 2 students then how we create a database for the class.
For this we need information of students such as their Roll Number , Name etc...
Let's create a simple database of 2 students.
This is a very simple example of database. As you see we actually created a table here for organized data.
Where-
Student Database - is the name of Database.
Roll Number and Name of Students - are attributes of table (columns)
and Entries - Records (Rows).
Table 1 : Name of Table
Note: A database can contain more than one table , and the columns of a table contain data of the same type.
In general a database have more then one file, for example database of a school can contain files (students, teacher, staff , library books , departments , division of classes etc....)
What is DBMS (Database management system) ?
Answer : A database management system or DBMS is a software used to access, create , retrieve , update and manage data in database.
Let's try to understand it with an example
Suppose we created a database name Student with 1000 records (rows) and 4 attributes (Roll number , Name, address, phone).
Now a teacher of school need this file to add marks of students according roll number he don't need Name of students. Means now if we want to do it manually we have to remove all the name from the file means we have to create a new file or new data without name of student. (suppose we created a new file students_without_name)
Let's take a second situation on same data , Suppose a student is transfer to new school. Meaning we have to remove the data of student from the database, If we do it Manually we have to search the name of student in data then remove it. We also have to remove the data of the student from the other file that we created (students_without_name).
As you can see it take a lot of time and memory to modify data manually. And it is also not easy to search a name manually in 1000 records.
We have a concept to deal with such problems called DBMS (Database management system).
So basically DBMS is a software which create a bridge between user and database. For example SQL Server, Microsoft Access, Oracle, IBM DB2, and FoxPro etc....
With these software we don't have to remember database name and don't have to deal manually with database. We can just search the data that we want. For example to search something on google we don't need to know every website name we can search directly by topic.
What is RDBMS ?
RDBMS is stand for Relational database management system is a type of DBMS (Database management system).
The data in RDBMS is store data in tables where every column of table represent an attribute or field (vertical entity) and rows represent records (horizontal entity).
Difference between DBMS and RDBMS ?
Don't get confuse between DBMS and RDBMS. RDBMS is just advance version of DBMS. Which usage DBMS properties as well as some advance properties. For example with help of DBMS we can create , update and modify a table but it is difficult to set relations between two different tables, with help of RDBMS we can set relations between different tables.
*So basically all RDBMS are DBMS but not all DBMS is RDBMS.
SQL Server that we are going discuss is a RDBMS (Relational Database Management System).
What is SQL ?
SQL stand for Structure Query Language. Now we know that SQL is designed to handle data in Relational Database Management System.
Is SQL a programming language ?
SQL is a standard domain specific programming language designed to manage and manipulating data in Database.
domain specific meaning used for single purpose.- SQL
General purpose programming language - Python
You might be wondering what is need of SQL for a data scientist. ?
We know that a data scientist can use data only if data in proper format to develop specific application. It will be useful if you know SQL.