находится в стадии перевода
Краткая история SQL
Реляционная модель, на которой основывается концепция SQL, была предложена и описана в 1970 году исследователем фирмы IBM Е.Ф.Коддом (Dr. E. F. Codd). Его работа называлась "A Relational Model of Data for Large Shared Data Banks". Эта работа вызвала большой интерес с точки зрения практического использования для коммерческих приложений.
В 1974 году IBM начала проект System/R. Дональд Чемберлен (Donald Chamberli) совместно с другими разработал язык SEQUEL (Structured English Query Language). Прототип проект System/R был реализован на базе системы SEQUEL-XRM в 1974-75гг. В 1976-77гг. проект System/R был полностью переписан для реализации мультипользовательских, мультитабличных возможностей. Система была переделана и переименована на SEQUEL/2. Затем по юридическим причинам она была названа SQL.
Several other software vendors accepted the rise of the relational model, and announced SQL-based products. These included Oracle (who actually beat IBM to market by two years by releasing their first commercial RDBMS, in 1979), Sybase, and Ingres (based on the University of California's Berkeley Ingres project).
Стандарты SQL
SQL has existed as an "official" standard since the adoption of the ANSI (American National Standards Institute) standard (X3.135) in 1986, and the ISO (International Standards Organization) standardization in 1987. The United States government's Federal Information Processing Standard (FIPS) adopted the ANSI/ISO standard. In 1989, a revised standard known commonly as SQL89 or SQL1, was published.
Due partially to conflicting interests from commercial vendors, much of the SQL89 standard was left intentionally incomplete, and many features were labeled implementor-defined. In order to strengthen the standard, the ANSI committee revised its previous work with the SQL92 standard, ratified in 1992 (also called SQL2). This standard addressed several weaknesses in SQL89, as well as set forth conceptual SQL features which at that time exceeded the capabilities of any existing RDBMS implementation. In fact, the SQL92 standard was approximately six times the length of its predecessor. As a result of this disparity, the authors defined three levels of SQL92 compliance: Entry-Level (only the barest improvements to SQL89), Intermediate-Level (a generally achievable set of major advancements), and Full (total compliance with the SQL92 features).
More recently, in 1999, the ANSI/ISO SQL99 standard (also called SQL3) was released. This standard addresses some of the more advanced and previously non-addressed areas of modern SQL systems, such as object-relational database concepts, call level interfaces, and integrity management. SQL99 replaces the SQL92 levels of compliance with its own degrees of conformance: Core SQL99, and Enhanced SQL99.
В конце 2003 г. был принят и опубликован новый вариант международного стандарта SQL:2003. Многие специалисты считали, что в варианте стандарта, следующем за SQL:1999, будут всего лишь исправлены неточности SQL:1999. Но на самом деле, в SQL:2003 специфицирован ряд новых и важных свойств.
Наиболее серьезные изменения языка SQL, специфицированные в части 2 стандарта SQL:2003, касаются следующих аспектов:
типы данных;
подпрограммы, вызываемые из SQL;
расширенные возможности оператора CREATE TABLE;
новый объект схемы – генератор последовательностей;
новые виды столбцов – идентифицирующие столбцы (identity column) и генерируемые столбцы (generated column);
новый оператор MERGE;