SQL stands for Structured Query Language.
It is a standard language for accessing and manipulating databases. SQL became a standard of the American National Standards Institute (ANSI) in 1986. And also became standard of International Organization for Standardization (ISO) in 1987.
SQL was initially developed at IBM by Donald D. Chamberlin and Raymond F. Boyce after learning about the relational model from Edgar F. Codd in the early 1970s. This version, initially called SEQUEL (Structured English Query Language), was designed to manipulate and retrieve data stored in IBM’s original quasirelational database management system, System R, which a group at IBM San Jose Research Laboratory had developed during the 1970s.
Chamberlin and Boyce’s first attempt at a relational database language was SQUARE (Specifying QUeries in A Relational Environment), but it was difficult to use due to subscript/superscript notation. After moving to the San Jose Research Laboratory in 1973, they began work on a sequel to SQUARE. The name SEQUEL was later changed to SQL (dropping the vowels) because “SEQUEL” was a trademark of the UK-based Hawker Siddeley Dynamics Engineering Limited company. The label Structured Query Language later became the acronym for SQL.
After testing SQL at customer test sites to determine the usefulness and practicality of the system, IBM began developing commercial products based on their System R prototype, including System/38, SQL/DS, and DB2, which were commercially available in 1979, 1981, and 1983, respectively.
In the late 1970s, Relational Software, Inc. (now Oracle Corporation) saw the potential of the concepts described by Codd, Chamberlin, and Boyce, and developed their own SQL-based RDBMS with aspirations of selling it to the U.S. Navy, Central Intelligence Agency, and other U.S. government agencies. In June 1979, Relational Software introduced the first commercially available implementation of SQL, Oracle V2 (Version2) for VAX computers.
What exactly SQL can do?
So using SQL we can do various tasks like:
- Executing queries against a database
- Retrieve data from a database
- Insert records in a database
- Update records in a database
- Delete records from a database
- Create new databases
- Create new tables in a database
- Create stored procedures in a database
- Create views in a database
- Can set permissions on tables, procedures, and views
SQL implementations are incompatible between vendors and do not necessarily completely follow standards. In particular, date and time syntax, string concatenation,
NULLs, and comparison case sensitivity vary from vendor to vendor. Particular exceptions are PostgreSQL and Mimer SQL which strive for standards compliance, though PostgreSQL does not adhere to the standard in how folding of unquoted names is done. The folding of unquoted names to lower case in PostgreSQL is incompatible with the SQL standard, which says that unquoted names should be folded to upper case.Thus,
Foo should be equivalent to
foo according to the standard.
Popular implementations of SQL commonly omit support for basic features of Standard SQL, such as the
TIME data types. The most obvious such examples, and incidentally the most popular commercial and proprietary SQL DBMSs, are Oracle (whose
DATE behaves as
DATETIME, and lacks a
TIME type) and MS SQL Server (before the 2008 version). As a result, SQL code can rarely be ported between database systems without modifications.