SQL, MySQL, PostgreSQL, SQL Server, T-SQL and PL-SQL have something in common!
I can hear you saying "SQL". And you'll be completely right. However, the story doesn't end there.
SQL stands for Structured Query Language. It's a language used to communicate with Database.
A quick introduction to Databases
One of the main common denominators between these technologies is Database. They are all related to how developers manipulate data in any kind of application.
Wait, there is more. You can split them into 2 groups:
the (programming) languages
the (database) engines
Before getting too technical, let me give you an idea of how you can frame this in your head:
Programming languages allow humans interactions with computers.
A database is a place (an engine) where humans store information in the digital world.
To access the stored information, a programming language is often needed.
The programming languages
In the list of technologies mentioned above, SQL, PL-SQL and T-SQL are SQL-based languages.
SQL is the main standard for these types of databases. Think of It as Latin being a standard for languages and French or Spanish being some flavour of Latin.
PL-SQL stands for Procedural Language SQL and was created by Oracle to extend the possibilities of SQL.
T-SQL stands for Transactional SQL and was created by Microsoft to extend the possibilities of SQL as well.
PL/SQL cannot be used within the Microsoft world and vice-versa. They made it only available within their world.
The database engines
SQL Server, MySQL and PostgreSQL are database engines. You can CRUD data from these databases. You're going to need one of the programming languages mentioned above to accomplish this.
CRUD stands for Create, Read, Update and Delete data from a database
SQL Server was created by Microsoft and the language used to CRUD data is T-SQL. This technology is closed-sourced. I'll cover this topic in another essay.
MySQL is an open-sourced technology created back in 1995 and the language used to CRUD data is SQL.
How do you recognise a database?
As we've seen so far, database engines have "SQL" as part of their name. However, this rule doesn't apply to all databases engines. For example, OracleDB, MongoDB and DB2 are also very popular databases engines and they don't have "SQL" in their names.
DB at the end of these names stands for DataBase. Therefore, there's always a hint in the name: SQL or DB.
Takeaways
Databases (engines) are a critical part of any products developers build. It is part of the stack used by any application. Data need to be stored somewhere in a safe manner. It's a multi-trillion market. Big and small corporations are fighting to get the attention of developers with their database engines. To access data, languages such as SQL, T/SQL or PL/SQL are required.
Advice for Tech recruiters and Business devs
As a technical recruiter, you should look for queues such as SQL or DB in order to spot databases used by your clients or candidates.
Moreover, developers don't usually interact with databases directly. DBA or Database administrators do. Developers often use an abstraction (a translator) on top of databases called ORM. I'll cover ORMs in another essay.
This was We are from the same family but we have different strengths.
If you got something out of this essay, take this test to access your progress.
I welcome your feedback with open arms.
Thanks for reading.