What are the SQL sublanguages

SQL (structured query language)

Structured Query Language (SQL) is a specialized programming language for accessing database systems. Although SQL was developed around 1974, it remains the de facto standard for defining and accessing structured data today. In contrast to most programming languages, the SQL language is not process-oriented, but declarative.

1970 Dr. E. F. Codd, "A Relational Model of Data for Large Shared Data Banks". This publication is considered to be the birth of relational database systems. Dr. Codd's colleagues Donald D. Chamberlin and Raymond F. Boyce from IBM developed a programming language for this purpose, which they published in 1974 in the publication "SEQUEL: A Structured English Query Language". SEQUEL became SQL and slowly the programming language spread. 1979 Relational Software Inc. published the first commercial SQL database system under the name Oracle V2.

SQL was standardized by ANSI in 1986 and ratified by the International Standardization Organization (ISO) in 1987. There have been several revisions since then. The best known is SQL-92, the most recent SQL: 2008.

In contrast to most programming languages, SQL is not process-oriented but declarative, i.e. it describes what is to be done and not how it is to be done. It is also unusual that SQL is based on set theory. Because of these properties, SQL has remained the standard language for accessing relationally structured data to this day.

Historically, a distinction is made between three sub-languages ​​within SQL:

  • Data Definition Language (DDL): Definition of the data structures. Example: CREATE TABLE.
  • Data Manipulation Language (DML): Changing and querying data. Examples: SELECT, INSERT, UPDATE, DELETE.
  • Data Control Language (DCL): Rights and control mechanisms. Examples: GRANT, REVOKE.
Today this classification is no longer strict due to the many additional definitions and additions (procedural and OO elements, Extensible Markup Language (XML), ...). The most important command in SQL is SELECT. It can be used to create complex queries of large amounts of data. The result is a so-called record set, a list of data records.