SQL is the standard language for querying data inside a relational database management system (RDBMS). It is supported by all of the major database systems, such as Microsoft Access, SQL Server, MySQL, Oracle, PostgreSQL, DB2, etc.
SQL is a relatively easy language to learn when compared to most programming languages. It is based on SQL “statements” that, at times, can resemble natural language.
SELECT CustomerName FROM Customers WHERE CustomerId = 1
The above SQL statement is asking the database to:
SQL stands for Structured Query Language. It is typically pronounced in one of two ways:
- “ess-que-el” (i.e. spelling out each letter)
- “sequel” (as in the original spelling/pronunciation).
The common pronunciation of the later is probably due to SQL‘s origins.
SQL was first designed in 1974 by Donald D. Chamberlin and Raymond F. Boyce at IBM under the name SEQUEL (Structured English Query Language). Chamberlin and Boyce published a research paper in 1974 called “SEQUEL: A Structured English Query Language”.
Although starting out as SEQUEL, the language was later renamed to SQL, because SEQUEL was already a trademark registered by the Hawker Siddeley aircraft company.
SEQUEL was originally designed as a more user-friendly alternative to SQUARE. SEQUEL was intended for users who were more comfortable with an English-keyword format than with the terse mathematical notation of SQUARE. As Chamberlin recently said of SEQUEL:
The motto of this language might beTell me what you want, not how to find it.
We wanted to leave it up to the system to figure out how to translate this high-level concept of what the user wants, into a detailed path, or plan, for retrieving the data from the database.
Since it’s beginnings in 1974, SQL has grown into an international standard with hundreds of pages.
SQL became a standard of the American National Standards Institute (ANSI) in 1986, and of the International Organization for Standardization (ISO) in 1987.
The standard is currently maintained by the ISO/IEC JTC 1 (joint technical committee of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC)).
As of this writing, the SQL standard is currently on its 7th revision (ISO/IEC 9075-1:2011).
SQL Compatibility Between RDBMSs
While all the major RDBMSs support SQL, they don’t all adhere to every part of the SQL standard. Because of this, there are slight discrepancies between the different database systems in how code is written. SQL code written for one system will not necessarily be able to be used on another system without at least some modifications.