|JCC's SQL Standards Page|
|Home||Consulting||Training||Products||Services||List Server||Search Engine|
This page is designed to be a central source of information about the SQL standards process and its current state. It also contains pointers to other sources of information about the SQL standard. The information available here is:
While the SQL Standard is often perceived as established technology, rather than the innovative, cutting edge technology it was when the standards process started in early 1980's, it is still an expanding, evolving, relevant standard.
The original SQL standard was completed as a USA ANSI (American National Standards Institute) standard in 1986, and adopted as an ISO (International Standards Organization) standard in 1987. Expansions and revisions were released in 1989 and 1992.
To allow relevant pieces to progress at different rates, the SQL standard has been divided into multiple parts. Two of these parts were completed in the 1990's, as additions to SQL-1992. SQL/CLI (Call Language Interface) was completed in 1995 and SQL/PSM (Persistent Stored Modules) was completed in 1996. Revisions and expansions to Parts one through five were completed in 1999.
Following the completion of SQL:1999, there has been significant work on SQL with Java (a Sun trademark) and XML, as well as the use of SQL to manage data external to an SQL database.
Another revision to all of the parts was completed as SQL:2003. Since SQL:2003, the SQL standards committees have expanded XML support and corrected some errors. The expanded SQL/XML standard was published in 2006 and a full revision of all nine parts was published in 2008.
In 2007, WG3 made the decision that, following the completion of SQL:2008, four of the nine parts were stable enough that they did not need additional expansion. The remaining five parts, SQL/Framework, SQL/Foundation, SQL/PSM, SQL/Schemata, and SQL/XML, are on target for completion of another revision in 2011.
In addition to the SQL standards, there is a separate set of specifications called SQL/MM that is a multi-media expansion of the SQL Standard.
Over the years, the SQL standard has expanded and multiplied. Parts have been split out and rejoined. As a result, the pedigree and status of the various pieces of completed and developing standards can be quite confusing.
The following three charts may help to clarify the parts of the standard. The first provides a brief explanation of the part. The second is a timeline that shows activity for each part for each version of the standard. The third shows the number of pages devoted to each part in each of the standards.
|Explanation of Parts of the Standard|
|Part 1 - SQL/Framework||Contains information common to all parts of the standard and describes the parts.|
|Part 2 - SQL/Foundation||SQK Data definition and data maniputlation syntax and semantics, including SQL embedded in non-object programming languages.|
|SQL/OLAP||Online Analytical Processing: Amendment describing functions and operations useful for analytical processing.|
|Part 3 - SQL/CLI||Call Level Interface: Corresponds to ODBC.|
|Part 4 - SQL/PSM||Persistent Stored Modules: Stored routines, external routines, and procedural language extensions to SQL.|
|Part 5 - SQL/Bindings||Embedded SQL.|
|Part 6 - SQL/Transaction||SQL specialization of the X-Open XA specification. Project has been canceled.|
|Part 7 - SQL/Temporal||Extensions to SQL to deal with time-oriented data types. There has been some difference of opinion on the requirements and details of Temporal. For more details on this topic, see the books Developing Time-Oriented Database Applications in SQL by Richard Snodgrass and Christian Jensen and Temporal Data and the Relational Model by C.J. Date, Hugh Darwen, and Nikos Lorentzos. This project has been withdrawn.|
|Part 8 - SQL/Objects Extended Objects||During the development of SQL-1999, there was a great deal of discussion and change in the object model to be supported. To isolate these changes, the Object portion was separated into a separate part. As the object model stabilized during the completion of SQL-1999, the object oriented capabilities were merged back into SQL/Foundation, so this part no longer exists.|
|Part 9 - SQL/MED||Management of External Data: Adds syntax and definitions to SQL/Foundation to allow SQL access to non-SQL data sources (files).|
|Part 10 - SQL/OLB||Object Language Bindings: Specifies the syntax and semantics of embedding SQL in Java. Works in conjunction with JDBC but supports applications that do not need the dynamic SQL capabilities provided by JDBC. This corresponds to what the SQLJ group refers to as SQLJ part 0. Martin Gruber refers to this as "Embedded SQL.J"|
|Part 11 - SQL/Schemata||Information and Definition Schemas|
|Part 12 - SQL/Replication||Replication facilities for SQL. This project began in 2000. The goal is to define syntax and semantics to allow definition of replication schemes and rules, including rules for resolution of update conflicts.|
|Part 13 - SQL/JRT||Java Routines and Types: Routines using the Java Programming Language (Persistent Stored SQLJ)|
|Part 14 - SQL/XML||SQL and XML|
|Part||SQL 1992||SQL 1999||SQL 2003||SQL 2008||SQL 2011 (FCD)|
|Part 1 - SQL/Framework||Completed||Completed||Completed||In progress|
|Part 2 - SQL/Foundation||Completed (includes bindings and schema information tables)||Completed||Completed (SQL/Bindings merged in; schema information tables separated out)||Incremental expansions and some bug fixes.||System Versioned Tables|
|SQL/OLAP||Processed as an amendment to SQL/Foundation||OLAP amendment merged into SQL/Foundation|
|Part 3 - SQL/CLI||Completed in '95 as an expansion to SQL-92||Completed||Completed||Completed|
|Part 4 - SQL/PSM||Completed in '96 as an expansion to SQL-92||Completed (stored routines and call statement moved to SQL/Foundation)||Completed||Completed||In Progress|
|Part 5 - SQL/Bindings||Specification for embedding SQL in programming languages moved to a separate part.||SQL/Bindings merged back into SQL/Foundation,|
|Part 6 - SQL/Transaction||Project canceled due to lack of need|
|Part 7 - SQL/Temporal||Project Canceled due to lack of progress.|
|Part 8 - SQL/Objects Extended Objects||Merged into SQL/Foundation|
|Part 9 - SQL/MED||ISO version based on SQL-99||Revision completed||Completed|
|Part 10 - SQL/OLB||completed in '98 as an ANSI only standard||ISO version based on SQL-99 completed||Revision completed||Completed|
|Part 11 - SQL/Schemata||Schema information tables extracted from SQL-99 completed||Completed||In Progress|
|Part 12 - SQL/Replication||Became a project in 2000, with goal of defining syntax and semantics to support definition of replication schemes and rules, including rules for resolution of update conflicts.||Project canceled due to lack of progress.|
|Part 13 - SQL/JRT||completed in '99 as an ANSI only standard||Revision completed||Completed|
|Part 14 - SQL/XML||Completed||Expansion completed in 2006. Support for XQuery Update added in 2008.||In progress|
|Pages Devoted to Different Sections|
|Part||SQL 1992 Pages||SQL 1999 Pages||SQL 2003 Pages||SQL 2008 Pages||SQL 2011 (FCD) Pages|
|Part 1 - SQL/Framework||85||81||93||90|
|Part 2 - SQL/Foundation||628||1,147||1,267||1,366||1,422|
|Part 3 - SQL/CLI (1995)||236||421||402||405|
|Part 4 - SQL/PSM (1996)||256||170||184||191||196|
|Part 5 - SQL/Bindings||261|
|Part 9 - SQL/MED||498||486|
|Part 10 - SQL/OLB||405||415|
|Part 11 - SQL/Schemata||296||298||298|
|Part 13 - SQL/JRT||204||208|
|Part 14 - SQL/XML||266||447||447|
Because of ANSI and ISO copyright restrictions, copies of the SQL standards specifications are available only for purchase.
Electronic (PDF) of printed copies of the SQL standards are available from several sources.
(The "INCITS/ISO/IEC" variants of the documents are US$ 30.00 per document. The "ISO/IEC" variants range from US$ 180 to US$ 451 per document. The content of the documents is identical.)
The process of creating a standard involves a lot of work by a lot of people, and a certain amount of bureaucracy.
In the international arena, the SQL Standard is developed by a committee designated as ISO/IEC JTC 1/SC 32 Data Management and Interchange/WG 3 Database Languages. This committee is made up of delegations from the participating countries.
WG3 usually meets twice a year to discuss and process proposed changes, additions, and/or corrections from various participants.
Each of the member countries have different organizations and procedures for determining who will be members of the delegation to WG3 and which proposed changes will be supported.
Within the USA, the SQL Standards work is done by the ANSI INCITS DM32.2 Database committee.
Note: DM32.2 used to be INCITS H2 until mid 2009 when INCITS restructured committees to match the ISO/IEC SC 32 structure.INCITS (InterNational Committee for Information Technology Standards) is an ANSI (American National Standards Institute) accredited standards producing organization. According to the INCITS web site (http://www.incits.org):
INCITS is sponsored by the Information Technology Industry Council (ITI), a trade association representing the leading U.S. providers of information technology products and services
Participation within DM32.2 is by technical experts from companies one vote per company. The current membership of the committee is:
Within the international SQL standards efforts, SQL/MM is the responsibility of the committee ISO/IEC JTC 1/SC 32/WG 4 SQL/Multimedia and application packages. The current parts of SQL/MM are:
The JCC SQL Standards Page was created and is maintained by Keith W. Hare (firstname.lastname@example.org) of JCC Consulting, Inc. Keith is a current voting member of INCITS DM32.2, has participated in the ANSI SQL standards process since 1988, is the current Vice Chair of the US committee, and is the Convenor (Chair) of ISO/IEC JTC 1/SC32 WG3 (international SQL Standards Committee). Any opinions or positions expressed here are Keith's and do not necessarily represent the opinions or positions of INCITS DM32.2, ISO/IEC JTC1/SC 32/WG3 DBL, or any of the other members of either committee.
Send mail to email@example.com
with additional questions or comments.
Copyright © 2005 - 2010, JCC Consulting, Inc.
Last modified: July 1, 2010
Trademarks and credits.