SQL and Databases, whats the difference?

sql databaseSQL is 'Structured Query Language', it is not a database but a common language used to query a database. SQL is often confused with being a database system, this is most likely due to the names of modern relational database systems like: MySQL, MS SQL Server and PostgreSQL.

Ms SQL Server, MySQL and PostgreSQL (and others) are actually RDMS's (Relational Database Management Systems). These are the systems that actually store information in a table like structure that links to other tables connected via a common key.

SQL commands for different RDMS's can differ slightly depending on the system you use.
MySQL and PostgreSQL are both open source and commercially free to use unrestricted (they both have paid for enterprise features and good community support). They are good choices for personal projects, mainly due to them being free to use. My personal recommendation is PostgreSQL. Nearly all web hosting providers offer MySQL (or MariaDB - fork from MySQL).

If going to start learning SQL, I would recommend SQL Server, this is because the syntax is the easiest to learn and grasp. Ms SQL Server has it own IDE, SQL Server Management Studio (SSMS) which is free to download and use, there is no licence restriction for using it. Download SQL Server Management Studio (SSMS)

Ms SQL Server offers a couple of free versions.

  • Express Edition, this can be used commercially but has size limitations (last checked 10gb per database, but please confirm this on the Microsoft website)
  • Developer Edition, the is an unrestricted version for learning and test systems, it cannot be used as a production database, this invalidates the licence.

You can install any of the above versions, but as a starter I recommend using SQL Server Express. Click here for SQL Server Download direct from Microsoft.