Datasheet

Part I SQL Basic Concepts and Principles
developments. In 1984, the standard was redesigned to be more generic, to allow for more
diversity among database products vendors. After passing through all the bureaucratic loops, it
was endorsed as an American National Standards in 1986. The International Organization for
Standardization ISO adopted the standard in 1987. A revised standard, commonly known as
SQL-89, was published two years later.
SQL-89 (SQL1.1)
SQL-89 (or SQL1) is a rather minimalist standard that was established by encircling all
RDBMS in existence in 1989. It comprised only a limited number of features related strictly
to locating and retrieving information in a relational database. The major commercial vendors
could not (and still to a certain degree cannot) agree upon implementation details, so much
of the SQL-89 standard is intentionally left incomplete, and numerous features are marked as
implementer-defined.
SQL-92 (SQL2)
Because of the aforementioned limitations, the previous standard was revised, and in 1992, the
first solid SQL standard, SQL-92 or SQL2, was published. ANSI took SQL-89 as a basis, but cor-
rected several weaknesses in it, filled many gaps in the old standard, and presented conceptual
SQL features, which at that time exceeded the capabilities of any existing RDBMS implementa-
tion. Also, the SQL-92 standard is over five times longer than its predecessor (about 500 pages
more), and has three levels of conformance.
Entry-level conformance is basically improved SQL-89. The differences were insignificant for
example, the specification of the enforcement of
WITH CHECK OPTION for a view has been
clarified.
Intermediate-level conformance was a set of major improvements, including, but not limited to,
user naming of constraints; support for varying-length characters and national character sets, case
and cast expressions, built-in join operators, and dynamic SQL; and the ability to alter tables, set
transactions, use subqueries in updatable views, and use set operators (
UNION, EXCEPT,
INTERSECT) to combine multiple queries’ results.
Full-level conformance included some truly advanced features, including deferrable constraints,
assertions, temporary local tables, and privileges on character sets and domains.
Conformance testing was performed by the U.S. Government Department of Commerce’s
National Institute of Standards and Technology (NIST). The vendors hurried to comply because
a public law passed in the beginning of the 1990s required an RDBMS product to pass the tests
in order to be considered by a federal agency.
In 1996, NIST dismantled the conformance testing program (citing ‘‘high costs’’ as
the reason behind the decision). Since then, the only verification of SQL standards
compliance has come from the RDBMS vendors themselves, which understandably increased the
number of vendor-specific features as well as nonstandard implementation of the standard ones.
24