A Brief History of SQL - Page 4
June 28, 2001
In this chapter we want to emphasize that SQL is both deep and wide. Deep in the sense that it is
implemented at many levels of database communication, from a simple Access form list box right up to
high-volume communications between mainframes. SQL is widely implemented in that almost every
DBMS supports SQL statements for communication. The reason for this level of acceptance is partially
explained by the amount of effort that went into the theory and development of the standards.
Early History
The father of relational databases, and thus SQL, is Dr. E.F. "Ted" Codd who worked for IBM. After
Codd described a relational model for databases in 1970, IBM spent a lot of time and money
researching how to implement his ideas. IBM came to market with a product named System/R in 1978.
But other companies had formed and created relational database products before IBM was ready to
release System/R. The first to market was Relational Software's product named Oracle and the second
was Relational Technology's Ingres. IBM then released improved products in 1982 named SQL/DS and
DB2. Oracle (now from Oracle Inc.) and DB2 are still available today in nth generation forms while the
Ingres technology was bought by Computer Associates.
Standards
As we said at the beginning, SQL is a standard, open language without corporate ownership. The
commercial acceptance of SQL was precipitated by the formation of SQL Standards committees by the
American National Standards Institute and the International Standards Organization in 1986 and 1987.
Two years later they published a specification known as SQL-89. An improvement and expansion (to
some 600 pages) to the standard gave the world SQL-92. We now have the third generation standard,
SQL 99. The existence of standards is important for the general portability of SQL statements.
Who is ANSI? The American National Standards Institute is an administrator and
coordinator of voluntary systems of standardization for the United States private
sector. About 80 years ago a group of engineering societies and government agencies
formed the institute to enhance the "quality of life by promoting and facilitating
voluntary consensus standards and conformity." Today the Institute represents the
interests of about 1,000 companies, organizations and government agencies. ANSI
does not itself develop standards; rather it facilitates development by establishing
consensus among qualified groups.
Current State
So the ANSI-SQL group has published three standards over the years:
-
SQL89 (SQL1)
-
SQL92 (SQL2)
-
SQL99 (SQL3)
The vast majority of the language has not changed through these updates. We can all profit from the
fact that almost all of the code we wrote to SQL standards of 1989 is still perfectly usable. Or in other
words, as a new student of SQL there is over ten years of SQL code out there that needs your expertise
to maintain and expand.
Most DBMS are designed to meet the SQL92 standard. Virtually all of the material in this book was
available in the earlier standards as well. Since many of the advanced features of SQL92 have yet to be
implemented by DBMS vendors, there has been little pressure for a new version of the standard.
Nevertheless a SQL99 standard was developed to address advanced issues in SQL. All of the core
functions of SQL, such as adding, reading and modifying data, are the same. Therefore, the topics in
this book are not affected by the new standard. As of early 2001, no vendor has implemented the
SQL99 standard.
There are three areas where there is current development in SQL standards. First entails improving
Internet access to data, particularly to meet the needs of the emerging XML standards. Second is
integration with Java, either through Sun's Java Database Connectivity (JDBC) or through internal
implementations. Last, the groups that establish SQL standards are considering how to integrate object-
based programming models.
What Does SQL Not Do? - Page 3
|