SQL-92

{{Short description|1992 edition of the SQL standard}}

{{infobox technology standard|first_published=November 1992|domain=SQL}}

{{SQL language revisions}}

SQL-92 (also called SQL 2) was the third revision of the SQL database query language. Unlike SQL-89, it was a major revision of the standard. Aside from a few minor incompatibilities, the SQL-89 standard is forward-compatible with SQL-92.

The standard specification itself grew about five times compared to SQL-89. Much of it was due to more precise specifications of existing features; the increase due to new features was only by a factor of 1.5–2. Many of the new features had already been implemented by vendors before the new standard was adopted.{{cite book|author1=Jim Melton|author2=Alan R. Simon|title=Understanding The New SQL: A Complete Guide|year=1993|publisher=Morgan Kaufmann|isbn=978-1-55860-245-8|pages=[https://archive.org/details/understandingnew00melt/page/11 11–12]|url-access=registration|url=https://archive.org/details/understandingnew00melt/page/11}} However, most of the new features were added to the "intermediate" and "full" tiers of the specification, meaning that conformance with SQL-92 entry level was scarcely any more demanding than conformance with SQL-89.

The next revision is SQL:1999 (SQL3).

Related official standard

  • ANSI X3.135-1992
  • ISO/IEC 9075:1992{{cite web |url=https://www.iso.org/standard/16663.html |title=ISO/IEC 9075:1992 |access-date=4 June 2025}}
  • FIPS PUB 127-2

New features

Significant new features include:C. J. Date with Hugh Darwen: A Guide to the SQL standard : a users guide to the standard database language SQL, 4th ed., Addison Wesley, USA 1997, {{ISBN|978-0-201-96426-4}}

  • New data types defined: DATE, TIME, TIMESTAMP, INTERVAL, BIT string, VARCHAR strings, and NATIONAL CHARACTER strings.
  • Support for additional character sets beyond the base requirement for representing SQL statements.
  • New scalar operations such as string concatenation and substring extraction, date and time mathematics, and conditional statements.
  • New set operations such as UNION, UNION ALL, CROSS JOIN, and formalized JOIN types (INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN).
  • Conditional expressions with CASE. For an example, see Case (SQL).
  • Support for alterations of schema definitions via ALTER and DROP.
  • Bindings for C, Ada, and MUMPS.
  • New features for user privileges.
  • New integrity-checking functionality such as within a CHECK constraint.
  • A new information schema—read-only views about database metadata like what tables it contains, etc. For example, SELECT * FROM INFORMATION_SCHEMA.TABLES;.
  • Dynamic execution of queries (as opposed to prepared).
  • Better support for remote database access.
  • Temporary tables; CREATE TEMP TABLE etc.
  • Transaction isolation levels.
  • New operations for changing data types on the fly via CAST (expr AS type).
  • Scrolled cursors.
  • Compatibility flagging for backwards and forwards compatibility with other SQL standards.

Extensions

Two significant extensions were published after standard (but before the next major iteration.)

References

{{Authority Control}}

{{reflist}}